Luận văn Tính toán độ tương tự ngữ nghĩa văn bản dựa vào độ tương tự giữa từ với từ

Trong thời đại công nghệ số như hiện nay, các nguồn tài liệu là vô cùng phong phú. Việc “sao chép tài liệu” theo nghĩa tiêu cực như đạo văn, sao chép các luận án, luận văn, đồ án trở nên phổ biến và đang là vấn nạn. Ở qui mô rộng hơn, các thư viện điện tử ngày càng nhiều, một tài liệu có thể được phát hành trên internet nhiều lần trong những thư viện điệntửkhác nhau, trên các trang webkhác nhau. Làmthế nào để phát hiện sự sao chép tài liệu theo nghĩa tiêu cực? Làm thế nào ngăn chặn việcsao chép trái phép, đạo văn, đạo nhạc, đạo luận văn, đồ án? Chủ đề này đã được nghiên cứu từ khoảnghơn 10 năm qua. Hiện tại, đã có một số giải pháp cho việc phát hiện sao chép và một vài công cụ phần mềm cho phép phát hiện một tài liệu (gọi là văn bản kiểm tra) có sao chép từ một tập hợp các tài liệu nguồn hay không. Tập hợp các tài liệu nguồn có thể là đóng- tức là các tài liệu tập hợp trước trong một thư viện điện tử-hoặc là mở, chẳng hạnnhư tậpcáctài liệu văn bản trên internet. Đã có một số nghiên cứu đề xuất các phương pháp khác nhau để xác định xem một đoạn văn bản của một tài liệu có nằm trong một tài liệu nào khác hay không. Các phương pháp này chủ yếu dựa trên tìm kiếm và so khớp chuỗi. Tuy nhiên, các phương pháp so khớp chuỗi chỉ có hiệu quả nếu việc sao chép là “nguyên văn”. Do vậy một yêu cầu cấp bách đặt ra là làm thế nào để pháthiện việc sao chép khi có sửa đổi đôi chút như thay thế một số từ bằng từ đồng nghĩa hay thay đổi một ít trongthứ tự cáccâu trong văn bản. Chính vì vậy, đề tài “Tính toán độ tương tự ngữ nghĩa văn bản dựa vào độ tương tự giữa từ với từ” được chọn làm đề tài luận văn tốt nghiệp của tôi.

pdf69 trang | Chia sẻ: lvbuiluyen | Lượt xem: 3199 | Lượt tải: 9download
Bạn đang xem trước 20 trang tài liệu Luận văn Tính toán độ tương tự ngữ nghĩa văn bản dựa vào độ tương tự giữa từ với từ, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ------------------------- Đỗ Thị Thanh Nga TÍNH TOÁN ĐỘ TƯƠNG TỰ NGỮ NGHĨA VĂN BẢN DỰA VÀO ĐỘ TƯƠNG TỰ GIỮA TỪ VỚI TỪ LUẬN VĂN THẠC SĨ HÀ NỘI - 2010 LỜI CẢM ƠN Trước tiên, tôi xin được bày tỏ sự trân trọng và lòng biết ơn đối với TS. Nguyễn Phương Thái, giảng viên Bộ môn Khoa học máy tính - Khoa Công nghệ thông tin - Trường Đại học Công nghệ - ĐHQGHN. Trong thời gian làm luận văn tốt nghiệp, thầy đã dành nhiều thời gian quí báu và tận tình chỉ bảo, hướng dẫn tôi trong việc nghiên cứu, thực hiện luận văn. Tôi xin được cảm ơn các GS, TS đã giảng dạy tôi trong quá trình học tập và làm luận văn. Các thầy đã giúp tôi hiểu thấu đáo hơn lĩnh vực mà mình nghiên cứu để có thể vận dụng các kiến thức đó vào trong công tác của mình. Xin cảm ơn các bạn bè, đồng nghiệp và nhất là các thành viên trong gia đình đã tạo mọi điều kiện tốt nhất, động viên, cổ vũ tôi trong suốt quá trình học tập và nghiên cứu để hoàn thành tốt bản luận văn tốt nghiệp này. Tuy đã có những cố gắng nhất định nhưng do thời gian và trình độ có hạn nên chắc chắn luận văn này còn nhiều thiếu sót và hạn chế. Kính mong nhận được sự góp ý của thầy cô và các bạn. Hà Nội, ngày 20 tháng 09 năm 2010 Học viên Đỗ Thị Thanh Nga LỜI CAM ĐOAN Tôi xin cam đoan rằng, đây là công trình nghiên cứu của tôi trong đó có sự giúp đỡ rất lớn của thầy hướng dẫn và các đồng nghiệp ở cơ quan. Các nội dung nghiên cứu và kết quả trong đề tài này là hoàn toàn trung thực. Trong luận văn, tôi có tham khảo đến một số tài liệu của một số tác giả đã được liệt kê tại phần Tài liệu tham khảo ở cuối luận văn. Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời cam đoan của mình. Hà Nội, ngày 20 tháng 09 năm 2010 Học viên Đỗ Thị Thanh Nga MỤC LỤC DANH MỤC CÁC BẢNG..................................................................................................... 1 DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ ................................................................................. 2 MỞ ĐẦU ............................................................................................................................... 3 CHƯƠNG I. KHÁI NIỆM ĐỘ TƯƠNG TỰ.......................................................................... 5 1.1. Tổng quan về độ tương tự............................................................................................ 5 1.2. Khái niệm độ tương tự................................................................................................. 6 1.2.1. Định nghĩa độ tương tự (Definition of Similarity) ................................................ 7 1.2.2. Độ tương tự giữa các giá trị có thứ tự ưu tiên (ordinal values).............................. 8 1.2.3. Độ tương tự chuỗi (String Similarity-A case study).............................................. 9 1.3. Độ tương tự ngữ nghĩa............................................................................................... 10 CHƯƠNG II. ĐỘ TƯƠNG TỰ TỪ-TỪ............................................................................... 11 2.1. Khái niệm từ, thuật ngữ ............................................................................................. 11 2.1.1. Từ và cấu trúc từ của tiếng Việt .......................................................................... 11 2.1.1.1. Định nghĩa từ ............................................................................................... 11 2.1.1.2. Cấu trúc từ của tiếng Việt ............................................................................ 11 2.1.2. Nghĩa của từ ....................................................................................................... 12 2.1.3. Thuật ngữ (terms) ............................................................................................... 12 2.2. Từ đồng nghĩa ........................................................................................................... 12 2.3. Các cách tiếp cận xử lý tài liệu theo ngữ nghĩa .......................................................... 14 2.3.1. Dựa trên trí tuệ nhân tạo (AI-based).................................................................... 14 2.3.2. Dựa trên Cơ sở tri thức (Knowledge-based) ........................................................ 14 2.3.3. Dựa trên ngữ liệu (Corpus-based) ....................................................................... 14 2.4. Độ tương tự ngữ nghĩa từ-từ dựa trên cơ sở tri thức (từ điển WordNet)...................... 15 2.4.1. Khái quát về từ điển WordNet ............................................................................ 15 2.4.2. Độ tương tự từ-từ dựa trên từ điển WordNet ....................................................... 16 2.5. Độ tương tự ngữ nghĩa từ-từ dựa trên ngữ liệu ........................................................... 17 2.5.1. PMI (Pointwise Mutual Information) (Thông tin chung dựa trên điểm) ............... 18 2.5.2. LSA (Latent Semantic Analysis) (Phân tích ngữ nghĩa ẩn) .................................. 18 2.5.3. Phương pháp của Dekang Lin ............................................................................. 18 CHƯƠNG III. ĐỘ TƯƠNG TỰ VĂN BẢN-VĂN BẢN ..................................................... 21 3.1. Xử lý văn bản tiếng Việt............................................................................................ 21 3.1.1. Một số kết quả đã đạt được................................................................................. 21 3.1.2. Đặc trưng của cấu trúc ngữ pháp tiếng Việt ........................................................ 23 3.2. Tách từ trong văn bản tiếng Việt................................................................................ 23 3.3. Các hướng tiếp cận tách từ ........................................................................................ 24 3.3.1. Các hướng tiếp cận dựa trên “từ” ....................................................................... 24 3.3.2. Các hướng tiếp cận dựa trên ký tự ...................................................................... 25 3.4. Một số phương pháp tách từ tiếng Việt hiện nay ........................................................ 26 3.4.1. Phương pháp Maximum Matching: Forward/Backward ..................................... 26 3.4.2. Phương pháp Transformation-based Learning (TBL) ......................................... 27 3.4.3. Mô hình tách từ bằng WFST và mạng Neural .................................................... 27 3.4.3.1. Tầng WFST ................................................................................................. 27 3.4.3.2. Tầng mạng Neural ....................................................................................... 28 3.4.4. Phương pháp tách tách từ tiếng Việt dựa trên thống kê từ Internet và thuật giải di truyền........................................................................................................................... 28 3.4.4.1. Online Extractor........................................................................................... 28 3.4.4.2. GA Engine for Text Segmentation ............................................................... 29 3.4.5. Nhận xét ............................................................................................................. 29 3.5. Độ tương tự văn bản-văn bản..................................................................................... 30 CHƯƠNG IV. TÍNH ĐỘ TƯƠNG TỰ NGỮ NGHĨA VĂN BẢN DỰA VÀO ĐỘ TƯƠNG TỰ GIỮA TỪ VỚI TỪ........................................................................................................ 33 3.1. Phát biểu bài toán ...................................................................................................... 33 3.2. Giải quyết bài toán .................................................................................................... 33 3.2.1. Chuẩn bị dữ liệu ................................................................................................. 33 3.2.2. Tách từ: Tách văn bản thành các từ ghép và danh từ riêng ................................. 36 3.2.2.1. Tách từ ghép trong văn bản .......................................................................... 36 3.2.2.2. Tách danh từ riêng trong văn bản ................................................................. 39 3.2.3. Tính toán độ tương tự văn bản ............................................................................ 41 3.3. Xây dựng hệ thống .................................................................................................... 44 3.3.1. Nhập trực tiếp 2 văn bản .................................................................................... 45 3.3.2. Nhập 2 văn bản từ file ........................................................................................ 46 3.3.3. Lấy nội dung 2 văn bản từ URL ......................................................................... 47 3.4. Kết quả thử nghiệm và đánh giá ................................................................................ 48 3.4.1. Một số ví dụ cụ thể ............................................................................................. 48 3.4.2. Kết quả thử nghiệm ............................................................................................ 54 3.4.2.1. Cách tiến hành ............................................................................................. 54 3.4.2.2. Kết quả thử nghiệm...................................................................................... 54 3.4.3. Đánh giá ............................................................................................................. 59 KẾT LUẬN ......................................................................................................................... 61 HƯỚNG PHÁT TRIỂN....................................................................................................... 62 TÀI LIỆU THAM KHẢO .................................................................................................... 63 1 DANH MỤC CÁC BẢNG Bảng Trang Bảng 1. Tần suất xuất hiện độ dài từ tiếng Việt trên trang Vdict.com 11 Bảng 2. Mô tả các bộ ba của từ “giàu” 19 Bảng 3. Các điểm khác biệt chính giữa tiếng Việt và tiếng Anh 24 Bảng 4. Địa chỉ của 20 tin tức trên một số trang Web 54 Bảng 5. Một số kết quả độ tương tự của hai file bất kỳ 55 Bảng 6. Kết quả đánh giá 20 tin tức do người và máy thực hiện 56 Bảng 7. Địa chỉ của 30 tin rao vặt trên các trang Web 56 Bảng 8. Một số kết quả độ tương tự của hai tin rao vặt bất kỳ 58 Bảng 9. Kết quả đánh giá 30 tin rao vặt do người và máy thực hiện 59 2 DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ Hình Trang Hình 1. Ví dụ phân phối của các giá trị có thứ tự ưu tiên 9 Hình 2. Một phần từ điển WordNet 16 Hình 3. Các hướng tiếp cận cơ bản trong việc tách từ 24 Hình 4. Một phần của từ điển Dict 34 Hình 5. Danh sách một số file trong kho ngữ liệu đã xử lý 34 Hình 6. Một phần của từ điển các từ ghép 35 Hình 7. Một phần từ điển CompoundDict 35 Hình 8. Giao diện chính của hệ thống 45 Hình 9. Giao diện cho phép nhập trực tiếp hai văn bản 45 Hình 10. Giao diện kết quả độ tương tự sau khi nhập hai văn bản 46 Hình 11. Giao diện nhập hai văn bản từ file 46 Hình 12. Giao diện kết quả sau khi nhập hai văn bản từ file 47 Hình 13. Giao diện tính độ tương tự nội dung của hai trang Web 48 3 MỞ ĐẦU 1. Tính cấp thiết của đề tài Trong thời đại công nghệ số như hiện nay, các nguồn tài liệu là vô cùng phong phú. Việc “sao chép tài liệu” theo nghĩa tiêu cực như đạo văn, sao chép các luận án, luận văn, đồ án trở nên phổ biến và đang là vấn nạn. Ở qui mô rộng hơn, các thư viện điện tử ngày càng nhiều, một tài liệu có thể được phát hành trên internet nhiều lần trong những thư viện điện tử khác nhau, trên các trang web khác nhau. Làm thế nào để phát hiện sự sao chép tài liệu theo nghĩa tiêu cực? Làm thế nào ngăn chặn việc sao chép trái phép, đạo văn, đạo nhạc, đạo luận văn, đồ án? Chủ đề này đã được nghiên cứu từ khoảng hơn 10 năm qua. Hiện tại, đã có một số giải pháp cho việc phát hiện sao chép và một vài công cụ phần mềm cho phép phát hiện một tài liệu (gọi là văn bản kiểm tra) có sao chép từ một tập hợp các tài liệu nguồn hay không. Tập hợp các tài liệu nguồn có thể là đóng- tức là các tài liệu tập hợp trước trong một thư viện điện tử- hoặc là mở, chẳng hạn như tập các tài liệu văn bản trên internet. Đã có một số nghiên cứu đề xuất các phương pháp khác nhau để xác định xem một đoạn văn bản của một tài liệu có nằm trong một tài liệu nào khác hay không. Các phương pháp này chủ yếu dựa trên tìm kiếm và so khớp chuỗi. Tuy nhiên, các phương pháp so khớp chuỗi chỉ có hiệu quả nếu việc sao chép là “nguyên văn”. Do vậy một yêu cầu cấp bách đặt ra là làm thế nào để phát hiện việc sao chép khi có sửa đổi đôi chút như thay thế một số từ bằng từ đồng nghĩa hay thay đổi một ít trong thứ tự các câu trong văn bản. Chính vì vậy, đề tài “Tính toán độ tương tự ngữ nghĩa văn bản dựa vào độ tương tự giữa từ với từ” được chọn làm đề tài luận văn tốt nghiệp của tôi. 2. Mục tiêu của luận văn Vận dụng các phương pháp tính độ tương tự giữa từ với từ để tính độ tương đồng ngữ nghĩa giữa hai văn bản giúp phát hiện một văn bản có được sao chép từ văn bản kia hay không. 3. Đối tượng và nhiệm vụ của luận văn Đối tượng:  Tập các văn bản trong bộ dữ liệu mẫu.  Tập các tài liệu trên Internet. 4 Nhiệm vụ: Luận văn tập trung vào tính độ tương tự ngữ nghĩa văn bản dựa trên tập ngữ liệu có sẵn. Trong đó có tận dụng tối đa các đặc điểm của kho ngữ liệu, đến độ tương tự giữa từ với từ và tập các từ đồng nghĩa. 4. Phương pháp và nội dung nghiên cứu  Nghiên cứu lý thuyết về độ tương tự, các cách tính độ tương tự giữa từ với từ.  Nghiên cứu về kho ngữ liệu, hiện tượng từ đồng nghĩa.  Tìm hiều các cách tách từ trong văn bản tiếng Việt.  Nghiên cứu các phương pháp tính độ tương tự ngữ nghĩa văn bản dựa trên độ tương tự giữa từ với từ. 5. Kết cấu của luận văn Nội dung chính của luận văn gồm 4 chương:  Chương I: Khái niệm độ tương tự.  Chương II: Độ tương tự từ-từ.  Chương III: Độ tương tự văn bản-văn bản.  Chương IV: Tính độ tương tự ngữ nghĩa văn bản dựa vào độ tương tự giữa từ với từ. 5 CHƯƠNG I. KHÁI NIỆM ĐỘ TƯƠNG TỰ 1.1. Tổng quan về độ tương tự Nghiên cứu “sự tương tự” (thường ở dạng đối ngẫu của nó là “khoảng cách”) thuộc phạm vi toán học, chẳng hạn trong lý thuyết tôpô và xấp xỉ; nhưng trong khoa học máy tính và các ứng dụng máy tính có phần khác. Trong khoa học máy tính, phép tính xấp xỉ thường được sử dụng theo một lối không có tính hệ thống (non-systematic) và không theo thể thức (ad-hoc). Trong ngữ cảnh này, khái niệm “sự tương tự” xuất hiện ở nhiều dạng, diễn xuất, và nhiều ứng dụng. Khái niệm “sự tương tự” có nhiều dạng khác nhau. Bất chấp những khác biệt, chúng đều có điểm chung: “sự tương tự” được sử dụng để so sánh hai (hay nhiều) đối tượng, hai hoàn cảnh, hai vấn đề, v.v… với nhiều nguyên do khác nhau. Luôn có mục đích nào đó với một phép so sánh như thế, bởi vì một hành động tiếp sau đó được thực hiện và cuối cùng thì một vấn đề nào đó phải được giải quyết. Vì lý do đó, hai đối tượng được đem so sánh giữ những vai trò khác nhau. Đối tượng thứ nhất đang được xem xét và được gọi là vấn đề (problem). Đối tượng thứ hai là đã biết và đã lưu; thường được gọi là bản mẫu (prototype) hay tình huống (case). “Sự tương tự” được sử dụng một cách gián tiếp trong quá trình giải quyết vấn đề, nổi bật là các phương pháp dựa trên phép loại suy (Analogy), lập luận dựa theo tình huống (Case-Based Reasoning), và nhận dạng mẫu (Pattern Recognition). Chúng có liên hệ với nhau và không có ranh giới rõ ràng giữa phép loại suy và các phương pháp khác. Ở đây, chúng ta chấp nhận quan điểm rằng phép loại suy gắn với các đối tượng thuộc nhiều lĩnh vực, trong khi CBR và nhận dạng mẫu sử dụng độ tương tự trong cùng một lĩnh vực. Một khác biệt cơ bản giữa CBR và phép loại suy là CBR thường (không phải luôn luôn) xét các đối tượng được mô tả theo cùng ngôn ngữ mô tả và thuật ngữ, trong khi phép loại suy có thể xét các lý thuyết hoàn toàn khác nhau. Dưới đây là một số ngữ cảnh cần đến “sự tương tự”:  Lập luận dựa theo tình huống (CBR) là một cách rất tổng quát để giải quyết vấn đề bằng cách sử dụng các kinh nghiệm trước đó. Những kinh nghiệm này được ghi lại trong một cơ sở dữ liệu gọi là kho tình huống. Ý tưởng bên dưới nhằm tái sử dụng những kinh nghiệm là: “Nếu hai vấn đề là tương tự thì chúng có các giải pháp tương tự”. CBR cũng có một giả định cơ bản là luôn tồn tại kinh nghiệm. Với điều kiện này, CBR có thể được áp dụng cho hầu hết các dạng ứng dụng. Thường thì có rất nhiều kinh nghiệm được lưu trữ và một khía cạnh thiết yếu là nhanh chóng tìm ra những kinh nghiệm hữu ích (bài toán thu hồi). 6  Trong cơ sở dữ liệu (Databases), “sự tương tự” cũng có liên quan với tìm kiếm, và có quan hệ nào đó với CBR. Đa phần cơ sở dữ liệu cần so trùng chính xác. Các phép đo độ tương tự giữ một vai trò trong một số cơ sở dữ liệu đặc biệt như cơ sở dữ liệu không gian (spatial database) hay cơ sở dữ liệu địa lý (geo- database).  Nhận dạng mẫu (Pattern Recognition) cũng là một vấn đề rất tổng quát, nghiên cứu sự vận hành và thiết kế các hệ thống nhận dạng các mẫu trong dữ liệu. Vì những mẫu như thế không phải lúc nào cũng giống hệt nhau, khái niệm “sự tương tự” thường đóng một vai trò quyết định.  Trong phân loại (Classification) và phân tích cụm (Cluster Analysis), “sự tương tự” được sử dụng để phân loại các đối tượng: các đối tượng tương tự thuộc về cùng một lớp/cụm, các đối tượng không tương tự thuộc về các lớp/cụm khác nhau.  Trong diễn xuất hình ảnh (Image Interpretation), các hình ảnh được diễn xuất theo ý nghĩa của chúng và chúng được so sánh với nhau. Ví dụ, một ảnh y khoa thực tế và một ảnh không có bệnh lý nào đó được so sánh với nhau; độ tương tự giữa những ảnh này được sử dụng để cho biết ảnh thực kia có chứa bệnh lý hay không. Xác minh hình ảnh (Image Identification) cũng thuộc về lĩnh vực này.  Trong tâm lý học nhận thức và xã hội (Cognitive and Social Psychology), “sự tương tự” là cái gì đó chủ quan; ám chỉ thái độ, giá trị, sở thích, và cá tính giữa những con người tương xứng mức độ nào. Có nhiều dạng mô hình về sự tương tự trong tâm lý học, bốn mô hình nổi bật là hình học (geometric), đặc tính (featural), dựa trên canh lề (alignment-based), và biến đổi (transformational).  Trong lĩnh vực an ninh, quốc phòng để xác định đối tượng ảnh khi muốn xác định vân tay, kiểm tra những băng đĩa mang những nội dung cần kiểm soát,… Độ đo tương tự là một trong những phương pháp tốt để máy tính phân biệt được các văn bản qua nội dung của chúng. Xét trên khía cạnh nào đó, độ tương tự càng lớn, hai văn bản giống nhau càng nhiều. 1.2. Khái niệm độ tương tự Độ tương tự là một khái niệm quan trọng và đã được sử dụng rộng rãi. Các định nghĩa trước đây về độ tương tự được trói buộc trong một ứng dụng cụ thể hoặc một dạng thể hiện của tri thức. Nhiều độ đo độ tương tự đã được đưa ra, chẳng hạn như nội dung thông tin (Resnik, 1995b), độ đo thông tin chung (mutual information – Hindle, 1990), độ đo 7 dựa trên khoảng cách (Lee et al., 1998; Rada et al 1998) và mô hình đặc trưng tương phản (Tversky, 1977). McGill etc đã khảo sát và so sánh 67 độ đo độ tương tự đã sử dụng trong tìm kiếm thông tin (McGill et al., 1979). Một vấn đề trong độ đo độ tương tự trước đây là mỗi một trong số chúng bị trói buộc trong một ứng dụng cụ thể hoặc đảm đương một mô hình cụ thể. Ví dụ độ đo về độ tương tự giữa các khái niệm dựa trên khoảng cách (Lee et al., 1989; Rada et al.,