1. 3 Định nghĩa về bài toán đối sánh
3.5. đo đánh giá mô hình phân lớp
Sau khi xây dựng được các mô hình giải quyết bài toán phân lớp, đưa ra một câu hỏi là làm thế nào để đánh giá hiệu quả của mô hình phân lớp đó và khi sử dụng các độ đo để đánh giá làm thế nào để ước lượng được tính đáng tin cậy. Như đã giới thiệu ở
trên có rất nhiều độ đo được sử dụng để đánh giá hiệu quả các mô hình phân lớp, một số độ đo hiệu quả trong việc đánh giá phân lớp nhị phân là độ chính xác P , độ hồi tưởng R và độ đo F.
Ma trận nhầm lẫn [2]: với các giá trị thực: P là dương, N là âm và các giá trị qua phân lớp: T là đúng, F là sai.
TP là số ví dụ là dương và thuật toán xác định đúng là dương (T)
TN là số ví dụ là âm và thuật toán xác định đúng là âm (T)
FP là số ví dụ là dương mà thuật toán xác định sai giá trị thành âm (F)
FN là số ví dụ là âm mà thuật toán xác định sai giá trị thành dương (F)
Lớp dự báo
Lớp = P Lớp = N
Lớp thực sự Lớp = P TP FP
Lớp = N FN TN
Với độ chính xác được xác định là số các ví dụ dương đúng chia cho tổng tất cả các giá trị được dự báo là dương như sau:
FN TP TP P (1)
Độ hồi tưởng ρ xác định theo công thức sau:
FP TP TP R (2)
Độ hồi tưởng chính là tỉ số giữa số ví dụ được phân lớp đúng là dương trên tổng số ví dụ dương thực tế. Nghĩa là phần trăm số ví dụ dương mà bộ phân lớp xác định đúng.
Ngoài hai độ đo trên, độ đo F cũng được sử dụng để đánh giá kết quả phân lớp, gồm có độ đo F được tính theo công thức sau:
2P R F
R P
(3)
Chương 4. THỰC NGHIỆM VÀ ĐÁNH GIÁ 4.1. Môi trường thực nghiệm và các thành phần cài đặt
4.1.1. Môi trường thực nghiệm
Bộ xử lý Intel® Core™ i5-3317U CPU @ 1.7GHz
RAM 4.00 GB
Hệ điều hành Microsoft Windows 7 64bit
Công cụ lập trình Java JDK 8 & Eclipse 4.4.1 & Maven 3.2.3
Bảng 4.1. Môi trường thực nghiệm
4.1.2. Thành phần cài đặt
Dựa trên mô hình đã được đề xuất luận văn xây dựng các thành phần thực nghiệm dựa trên nền ngôn ngữ lập trình Java. Danh sách các thành phần và thư viện nguồn mở sử dụng được mô tả như các bảng dưới đây
Package Chức năng
edu.ontology Module xử lý ontology
edu.findneg Module tìm dữ liệu âm
edu.knn Module phân lớp dữ liệu bằng phương pháp kNN
edu.liblinear Module phân lớp dữ liệu bằng hồi quy logic và SVM
edu.distance Module các độ đo khoảng cách
edu.experiments Module thực hiện các thực nghiệm
Bảng 4.2. Các gói chức năng cài đặt
Thư viện Chức năng Địa chỉ
OBO-Edit Phân tích cấu trúc Ontology dạng OBO http://oboedit.org/
Simmetrics Các độ đo khoảng cách như Euclidean, Cosine,…
https://github.com/Simmetrics/si mmetrics
Liblinear Thư viện các phương pháp phân lớp hồi
quy logic và SVM http://liblinear.bwaldvogel.de/
4.2. Dữ liệu thực nghiệm
Các ontology
Trong thực nghiệm để đánh giá mô hình đề xuất luận văn sử dụng miền dữ liệu là các ontology về thực thể kiểu hình, cụ thể là ontology HPO (Human phenotype ontology) và MP (Mammalian phenotype). Dưới đây là một số kết quả thống kê trên 2 ontology trên.
HPO MP
Số lượng thuật ngữ về kiểu hình 9 900 8 800
Số lượng các thuật ngữ đồng nghĩa 15.800 23.700
Độ sâu nhất của cây 15 15
Số con lớn nhất của một nút cha 34 9
Số nút con trung bình 3 3
Bảng 4.4. Thống kê số lượng thuật ngữ HPO và MP
Qua các số liệu thống kê ta có thể thấy 2 ontology này tương quan nhau về mặt cấu trúc. Các thuật ngữ lưu dưới dạng file obo được biểu hiện theo các thuật ngữ [Term] cùng với các thông tin liên quan được lưu trữ dưới các “tag” như id, name (tên đầy đủ), is_a (trỏ đến mức cha của thuật ngữ),… Để truy xuất và xử lý các file ontology luận văn sử dụng công cụ Obo Edit (http://oboedit.org/) được phát triển bởi nhóm nghiên cứu y sinh của đại học Berkeley, Mỹ.
[Term]
id: HP:0000188
name: Short upper lip alt_id: HP:0200087
def: "`Decreased width` (PATO:0000599) of the `upper lip` (FMA:59817)." [HPO:probinson]
xref: UMLS:C1848977 "Short upper lip" is_a: HP:0000177 ! Abnormality of upper lip
Dữ liệu các cặp thuật ngữ đồng nghĩa (dữ liệu dương)
Để xây dựng tập dữ liệu huấn luyện, luận văn sử dụng tập các cặp thuật ngữ đồng nghĩa giữa 2 ontology HPO và MP được cung cấp bởi chính những người phát triển ontology HPO tạo ra. Tập dữ liệu này gồm 2511 cặp thuật ngữ đồng nghĩa
(08/10/2014) được cung cấp tại địa chỉ:
http://compbio.charite.de/hudson/job/hpheo/ws/hp-mp/mp_hp-align-equiv.obo. File này cũng được lưu trữ dưới định dạng Obo và có cấu trúc như sau:
Hình 4.2. Định dạng file Obo chứa các cặp thuật ngữ đồng nghĩa HPO
Dữ liệu các cặp thuật ngữ không đồng nghĩa (dữ liệu âm)
Để đánh giá chính xác hiệu quả của mô hình được đề xuất, luận văn sử dụng thêm các dữ liệu là các cặp thuật ngữ không đồng nghĩa. Tập các cặp dữ liệu không đồng nghĩa được cung cấp bởi nhóm sinh viên NCKH phát triển [1]. Tập dữ liệu này được sinh tự động dựa trên một số luật heuristic (dựa trên kinh nghiệm) gồm 17000 cặp thuật ngữ được xem là không đồng nghĩa (Tập dữ liệu TBQ 2014)[1].
Dữ liệu chưa được gán nhãn
Mô hình đề xuất thực hiện việc tìm các cặp thuật ngữ không đồng nghĩa tự động từ các cặp thuật ngữ chưa có nhãn (chưa biết là đồng nghĩa hay không). Để xây dựng tập dữ liệu chưa có nhãn luận văn tiến hành ghép cặp các thuật ngữ của 2 ontology với nhau (hơn 87 triệu cặp) và lấy ngẫu nhiên 100.000 cặp chưa được gán nhãn, các cặp này không trùng với hai tập dữ liệu dương và âm ở trên.
4.3. Tập đặc trưng và phương pháp đánh giá mô hình đề xuất
4.3.1. Tập đặc trưng
Sử dụng một số đặc trưng để mô tả tốt nhất đặc điểm của một cặp chuỗi. Các đặc trưng có thể nắm bắt được sự tương tự giữa nhiều biến thể (ví dụ chữ viết, cú pháp và từ bổ nghĩa) được trích trong giai đoạn học mô hình. Các đặc trưng được sử dụng trong mô hình phân lớp dựa trên các đặc trưng đã khảo sát được trong tài liệu [1] gồm có:
Tên rút gọn (Acronym): Xác điịnh một đặc trưng mà có thể suy luận một chuỗi
này là tên rút gọn của một chuỗi khác. Đầu tiên tách các thuật ngữ và lấy ra các chữ cái đầu của từng từ trong thuật ngữ đó sau đó so sánh tên rút gọn của 2 thuật ngữ với nhau, ví dụ tên rút gọn của thuật ngữ “Interleukin-2” là “IL-2”. Nếu tên rút gọn của 2 thuật ngữ mà giống nhau thì giá trị của đặc trưng sẽ là đúng “acronym:true”, ngược lại là sai “acronym:false”.
Độ dài chuỗi (Length): Độ dài chuỗi ảnh hưởng tới việc đối sánh các chuỗi ký
tự. Chuỗi càng dài thì độ so khớp càng nhiều nhiễu. Có hai đặc trưng với độ dài chuỗi: “length:long” với các chuỗi có độ dài lớn hơn 4 (tokens), “length:short” với các chuỗi còn lại.
Cụm từ đồng nghĩa (Synonym phrases): Mỗi thuật ngữ thường có một số các
cụm từ đồng nghĩa được liệt kê thông qua tag “synonym”. So sánh các cặp từ đồng nghĩa của hai thuật ngữ giúp nâng cao các đặc trưng ngữ nghĩa. Giá trị của đặc trưng này lần lượt là nhiều (lớn hơn 2) “syns:high”, bình thường “syns:medium”, và không có “syns:none”.
Xâu con chung (CommonToken): Ngoài các đặc trưng đã miêu tả ở trên chúng
ta sử dụng đặc trưng xâu con chung. Đầu tiên tách các thuật ngữ bằng kí tự trắng và một vài kí tự được xác định trước (‘,’, ’/’, ‘-‘…). Duyệt qua cặp thuật ngữ, đưa những từ giống nhau trong thuật ngữ vào tập các token phổ biến, ví dụ như ta có các token phổ biến “GATA”, “binding” , “5” từ cặp thuật ngữ “GATA binding protein 5” và “GATA binding factor 5”.
Xâu con khác (DifferenceToken): Tương tự với Xâu con chung chúng ta sử dụng sự khác nhau đối xứng của hai biểu hiện thể hiện đặc trưng, ta sẽ đưa ra những từ khác nhau trong cặp thuật ngữ và đưa vào tập các token khác biệt, ví dụ “protein” và “factor” là những token khác biệt của “GATA binding protein 5” và “GATA binding factor 5”.
SoftTFIDF[21]: Một trong những lợi ích của sử dụng học máy là chúng ta có thể
kết hợp thông tin từ các độ đo tương tự khác nhau. Độ đo được định nghĩa trong với TF (term frequency) chỉ tần suất xuất hiện của từ trong tập thuật ngữ và IDF(inverse document frequency) chỉ tần suất xuất hiện của các thuật ngữ có chứa từ đó. Nếu giá
trị softTFIDF lớn hơn ngưỡng đưa ra thì giá trị đặc trưng sẽ là cao “high” và ngược lại là thấp “low”.
4.3.2. Phương pháp đánh giá mô hình đề xuất
Các thực nghiệm để đánh giá mô hình đề xuất đều được đánh giá thông qua phương pháp kiểm thử chéo 10 folds (10 folds cross validation). Phương pháp này là một phương pháp thường được sử dụng trong việc kiểm thử các mô hình thống kê, cách thức thực hiện đối với việc đánh giá các thực nghiệm của mô hình đề xuất như sau:
Dữ liệu như được mô tả ở mục 4.2:
o Dữ liệu các cặp đồng nghĩa (dữ liệu dương): 2511 cặp (ĐN) o Dữ liệu các không đồng nghĩa (dữ liệu âm): 17.000 cặp (KĐN) o Dữ liệu các cặp chưa được gán nhãn: 100.000 cặp (CGN)
Cách thực hiện: Chia dữ liệu dương thành 10 phần, thực hiện 10 lần mỗi lần lấy 9 phần (2250 ĐN – 15.300 KĐN) làm dữ liệu huấn luyện và kiểm tra với 1 phần còn lại (251 ĐN – 1.700 KĐN).
o Bước 1: Ghép 15300 KĐN vào 100.000 dữ liệu CGN = 115.300 dữ liệu CGN
o Bước 2: Sử dụng 2250 ĐN để tìm tự động dữ liệu KĐN từ 115.300 CGN
o Bước 3: Dùng 2250 ĐN và dữ liệu KĐN mới tìm được làm tập học o Bước 4: Sinh mô hình phân lớp từ dữ liệu học và kiểm tra với 1 phần
dữ liệu còn lại (sử dụng P, R, F làm độ đo đánh giá)
4.4. Thực nghiệm đánh giá hiệu quả khi thay đổi các tham số thành phần tìm dữ liệu âm tự động liệu âm tự động
Như đã mô tả trong chương 3 mục tiêu của mô hình đề xuất là tìm các cặp thuật ngữ không đồng nghĩa (dữ liệu âm) một cách tự động để đưa vào tập dữ liệu huấn luyện mô hình phân lớp. Trong mô hình đề xuất xuất hiện một số tham số được đưa và quá trình thực nghiệm, để tìm được bộ tham số tối ưu cần thực hiện các thử nghiệm thay đổi thử giá trị các tham số.
Các tham số được mô tả như dưới đây:
T ngưỡng khoảng cách giữa các Lớp: T sẽ được thử nghiệm với các giá trị [0.2, 0.3, 0.4]. Khoảng cách sử dụng độ đo Euclidean.
Ngưỡng D xác định từ Lớp nào dữ liệu là âm: Ngưỡng D sẽ được thử nghiệm với các giá trị 5, 10, 15.
Để đánh giá được kết quả khi thay đổi tham số trong từng thực nghiệm luận văn sử dụng kiểm thử chéo 10 folds (10 folds cross validation) và đánh giá thông qua các độ đo P (chính xác), R (hồi tưởng), F như đã mô tả ở mục 3.5. Phương pháp phân lớp ở đây sử dụng là kNN với k=3.
Kết quả của thực nghiệm được thể hiện trong bảng dưới đây.
ĐỒNG NGHĨA T D P R F 0.2 5 68.15% 58.14% 62.75% 0.3 5 73.24% 63.15% 67.82% 0.4 5 73.59% 61.27% 66.87% 0.2 10 82.13% 68.24% 74.54% 0.3 10 85.06% 71.39% 77.63% 0.4 10 84.89% 70.17% 76.83% 0.2 15 87.68% 52.88% 65.97% 0.3 15 87.14% 54.24% 66.86% 0.4 15 89.35% 49.16% 63.42%
Bảng 4.5. Đánh giá sử dụng kiểm thử chéo
Nhận xét:
Chúng ta có thể thấy D càng tăng thì độ chính xác càng lớn, tuy nhiên độ hồi tưởng lại thấp do số lượng ghép nhầm càng cao.
Tham số T quy đinh ngưỡng khoảng cách giữa các lớp cho kết quả không đồng đều
Kết quả tốt nhất tại T = 0.3 và D = 10
4.5. Thực nghiệm đánh giá hiệu quả của mô hình bằng các phương pháp khác nhau
Trong thực nghiệm này chúng tôi tiến hành đánh giá việc tìm dữ liệu âm (các cặp không đồng nghĩa) tự động thông qua mô hình được đề xuất và việc tìm các cặp dữ liệu âm bằng một số luật heuristic (luật kinh nghiệm) của nhóm sinh viên NCKH [1] (Tập TBQ). Bên cạnh đó chúng tôi cũng tiến hành so sánh kết quả thông qua việc sử dụng các phương pháp phân lớp khác nhau.
Cách thức thực hiện thực nghiệm đối với tập dữ liệu TBQ tương tự như cách đã mô tả trong mục 4.3.2, chỉ khác tại bước 3 thay vì dùng dữ liệu âm mới tìm được để đưa vào dữ liệu học thì sử dụng chính 15.300 cặp KĐN làm dữ liệu âm.
Đồng nghĩa
Thứ tự Tập dữ liệu âm Giải thuật P R F
1 TBQ 2014 KNN 81.16% 68.13% 74.08% 2 TBQ 2014 SVM 81.07% 68.72% 74.40% 3 TBQ 2014 LR 83.74% 70.25% 76.41% 4 Tìm tự động (T=0.3;D=10) KNN 85.06% 71.39% 77.63% 5 Tìm tự động (T=0.3;D=10) SVM 84.36% 71.84% 77.60% 6 Tìm tự động (T=0.3;D=10) LR 87.29% 71.65% 78.70%
Bảng 4.6. Kết quả thực nghiệm so sánh tìm dữ liệu tự động và thủ công
Nhận xét:
Phương pháp tìm tự động dữ liệu âm dựa trên mô hình đề xuất cho kết quả tốt hơn phương pháp tìm bằng luật kinh nghiệm trên cả 3 độ đo P, R, F.
Mô hình học sử dụng phương pháp phân lớp cho kết quả tốt nhất đối với cả 2 cách thức tìm kiếm dữ liệu âm.
KẾT LUẬN
Các kết quả chính
Trong quá trình tìm hiểu và thực hiện đề tài, luận văn đã đạt một số kết quả sau:
Tìm hiểu về bài toán Đối sánh ontology (Ontology Matching) và đưa ra được giải pháp giải quyết bài toán đối sánh sử dụng hướng tiếp cận dựa trên học máy bằng việc áp dụng bài toán phân lớp trong việc tìm cặp đồng nghĩa giữa hai Ontology.
Trong bài toán phân lớp áp dụng miền thực thể kiểu hình ở người HPO và MPO động vật có vú tuy nhiên do việc thiếu dữ liệu các cặp không đồng nghĩa luận văn đưa ra mô hình tìm dữ liệu không đồng nghĩa tự động sử dụng phương pháp xây dựng đồ thị khoảng cách theo độ sâu giúp giảm chi phí và công sức.
Qua trình thực hiện thực nghiệm cho kết quả khả quan đối với phương pháp đề xuất đạt kết quả cao nhất tại 78.7% đối với độ đo F.
TÀI LIỆU THAM KHẢO Tiếng Việt
[1] Trần Thắng Bình, Ngô Mạnh Quyền, Chu Thị Phương Thảo (2014), Tích hợp Ontology y sinh sử dụng phương pháp học sự tương tự giữa hai chuỗi, Công trình dự thi giải thưởng “ Sinh viên nghiên cứu khoa học năm 2014”, ĐHCN – ĐHQGHN.
[2] Phan Xuân Hiếu, Hà Quang Thuy, Doan S., Giáo trình khai phá dữ liệu web (2009).
[3] Nguyễn Hà Nam, Nguyễn Trí Thành, Hà Quang Thụy (2012), Giáo trình Khai
Phá Dữ Liệu Web, Nhà Xuất bản Đại Học Quốc Gia Hà Nội, Tr 227- 266.
[4] Nguyễn Minh Tuấn (2012), Phân lớp câu hỏi hướng tới tìm kiếm ngữ nghĩa tiếng việt trong lĩnh vực y tế, Khóa luận tốt nghiệp đại học chính qui, ĐHCN- ĐHQGHN.
Tiếng Anh
[5] Castano, S., Ferrara, A., Montanelli, S., (2005), Dynamic knowledge discovery in open, distributed and multi-ontology systems: techniques and applications. In: Taniar, D., Rahayu, J. (eds.) Web Se-mantics and Ontology, pp. 226–258. Idea Group, Hershey, Chap. 8 page 207.
[6] Castano S., Ferrara A., Montanelli S., (2006), Matching ontologies in open networked systems: tech-niques and applications. J. Data Semant.V , 25–63, (page 207).
[7] Cohen W., Ravikumar, P., Fienberg, S., (2003b), A comparison of string metrics for matching names and records. In: Proc. International Workshop on Data Cleaning and Object Consolidation at the 9th International Conference on Knowledge Discovery and Data Mining (KDD), Washington, DC, USA, (pp. 88, 96).
[8] Collier N, Tran MV, Ha QT, Oellrich A, Dietrich RS, Learing to Recognize
Phenotype Candidates in the auto Immune Literature Using SVM Re-ranking.
[9] Cortes C., Vapnik V., “ Support vector networks”. Machine Learning, Volume 20(3), pages 273-297.
[10] Do, Hong-Hai and Rahm, Erhard, (2002). COMA - a system for flexible combination of schema matching approaches. In Bernstein et al. (2002), pages 610-621.
[11] Giunchiglia F., Shvaiko P., Yatskevich M., (2004), S-Match: an algorithm and an implementation of semantic matching. In: Proc. 1st European Semantic Web Symposium (ESWS), Hersounisous,Greece. Lecture Notes in Computer Science, vol. 3053, pages 61- 75,101,214.
[12] Giunchiglia F., Shvaiko P., (2003), Semantic matching. Knowl. Eng. Rev. 18 (3), 265–280, (pages 75,145,213).
[13] Jerome Euzenat and Pavel Shavaik (2007), Ontology Matching, Springer 2007. [14] Kincho H. Law, “Ontology (2007), Basic Definitions and a Brief Introduction”,
TN-2007-03. NEESit – Workshops 2007.
[15] Klein, Michel, (2001). Combining and relating ontologies an analysis of prob- lems and solutions. In Gomez-Perez, Asuncion, Gruninger, Michael, Stuck- enschmidt, Heiner, and Uschold, Michael, editors. Proceedings of Workshop on Ontologies and Information Sharing at IJCAI-01, Seattle, WA, USA.
[16] Madhavan J., Bernstein P., Rahm E. (2001): Generic schema matching with