Như đã đề cập đến trong Chương 2, thành phần nhận diện thực thể có tên của VN-KIM cần thông tin về từ loại (Parts-Of-Speech − POS) của các từ xuất hiện trong văn bản cần rút trích để so trùng mẫu. Đặc biệt trong đó là các danh từ riêng (Proper Noun) vì chúng tạo nên các tên thực thể. Vấn đề nằm ở chỗ một từ có thể có nhiều từ loại khác nhau và từ loại thích hợp phụ thuộc vào ngữ cảnh ([2]). Có hai hướng tiếp cận vấn đề mập mờ này là hướng dựa trên luật và hướng dựa trên xác suất thống kê.
Các phương pháp dựa trên luật sử dụng các luật văn phạm để xác định từ loại. Trong đó, phương pháp không có giám sát sử dụng các luật xây dựng bởi các nhà ngôn ngữ học và một từ điển ghi nhớ các từ loại có thể của mỗi từ. Phương pháp có giám sát ([13]) học các nhãn và các luật chuyển đổi từ một kho từ đã được gán nhãn trước. Trong khi đó, các phương pháp xác suất ([86]) sử dụng phân bố xác suất trên không gian các kết hợp có thể giữa các từ và từ loại của chúng.
Với tiếng Việt vấn đề gán nhãn từ loại còn khó hơn vì một từ tiếng Việt có thể gồm nhiều tiếng phân cách bằng khoảng trắng, và chưa có sự thống nhất về cách phân loại từ và tập hợp các nhãn từ loại. Vấn đề phân đoạn từ (Word Segmentation) có thể được giải quyết bằng các phương pháp thống kê, như trong [40]và [128].
Về vấn đề gán nhãn từ loại, trong [56], các tác giả dùng phương pháp TBL (Transformation-Based Learning) và mô hình mạng nơron để giải quyết bài toán gán nhãn từ loại cho từ tiếng Anh, và so sánh với phương pháp ánh xạ từ loại tiếng Anh sang tiếng Việt. Trong [104], các tác giả thử nghiệm việc gán nhãn từ loại cho các văn bản tiếng Việt bằng cách áp dụng QTAG, một bộ gán nhãn xác suất độc lập với ngôn ngữ.
Trong đề tài này, chúng tôi sử dụng kiến trúc và môi trường của GATE để phân đoạn từ tiếng Việt theo luật. Tập hợp 48 từ loại tiếng Việt của Uỷ ban Khoa học Xã hội Việt Nam ([129]) được sử dụng cho việc gán nhãn từ loại. Về hướng tiếp cận, chúng tôi kết hợp phương pháp xác suất với phương pháp dựa trên luật. Các luật được xây dựng theo văn phong, tức cách viết văn của mỗi người, mỗi thể loại văn bản, căn cứ vào cách thể hiện của văn bản trong một ngữ cảnh cụ thể để xác định từ loại cho các từ.
Phân đoạn từ
Mục đích của phân đoạn từ là tách biệt các từ và các dấu chấm câu thành các Token riêng biệt. Trong tiếng Anh, mỗi từ là một Token đơn giản, tức là một chuỗi các kí tự liên tục không có khoảng trắng hay dấu phân cách. Trong tiếng Việt, một từ có thể bao gồm nhiều Token đơn giản, tương ứng với các tiếng. Ví dụ, “thành phố” là một từ có hai tiếng là hai Token đơn giản là “thành” và “phố”. Vì vậy, với tiếng Anh, việc phân đoạn từ được thực hiện đơn giản bằng cách định vị các khoảng trắng và các dấu chấm câu. Trong khi đó, vấn đề với tiếng Việt là phân giải mập mờ để gom cụm các Token đơn giản thành các Token có nghĩa. Ví dụ, trong đoạn “... nước đào tạo nên ...”, có hai khả năng gom cụm là “...
[nước] [đào tạo ra] ...” và “... [nước đào] [tạo ra] ...”.
Một phương pháp để phân giải sự mập mờ như trên là thống kê các cụm gồm n Token (n-Gram) xuất hiện trong các văn bản huấn luyện và chọn tổ hợp có xác suất cao nhất trong từng ngữ cảnh cụ thể. Độ phức tạp tính toán sẽ tăng theo giá trị của n mong muốn. Phương pháp thứ hai mà đề tài chọn là dùng các luật so trùng mẫu và tận dụng nền kỹ thuật ngôn ngữ của GATE để hiện thực. Trong GATE, các luật có thể được thực thi theo hai cách: (1) kiểu Brill áp dụng mỗi luật tại tất cả các điểm so trùng trong văn bản; và (2) kiểu Appelt chỉ áp dụng luật so trùng dài nhất tại mỗi điểm. Như vậy, các luật với các mẫu so trùng dài ngắn và phủ lấp khác nhau có thể được mô hình như một ô-tô-mat hữu hạn.
Ô-tô-mat hữu hạn làm chức năng phân đoạn từ trong VN-KIM được xây dựng một cách tự động từ các từ điển tiếng Việt. Sau đó, việc phân đoạn từ trên một đoạn văn bản cụ thể được thực hiện bằng cách duyệt đồ thị trạng thái của ô-tô-mat này. Hình 4.2.1 cho thấy mô hình của thành phần phân đoạn từ trong VN-KIM. Hình 4.2.2 minh họa một đồ thị trạng thái cho một số từ cụ thể.
Hình 4.2.1 Phân đoạn từ trong VN-KIM Module phân đoạn từ Ô-tô-mat hữu hạn
Văn bản tiếng Việt
Các Token tiếng Việt
Từ điển
Hình 4.2.2 Ví dụ về một đồ thị trạng thái trong phân đoạn từ
Gán nhãn từ loại bằng phương pháp xác suất
Ý tưởng của phương pháp gán nhãn từ loại bằng xác suất là xác định phân bố xác suất trong không gian kết hợp giữa dãy các từ Sw và dãy các nhãn từ loại St. Sau khi đã có phân bố xác suất này, bài toán loại bỏ nhập nhằng từ loại cho một dãy các từ được đưa về bài toán lựa chọn một dãy từ loại sao cho xác suất điều kiện P(St | Sw) kết hợp dãy từ loại đó với dãy từ đã cho đạt giá trị lớn nhất.
Theo công thức xác suất Bayes ta có:
P(St | Sw) = P(Sw | St).P(St)/P(Sw).
Ở đây dãy các từ Sw đã biết, nên thực tế chỉ cần cực đại hoá xác suất P(Sw | St).P(St). Với mọi dãy St = t1t2 ... tN và với mọi dãy Sw = w1w2 ... wN :
P(w1w2... wN | t1t2...tN) = P(w1 | t1t2...tN) P(w2 | w1,t1t2...tN)...P(wN | w1... wN-1, t1t2...tN) P(t1t2...tN) = P(t1)P(t2 | t1) P(t3 | t1t2) ... P(tN | t1...tN-1)
Đối với mỗi P(wi | w1... wi-1, t1t2...tN), giả thiết xác suất xuất hiện một từ đối với một nhãn từ loại là hoàn toàn xác định khi biết nhãn đó, nghĩa là:
P(wi | w1... wi-1, t1t2...tN) = P(wi | ti).
Như vậy, xác suất P(w1w2... wN|t1t2...tN) chỉ phụ thuộc vào các xác suất cơ bản có dạng P(wi|ti):
P(w1w2... wN | t1t2...tN) = P(w1 | t1)P(w2 | t2) ... P(wN | tN)
Đối với mỗi P(ti | t1...ti-1), giả thiết xác suất xuất hiện của một từ loại là hoàn toàn xác định khi biết các nhãn từ loại trong một lân cận có kích thước k cố định, nghĩa là:
1. khoa 2. học 4. cơ 8. bản
9. sở 6. kỹ
10. thuật
7. máy 11. tính 5. kĩ
3. học
P(ti | t1...ti-1)= P(ti | ti-k...ti-1).
Thường các công cụ gán nhãn thường sử dụng giả thiết k bằng 1 (Bigram) hoặc 2 (Trigram).
Như vậy mô hình xác suất này tương đương với một mô hình Markov ẩn ([80]), trong đó các trạng thái ẩn là các nhãn từ loại (hay các dãy gồm k nhãn nếu k > 1), và các trạng thái quan sát được là các từ trong từ điển. Với một kho văn bản đã gán nhãn mẫu, các tham số của mô hình này dễ dàng được xác định nhờ thuật toán Viterbi ([96]).
Gán nhãn từ loại dựa trên luật
Các luật văn phạm qui định loại của từ xuất hiện ở một ví trí nhất định trong câu, nên cũng có thể được áp dụng để xác định từ loại. Ví dụ, trong đoạn văn “Trong buổi họp, anh Nguyễn Văn Thành đã phát biểu về … một cách tích cực. Tuy nhiên, anh không tập trung vào vấn đề chính của cuộc họp”, từ “anh” thứ nhất là danh từ loại thể còn từ “anh” thứ hai là đại từ xưng hô. Văn phong, tức cách viết văn của mỗi người, mỗi thể loại văn bản, cũng giúp xác định loại của các từ.
Rule: date1
(({Token.kind=="number"})((({SpaceToken})*{Token.string=="-"}
({SpaceToken})*|({SpaceToken})*{Token.string=="/"}({SpaceToken})*) {Token.kind=="number"})+)+ --> date
Rule: date2
(({Token.string=="ngày"}|{Token.string=="Ngày"})({SpaceToken})+{Token.kind==
"number"}({SpaceToken})+({Token.string=="tháng"}|{Token.string=="Tháng"})({SpaceToken})+{
Token.kind=="number"}({SpaceToken})+({Token.string=="năm"}|{Token.string=="Năm"})({Spac eToken})+{Token.kind=="number"} ({SpaceToken})+
)+ --> date
Hình 4.2.3 Ví dụ về các luật nhận diện ngày tháng
Dựa trên văn phong và ngữ pháp tiếng Việt ([22], [101]), các luật để xác định từng từ loại cụ thể như danh từ riêng, danh từ loại thể, ngày tháng, … có thể được xây dựng để nhận diện từ loại. Cụ thể, chúng tôi đề xuất thứ tự áp dụng các luật là áp dụng các luật xác định danh từ riêng trước, rồi trên kết quả thu được sẽ áp dụng tiếp tục các luật cho 47 từ loại còn lại. Kỹ thuật xây dựng hệ thống luật có thể dựa vào JAPE của GATE. Ví dụ, hai luật đơn giản trong Hình 4.2.3 nhận diện các từ là ngày tháng. Luật date1 sẽ nhận diện các dạng ngày tháng như “1/2/2006”, “1-2-2006”, …, còn luật date2 sẽ nhận diện các dạng ngày tháng như “ngày 2 tháng 3 năm 2006”, “ngày 03 tháng 03 năm 2006”, …
Phương pháp kết hợp
Việc dùng luật cũng thường gặp trường hợp mập mờ vì một từ loại có thể đi cạnh các từ loại khác nhau. Trong trường hợp này, phương pháp xác suất có thể giúp phân giải và chọn lựa tổ hợp từ loại trội nhất theo kết quả đã thống kê. Vì vậy chúng tôi đề xuất một mô hình kết hợp như mô tả ở Hình 4.2.4. Cụ thể, VN-KIM kết hợp và sử dụng một bộ gán nhãn dựa trên luật và một bộ gán nhãn Trigram.
Trong đó chỉ có bộ gán nhãn Trigram sử dụng kết hợp hai nguồn thông tin là: (1) một từ điển tiếng Việt khoảng 80.000 từ, trong đó mỗi từ có kèm theo danh sách các nhãn và tần suất xuất hiện tương ứng của chúng; và (2) một ma trận gồm các bộ ba nhãn từ loại có thể xuất hiện liền nhau trong văn bản với các tần số xuất hiện của chúng. Nguồn thông tin thứ hai này thu được dựa vào kho ngữ liệu mẫu với khoảng 79.000 từ đã gán nhãn. Các loại dấu câu và các ký hiệu khác trong văn bản được xử lý như các đơn vị từ vựng, với nhãn chính là dấu câu tương ứng.
Còn ở trong bộ gán nhãn dựa trên luật, chúng tôi đã xây dựng được trên 270 luật để nhận diện 48 từ loại và các kiểu ngày tháng năm. Kết quả thử nghiệm tốt nhất với các tập mẫu đã xây dựng đạt tới độ chính xác khoảng 80% nếu chỉ dùng phương pháp xác suất (P1) và đạt khoảng 90% nếu dùng phương pháp kết hợp (P2), như trình bày ở Bảng 4.2.1.
Hình 4.2.4 Mô hình kết hợp luật và xác suất để gán nhãn từ loại
Bảng 4.2.1 Kết quả của phương pháp xác suất và phương pháp kết hợp Văn bản/Văn phong Số đơn vị từ P1 P2 Chuyện tình 1/Tiểu thuyết VN 16787 80,53% 90,75%
Chuyện tình 2/Tiểu thuyết VN 14698 80,78% 90,39%
Hoàng tử bé/Truyện nước ngoài 18663 80,90% 90,48%
Lược sử thời gian/Sách khoa học 11626 78,44% 88,20%
Công nghệ/Báo chí 10662 77,81% 87,90%
Độ chính xác trung bình 79,69% 89,54%