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.
69 trang |
Chia sẻ: nhungnt | Lượt xem: 2791 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Đề 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ừ, để 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.,