Tải bản đầy đủ (.pdf) (23 trang)

NGHIÊN CỨU PHƯƠNG PHÁP TỰ ĐỘNG PHÁT HIỆN LỖI TRONG KHO DỮ LIỆU TIẾNG VIỆT ĐƯỢC CHÚ GIẢI TỪ LOẠI

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (911.09 KB, 23 trang )

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
----------------------------------------

NHỮ VĂN KIÊN
NGHIÊN CỨU PHƯƠNG PHÁP TỰ ĐỘNG PHÁT HIỆN LỖI TRONG
KHO DỮ LIỆU TIẾNG VIỆT ĐƯỢC CHÚ GIẢI TỪ LOẠI
Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01.01
Người hướng dẫn khoa học: TS NGUYỄN PHƯƠNG THÁI

TÓM TẮT LUẬN VĂN THẠC SĨ

HÀ NỘI – 2013


1

MỞ ĐẦU
Gán nhãn từ loại (Part-of-speech tagging –POS tagging) và
tự động phát hiện lỗi chú giải (nhãn) từ loại (Detecting Errors in Partof-Speech Annotation) là hai bài toán quan trọng trong xử lý ngôn
ngữ tự nhiên. Tuy nhiên các nghiên cứu tại Việt Nam về hai vấn đề
này vẫn còn ở giai đoạn đầu, trong đó phương pháp tự động phát hiện
lỗi chú giải từ loại trong kho ngữ liệu tiếng Việt còn chưa có nhiều
tài liệu tham khảo và các công trình nghiên cứu. Do đó, nhu cầu cả về
cơ sở khoa học và xây dựng công cụ thực hiện sẵn dùng. Thực tế cho
thấy, hai quá trình này liên quan mật thiết với nhau và ảnh hưởng đến
chất lượng một hệ chung. Vì thế, trong luận văn này chúng tôi
“Nghiên cứu phƣơng pháp tự động phát hiện lỗi trong kho ngữ
liệu tiếng Việt đƣợc chú giải từ loại”. Đóng góp của luận luận văn
là việc tìm hiểu, nghiên cứu và đề xuất mô hình thực hiện gán nhãn
từ loại và phương pháp tự động phát hiện lỗi chú giải từ loại trong


kho ngữ liệu tiếng Việt; sử dụng công cụ vnTagger thực hiện gán
nhãn từ loại; bên cạnh đó chúng tôi tiến hành xây dựng một công cụ
tự động phát hiện lỗi chú giải từ loại tiếng Việt trên kho ngữ liệu
VietTreeBank có 10.165 câu với khoảng hơn 230.000 từ. Luận văn
tiến hành thực nghiệm trên kho ngữ liệu VietTreeBank áp dụng mô
hình entropy cực đại và thuật toán variaion n-gram đã cho kết quả
thực nghiệm khả quan, có độ chính xác cao. Các kết quả này sẽ hữu
ích cho các nghiên cứu ở mức cao hơn như dịch máy, tự động sửa lỗi
chú giải, tóm tắt văn bản,…


2

Cấu trúc của luận văn được trình bày như sau:
Chƣơng 1: Tổng quan về từ loại: Trong chương này, luận
văn giới thiệu hai vấn đề cơ bản về xử lý ngôn ngữ tự nhiên là tách từ
và gán nhãn từ loại tiếng Việt – các hướng tiếp cận cho bài toán gán
nhãn và tìm hiểu về kho ngữ liệu treebank tiếng Việt gồm có tập
nhãn từ loại và hướng dẫn gán nhãn trong khi phát triển
VietTreeBank.
Chƣơng 2: Phƣơng pháp gán nhãn từ loại và phát hiện lỗi
tự động trong kho ngữ liệu tiếng Việt đƣợc chú giải từ loại:
Chương này nghiên cứu và đề xuất mô hình gán nhãn từ loại và
phương pháp phát hiện lỗi tự động chú giải từ loại trong kho ngữ liệu
VietTreeBank. Các công việc mà luận văn đã tiến hành nhằm đề xuất
sử dụng mô hình gán nhãn từ loại Maximum Entropy Model (MEM)
và phương pháp entropy cực đại kết hợp với thuật toán variation Ngram cho bài toán tự động phát hiện lỗi chú giải từ loại trong kho ngữ
liệu tiếng Việt.
Chƣơng 3. Thực nghiệm và đánh giá kết quả: Chương này
trình bày các công việc thực nghiệm mà khóa luận đã tiến hành, bao

gồm việc sử dụng công cụ gán nhãn từ loại vnTagger và xây dựng
công cụ tự động phát hiện lỗi chú giải từ loại. Từ kết quả đạt được
tiến hành đối chiếu, đánh giá và đưa ra các vị trí lỗi chú giải từ loại
trong kho ngữ liệu VietTreeBank.
Chƣơng 4. Kết luận và hƣớng phát triển: Tóm lược các kết quả đã
đạt được và đóng góp của khóa luận, đồng thời định hướng một số
hướng nghiên cứu tiếp theo trong thời gian sắp tới.


3

Chƣơng 1. TỔNG QUAN VỀ TỪ LOẠI
1.1. Vấn đề tách từ và gán nhãn từ loại tiếng Việt
1.1.1. Khái quát về bài toán tách từ
Tiếng Việt là một ngôn ngữ đơn lập, không biến hình, các ký
tự được dựa trên hệ chữ cái Latin. Cũng giống như với các thứ tiếng
khác như tiếng Trung, tiếng Nhật, tiếng Hàn thì từ trong tiếng Việt
không được xác định bởi khoảng trắng (dấu cách). Một từ tiếng Việt
có thể được tạo bởi một hoặc nhiều hình vị và mỗi hình vị phân tách
nhau bởi các khoảng trắng. Từ là đơn vị cơ bản để phân tích cấu trúc
của ngôn ngữ, do vậy để tiến tới những ứng dụng xa hơn về xử lý
ngôn ngữ tiếng Việt như gán nhãn chức năng cú pháp, phân tích cú
pháp thì việc đầu tiên ta phải giải quyết bài toán tách từ.
Các nhà nghiên cứu đã đề xuất một số hướng tiếp cận để giải
bài toán tách từ [6, 16]. Nhìn chung, các hướng tiếp cận đó được chia
thành hai loại: tiếp cận dựa trên từ điển và tiếp cận dựa trên thống kê.
Hai phương pháp tiêu biểu của hướng tiếp cận dựa vào từ điển là
Longest Matching và Maximal Matching. Hầu hết những nghiên cứu
khởi thủy về tách từ đều dựa trên cách tiếp cận này như trong [14].
Hướng tiếp cận này có đặc điểm là đơn giản, dễ hiểu tuy nhiên hiệu

quả mang lại không cao. Lý do là bởi nó không xử lý được rất nhiều
trường hợp nhập nhằng cũng như không có khả năng phát hiện từ
mới trong văn bản. Chính vì vậy mà các hệ thống tách từ có chất
lượng cao hiện nay thường sử dụng hướng tiếp cận dựa trên thống kê.
Trong các nghiên cứu đó, tác giả đã phân tách hai quá trình nhận
dạng từ mới và tách từ đã biết như hai tiến trình độc lập nhau. Nghiên
cứu các phương pháp phát hiện từ mới ta thấy thông tin N-gram đóng
vai trò hữu ích giúp ta phát hiện từ mới khi mà corpus thống kê đủ
lớn và xác định được độ đo phù hợp. Câu hỏi đặt ra là làm cách nào
để tận dụng được từ tất cả các nguồn tri thức đó.


4

1.1.2 Khái quát về bài toán gán nhãn từ loại
1.1.2.1. Giới thiệu bài toán gán nhãn từ loại
Công việc gán nhãn từ loại cho một văn bản là xác định từ
loại của mỗi từ trong phạm vi văn bản đó, tức là phân loại các từ
thành các lớp từ loại dựa trên thực tiễn hoạt động ngôn ngữ. Việc gán
nhãn từ loại thường được thể hiện bằng cách gán cho mỗi từ một
“nhãn” có sẵn theo tập nhãn cho trước:
+ Input: Một chuỗi các từ (ví dụ đối với tiếng Việt: “Tôi vẽ
một bức tranh”)
+ Output: Một nhãn tốt nhất cho từng từ trong câu (Ví dụ:
Tôi/P vẽ/V một/M bức_tranh/N1)
1.1.2.2. Quá trình gán nhãn từ loại:
Gán nhãn từ loại là một quá trình gồm 3 bước xử lý như sau:
- Giai đoạn tiền xử lý: Phân tách xâu ký tự thành chuỗi các
từ. Giai đoạn này có thể đơn giản hay phức tạp tuỳ theo ngôn ngữ và
quan niệm về đơn vị từ vựng.

- Khởi tạo gán nhãn: Tức là tìm cho mỗi từ tập tất cả các
nhãn từ loại mà nó có thể có. Tập nhãn này có thể thu được từ cơ sở
dữ liệu từ điển hoặc kho ngữ liệu đã gán nhãn bằng tay.
- Quyết định kết quả gán nhãn: Đó là giai đoạn loại bỏ nhập
nhằng, tức là lựa chọn cho mỗi từ một nhãn phù hợp nhất với ngữ
cảnh trong tập nhãn khởi tạo nói trên.
Như vậy, trong gán nhãn từ loại thì bước tiền xử lý quan
trọng cho các phần tiếp theo trong quá trình xử lý ngôn ngữ tự nhiên
như phân tích cú pháp, phân tích ngữ nghĩa.
1.1.2.3. Ngữ liệu (Corpus)
Để thực hiện gán nhãn từ loại ta phải có kho ngữ liệu,
chúng có thể là:
- Từ điển và các văn phạm loại bỏ nhập nhằng.

1

Tập nhãn từ loại được dùng trong treebank tiếng Việt


5

- Kho văn bản đã gán nhãn, có thể kèm theo các quy tắc ngữ
pháp xây dựng bằng tay.
- Kho văn bản chưa gán nhãn, có kèm theo các thông tin
ngôn ngữ như là tập từ loại và các thông tin mô tả quan hệ giữa từ
loại và hậu tố. Kho văn bản chưa gán nhãn, với tập từ loại cũng được
xây dựng tự động nhờ các tính toán thống kê. Trong trường hợp này
khó có thể dự đoán trước về tập từ loại.
1.1.2.4. Các hướng tiếp cận giải bài toán
Khi thực hiện bài toán gán nhãn từ loại, ta gặp phải một số

khó khăn. Khó khăn này chủ yếu là do các từ thường có nhiều hơn
một từ loại. Hiện nay, có hai hướng tiếp cận chính cho gán nhãn từ
loại tự động là tiếp cận có giám sát và không giám sát:
- Tiếp cận có giám sát: nghĩa là phải xây dựng một kho ngữ
liệu huấn luyện lớn và/hoặc xây dựng tập luật để nhận diện từ loại.
Gán nhãn dựa trên luật sử dụng từ điển để tìm các từ loại có thể cho
các từ, sử dụng các luật làm thành một nghĩa và thường liên quan tới
một cơ sở dữ liệu lớn các luật được viết bằng tay.
- Tiếp cận không giám sát: Các mô hình không giám sát
không yêu cầu kho ngữ liệu đã gán nhãn nhưng lại sử dụng các thuật
toán tính toán phức tạp để tự động xây dựng các nhóm từ (nghĩa là
xây dựng các tập nhãn) và dựa trên các nhóm từ này để tính toán các
thông tin xác suất cần thiết cho các bộ gán nhãn thống kê hoặc để xây
dựng các luật ngữ cảnh cần thiết cho các hệ thống dựa trên luật.
1.1.2.5. Bài toán gán nhãn từ loại tiếng Việt
+ Ngôn ngữ tiếng Việt (Vietnamese language):
Tiếng Việt là ngôn ngữ có trật tự khá cố định với thứ tự của
từ là S-V-O (chủ ngữ, động từ và tân ngữ). Tiếng Việt dựa vào thứ tự
các thành phần câu để truyền đạt thông tin ngữ pháp quan trọng. Mặc
dù, văn bản tiếng Việt được viết bằng một chữ cái của bảng chữ cái
Latin, có ba đặc tính chủ yếu của tiếng Việt mà phân biệt nó với các
ngôn ngữ phương Tây là:


6

- Thứ nhất, tiếng Việt là một ngôn ngữ cố định trong đó hình
thức của từ không bao giờ thay đổi. Vì thế tất cả các thông tin văn
phạm được chuyển tải thông qua thứ tự từ và cấu tạo từ. Đặc điểm cố
định làm cho một hiện tượng đặc biệt của ngôn ngữ phổ biến trong

tiếng Việt: là hình thức của từ được sử dụng một khả năng mà không
nằm trong đặc trưng của nó (một động từ được sử dụng như một danh
từ, một danh từ như một tính từ ...) mà không cần bất kỳ thay đổi
hình thái.
- Thứ hai, tiếng Việt là một ngôn ngữ đơn lập, trường hợp
đặc biệt của phân tích ngôn ngữ, là mỗi hình vị là một duy nhất, âm
tiết đơn lập. Đơn vị từ vựng có thể được tạo thành bằng một hoặc
một số âm tiết, luôn có vị trí tách biệt trong văn bản. Mặc dù bộ từ
điển chứa một phần lớn các từ ghép, một âm tiết chiếm một phần lớn
của những từ xuất hiện.
- Sự khác biệt thứ ba, một hệ quả của sau này, là không có
dấu phân cách từ trong tiếng Việt: khoảng trống được sử dụng để
tách biệt giữa các âm tiết và không có dấu hiệu cụ thể phân biệt
khoảng trống giữa các từ thực tế. Ví dụ, một chuỗi đơn giản của ba
âm tiết a b c có thể tạo thành ba từ (a) (b) (c), hai từ (ab) (c), hai từ
(a) (bc) hoặc thậm chí một từ duy nhất (abc).
+ Tập nhãn từ loại tiếng Việt (Vietnamese tagset):
Theo [9] đã giới thiệu một tập nhãn hiện đang được sử dụng
trong một dự án phát triển một treebank cho ngôn ngữ này. Tập nhãn
đầy đủ được thiết kế để sử dụng trong treebank tiếng Việt gồm có 18
nhãn (xem Bảng 1.2)
Hiện nay, ở Việt Nam đã có một số tập nhãn từ loại được xây
dựng, chủ yếu ở mức thô, tiêu biểu có thể kể đến: Bộ nhãn VnPOStag
của tác giả Trần Thị Oanh gồm 14 nhãn, 01 nhãn không xác định và
các nhãn ký hiệu đặc biệt khác. Bộ VietTreeBank gồm 18 nhãn. Bộ
nhãn của nhóm tác giả Nguyễn Thị Minh Huyền sử dụng cho công cụ
VnQtag gồm 48 nhãn và 01 nhãn không xác định.


7


1.1.3. Một số khái niệm sử dụng trong luận văn
1.1.3.1. Ngữ liệu (Corpus)
Ngữ liệu thường là tập hợp các câu dưới dạng tiếng nói hay
văn bản, trong đó có chứa các thông tin cần thiết cho từng bài toán cụ
thể trong xử lý ngôn ngữ tự nhiên.
1.1.3.2. Ngữ liệu vàng (Golden Corpus)
Ngữ liệu vàng cũng là một dạng ngữ liệu trong đó có chứa
thông tin về từ loại và nhãn của từ loại hoàn toàn chính xác.
1.1.3.3. Ngữ liệu huấn luyện (Training corpus)
Ngữ liệu huấn luyện là ngữ liệu được tạo ra từ ngữ liệu vàng
để chuẩn bị cho quá trình học máy.
1.1.3.4. Hình vị (Morpheme)
Hình vị được xem là đơn vị tế bào gốc, đơn vị tế bào của
ngôn ngữ, và còn được gọi là “từ tố”. Hình vị tiếng Việt có khi gồm
có một tiếng, nhưng cũng có khi gồm nhiều tiếng tạo thành.
1.1.3.5. Âm tiết hay tiếng
Tiếng (âm tiết): là do một hay nhiều âm phát ra cùng một lúc
tạo thành. Tiếng là đơn vị cơ bản trong tiếng Việt và có âm đầu, vần
và thanh.
1.1.3.6. Từ (Word)
Từ gồm có một tiếng hoặc một tổ hợp tiếng có ý nghĩa hoàn
chỉnh. Căn cứ vào cách cấu tạo, ta có từ đơn và từ phức; trong đó từ
phức có từ ghép và từ láy (hay láy âm).
1.2. Tìm hiểu về treebank tiếng Việt
1.2.1. Giới thiệu
Tiếng Việt là ngôn ngữ đơn lập và không có ký tự tách từ
cho nên việc phân tích câu có nhiều nhập nhằng. Để giải quyết nhập
nhằng đó nhóm tác giả xây dựng treebank tiếng Việt đã vận dụng
nhiều thủ thuật ngôn ngữ học. Quá trình gán nhãn cú pháp được hỗ

trợ bằng công cụ gán nhãn tự động và công cụ soạn thảo. Nguồn ngữ
liệu thô được lấy từ báo tuổi trẻ điện tử. Độ đồng thuận mà nhóm tác
giả đạt được là khá cao, khoảng hơn 90%. Treebank thường được
dùng để xây dựng các hệ phân tích cú pháp, gán nhãn từ loại, tách từ.


8

Trong luận văn này, chúng tôi chỉ trình bày về tập nhãn từ
loại và hướng dẫn gán nhãn từ loại. Còn phần tập nhãn cú pháp và
hướng dẫn gán nhãn cú pháp, công cụ hỗ trợ người làm ngữ liệu và
qui trình gán nhãn cú pháp xem trong [18].
1.2.2. Tập nhãn từ loại
Dựa vào nghĩa khái quát. Nhóm tác giả đã xây dựng tập
nhãn từ loại chỉ chứa thông tin về từ loại cơ sở mà không bao gồm
các thông tin như hình thái, phân loại con, v.v. Tập nhãn từ loại của
chúng tôi được liệt kê trong Bảng 1.3, gồm có 18 nhãn từ loại.
1.2.3. Hướng dẫn gán nhãn
1.2.3.1. Xây dựng tài liệu hướng dẫn gán nhãn
Đây là một tài liệu rất quan trọng bao gồm không chỉ các
thông tin về tập nhãn, mà còn hướng dẫn gán nhãn cho các hiện
tượng cụ thể với các ví dụ minh họa.
1.2.3.2. Công cụ hỗ trợ
Công cụ hỗ trợ người gán nhãn làm việc hiệu quả hơn. Có
hai nội dung chính là hỗ trợ soạn thảo cây cú pháp và gán nhãn từ
loại tự động.
1.2.3.3. Quá trình gán nhãn từ loại
Quá trình gán nhãn một câu gồm ba bước: tách từ, gán nhãn
từ loại, và phân tích cú pháp. Qui trình thực hiện gán nhãn là tương
tự nhau, tuy nhiên mỗi bước yêu cầu những kiến thức và có những

đặc trưng riêng. Mỗi người gán nhãn có một người review và sửa lỗi.
Những trường hợp không chắc chắn thì ghi lại để thảo luận với nhóm
thiết kế (xem hình 1.3).
Theo [10], các công cụ gán nhãn hiện đang được sử dụng
phát triển Treebank có số điểm F1 là 90,5%, độ chính xác không cao.
Do đó, trong luận văn này chúng tôi sẽ trình bày một công cụ gán
nhãn từ loại của Lê Hồng Phương dựa trên nguyên lý phân lớp dữ
liệu của entropy cực đại, nó quan sát kể cả các nguồn tri thức mới
hữu ích cho việc gán nhãn từ loại tiếng Việt và đạt được kết quả là:
độ chính xác tổng thể 93.40% và độ chính xác với những từ chưa biết
80.69% được thử nghiệm trên treebank tiếng Việt [9].


9

Chƣơng 2. PHƢƠNG PHÁP GÁN NHÃN TỪ LOẠI VÀ PHÁT
HIỆN LỖI TỰ ĐỘNG TRONG KHO NGỮ LIỆU TIẾNG VIỆT
ĐƢỢC CHÚ GIẢI TỪ LOẠI
2.1. Giới thiệu mô hình N-gram
2.1.1. Khái quát
Một N-gram là một bộ các yếu tố (từ, tiếng, nhãn từ loại,)
liên tiếp trong ngữ liệu. Số yếu tố trong một N-gram được gọi là bậc
của N-gram, thông thường N-gram có bậc từ 1 tới 4. N-gram bậc 1
được gọi là unigram, bậc 2 được gọi là bigram, bậc 3 được gọi là
trigram, bậc 4 được gọi là quadrigram,… N-gram được dùng để ước
lượng xác suất xuất hiện của một yếu tố dựa vào các yếu tố xung
quanh nó trong câu. Do đó, N-gram có thể áp dụng cho các hệ thống
tách từ, gán nhãn từ loại, phát hiện lỗi chú giải từ loại,…
2.1.2.Variation n-gram
Theo [3], với mỗi từ xuất hiện trong một ngữ liệu thì có một

tập nhãn được xác định có khả năng được gán cho từ này. Một từ
xuất hiện nhiều hơn một lần trong một kho ngữ liệu như vậy có thể
được gán với nhiều nhãn khác nhau trong một kho ngữ liệu. Chúng
được gọi là Variation (biến thể).
Biến thể trong một ngữ liệu được chú giải gây ra bởi một trong
hai lý do:
+ Nhập nhằng: Một từ có thể được gán bằng nhiều nhãn từ loại
và ở những vị trí xuất hiện khác nhau. Trong kho ngữ liệu, từ đó ta có
nhiều lựa chọn nhãn từ loại để gán.
+ Lỗi: Việc gán nhãn một từ không nhất quán trong những lần
xuất hiện tương tự.
Tác giả sử dụng thuật ngữ variation n-gram đối với một Ngram bao gồm n từ trong kho ngữ liệu có chứa từ được gán nhãn từ
loại khác nhau trong các lần xuất hiện khác của cùng N-gram đó
trong kho ngữ liệu. Từ thể hiện sự biến đổi đó được gọi là variation
nuclei (hạt nhân biến đổi).


10

2.1.3. Thuật toán Variation N-gram
Ðể tìm tất cả các biến thể n-gram của một kho ngữ liệu thì đầu
vào là một kho ngữ liệu đã được chú giải từ loại và kết quả đầu ra là
một danh sách các biến thể n-gram, từ n = 1 đến giá trị n lớn nhất mà
có một Variation n-gram trong kho ngữ liệu, gồm các bước sau:
Bước 1: Xác định tập các biến thể 1-gram và lưu trữ các biến
thể 1-gram cùng vị trí của chúng trong kho ngữ liệu.
Bước 2: Dựa trên các vị trí lưu trữ của Variation n-gram trong
kho ngữ liệu, mở rộng n-gram về một trong hai phía (trừ khi ngữ liệu
kết thúc ở đó). Với mỗi (n +1)-gram, kiểm tra xem nó có thể hiện
khác trong kho ngữ liệu hay không và nếu có sự thay đổi trong gán

nhãn của (n + 1)-gram đó ở vị trí khác thì lưu trữ tất cả các biến thể
(n + 1)-gram và vị trí của chúng trong kho ngữ liệu
Bước 3: Lặp lại Bước 2 cho đến khi nhận được giá trị n mà
không còn variation n-gram trong kho ngữ liệu.
2.2. Mô hình entropy cực đại
Mô hình entropy cực đại là kỹ thuật dùng để đánh giá phân
phối xác suất của dữ liệu văn bản. Tư tưởng chính của phương pháp
là những gì chưa biết hoặc không rõ ràng thì không có bất kỳ giả định
gì (cực đại hóa độ hỗn loạn). Tức là áp đặt một phân phối đều lên các
sự kiện chưa biết. Dữ liệu đã được gán nhãn được sử dụng để lấy ra
tập các ràng buộc cho mô hình mà nó mô tả đặc điểm riêng cho từng
lớp cụ thể có thể được gán cho văn bản cần phân lớp. Cuối cùng,
thuật toán IIS sẽ tìm ra phân phối mà nó thỏa mãn các ràng buộc đã
đưa ra và thỏa mãn cực đại entropy với phân phối xác suất là đều nhất.
Ưu điểm lớn nhất của mô hình cực đại entropy là tính mềm
dẻo của mô hình: nó cung cấp một hệ thống các quy luật có tính
thống kê ngẫu nhiên để bổ sung các cú pháp, ngữ nghĩa và căn cứ
vào các đặc trưng. Tuy nhiên, mô hình cực đại entropy đòi hỏi một
chi phí khá lớn cho việc tính toán để ước lượng chính xác các tham
số của mô hình.


11

2.2.1. Nguyên lý entropy cực đại
Tư tưởng chủ đạo của nguyên lý cực đại hóa Entropy là ta
phải xác định một phân phối mô hình sao cho phân phối đó tuân theo
mọi giả thiết đã biết từ thực nghiệm và ngoài ra không đưa thêm bất
kì một giả thiết nào khác.
2.2.2. Các đặc trưng gán nhãn từ loại (POS – tagging)

Trong MEM, chúng ta dùng dữ liệu huấn luyện để xác định
các ràng buộc trên phân phối điều kiện. Mỗi ràng buộc thể hiện một
đặc trưng nào đó của dữ liệu huấn luyện. Mỗi ràng buộc trên quan sát
đầu vào và nhãn đầu ra có thể được xem như là đặc trưng fi (h,t). Vì
thế, xác suất đồng thời của lịch sử h và nhãn t được xác định bằng
các tham số mà các đặc trưng tương ứng của nó là hữu ích, ví dụ:  i
thỏa mãn fj(h,t) = 1. Một đặc trưng có bởi (h,t), có thể tác động vào
bất cứ từ nào hoặc nhãn nào của history h, và phải được mã hoá
thành thông tin mà có thể giúp dự đoán t, như là vần của từ hiện tại,
xác định hai nhãn phía trước. Các từ và nhãn trong một ngữ cảnh cụ
thể có sẵn đối với một đặc trưng được cho bởi định nghĩa sau của
history hi như công thức 2.11
hi = {wi, wi+1, wi+2, wi-1, wi-2, ti-1, ti-2}
(2.11)
2.2.3. Bộ công cụ gán nhãn từ loại tiếng Việt vnTagger
2.2.3.1. Giới thiệu vnTagger
Chương trình vnTagger của tác giả Lê Hồng Phương dùng để
tách từ và gán nhãn từ loại cho văn bản tiếng Việt. Tập nhãn được
dùng trong chương trình ở Bảng 1.2 gồm 18 nhãn từ loại
2.2.3.2. Yêu cầu cài đặt
Máy cần cài JRE (Java Runtime Environment) phiên bản 1.6
2.2.3.3. Chạy chương trình dưới dạng dòng lệnh (MS DOS):
- vnTagger.sh nếu chạy trên Linux/Unix/Mac OS
- vnTagger.bat nếu chạy trên các hệ điều hành MS Windows
1. Gán nhãn một tệp
vnTagger.bat -i samples/5.txt -o samples/5.tagged.xml
2. Kiểm tra tệp đã được gán nhãn
2.2.3.4. Khai báo hàm thư viện (API)



12

2.2.4. Áp dụng cho bài toán gán nhãn từ loại tiếng Việt
2.2.4.1. Mô hình gán nhãn từ loại tiếng Việt
Chúng ta có rất nhiều cách tiếp cận khác nhau cho bài toán
gán nhãn từ loại. Luận văn này, chúng tôi sử dụng phương pháp học
máy MEM đã được sử dụng thành công cho tiếng Anh và một số thứ
tiếng khác. Khi đó, bài toán gán nhãn từ loại được xem là bài toán
phân lớp với các lớp chính là các nhãn từ loại đã được xác định
trước. Lúc này, việc gán nhãn từ loại được thực hiện sau khi đã có
thông tin về từ vựng và thông tin về nhãn từ loại. Kiến trúc tổng thể
của mô hình gán nhãn từ loại sẽ được sử dụng trong thực nghiệm
được thể hiện trong hình 2.6.
2.2.4.2. Thực nghiệm mô hình gán nhãn từ loại
Theo [9], kết quả thực nghiệm của một số mô hình gán nhãn
từ loại dưới đây đã đạt được từ việc sử dụng phương pháp huấn luyện
dữ liệu dựa trên mô hình entropy cực đại (xem mục 2.2). Việc thiết
lập các đặc trưng gán nhãn từ loại khác nhau tạo nên sự khác biệt
giữa các mô hình gán nhãn. Tất cả các mô hình được huấn luyện và
kiểm thử trên cùng kho ngữ liệu VietTreeBank.
+ Kho ngữ liệu đánh giá
Mô hình được huấn luyện và thử nghiệm phần gán nhãn từ
loại trên kho ngữ liệu VietTreebank gồm có 10,165 câu đã được tách
từ, gán nhãn từ loại bằng tay và phân tích cú pháp đầy đủ.
+ Mô hình cơ sở
Trước tiên chúng ta phát triển một mô hình cơ sở tương tự
như mô hình Markov có điều kiện trong đó các ngữ cảnh có sẵn để
dự đoán nhãn của từ wi trong một chuỗi các từ wiw2…wn với các nhãn
t1t2…tn là {ti-1ti-2wiwi+1}. Mô hình này có độ chính xác tổng thể
90.23% và độ chính xác của những từ chưa biết chỉ là 47,08%. Vì lý

do đó, tác giả đã tập trung vào việc mở rộng các tính năng thiết lập để
cho phép vnTagger phỏng đoán tốt hơn về nhãn của các từ chưa biết.


13

+ Đặc trưng của các từ chưa biết
Để tăng khả năng dự đoán của mô hình cho các từ chưa biết,
một số mẫu tính năng đặc biệt có trong mô hình cơ sở và mô hình kết
quả được gọi là mô hình 1a. Dựa trên ý tưởng là các từ chưa biết có
thể sẽ là từ hiếm gặp, nếu chúng không được quan sát trước. Chúng
ta xem xét tính năng bổ sung khi cố gắng tìm nhãn của từ ghép chưa
biết âm tiết đầu tiên và cuối cùng của từ. Mô hình 1a được tăng
cường với các đặc tính bổ sung trên được gọi là mô hình 1b.
Chúng ta cũng tìm thấy sự hữu ích độ dài của một từ được
tính bởi các âm tiết khi dự đoán từ chưa biết. Thêm mẫu số lượng các
âm tiết của wi mô hình 1b tăng nhẹ tính chính xác của kết quả mô
hình 1c. Kết quả trên tập kiểm tra của bốn mô hình trình bày được thể
hiện trong bảng 2.5 [9].
+ Đặc trưng của danh từ riêng
Một trong những nguyên nhân gây ra lỗi gán nhãn là sự nhập
nhằng giữa Danh từ riêng (Np) và Danh từ (N) . Bảng 2.6 cho thấy
kết quả của mô hình 1d khi kết hợp đặc trưng âm tiết viết hoa.
+ Mô hình tổng quát
Việc sử dụng các đặc trưng mở rộng của từ vựng trên nhiều
từ liên tiếp gần nghĩa với nhau tạo ra hiệu suất gán nhãn ở mức độ
cao. Bằng cách kết hợp tất cả các đặc trưng tốt của mô hình 1d và
thêm mẫu đặc trưng của hai từ trước vào vị trí ± 2 của từ hiện tại,
chúng ta có được mô hình 2, tạo thành mô hình tốt nhất trong các
thực nghiệm của chúng tôi thể hiện trong Bảng 2.7. Mô hình này có

độ chính xác cao của kết quả gán nhãn từ loại cho văn tiếng Việt.
Bảng 2.8 cho thấy độ chính xác của mô hình kết hợp tốt nhất với độ
chính xác câu. [9]:
Độ chính xác tổng
Độ chính xác từ
Độ chính xác câu
thể
chƣa biết
93.40%
80.69%
31.40%
Bảng 2.8. Độ chính xác của mô hình tốt nhất


14

Tuy nhiên, do tiếng Việt là ngôn ngữ đơn lập và không có ký
tự tách từ cho nên việc phân tích câu có nhiều nhập nhằng và không
có ký tự phân tách từ. Đơn vị nhỏ nhất cấu tạo nên từ là âm tiết. Từ
tiếng Việt thì có thể là đơn âm tiết hoặc đa âm tiết. Nên trong quá
trình tách từ và gán nhãn từ loại không thể tránh khỏi xảy ra lỗi, có
thể là do sự nhập nhằng của từ, việc xác định nhãn sai hay chưa kết
hợp các đặc trưng cụ thể của ngữ cảnh xung quanh từ,…
2.3. Mô hình entropy cực đại cho bài toán phát hiện lỗi tự động
trong kho ngữ liệu tiếng Việt đƣợc chú giải từ loại
Trong luận văn này, chúng tôi sẽ xây dựng công cụ tự động
phát hiện lỗi dựa trên mô hình MEM và thuật toán Variation n-gram.
Mà lỗi chú giải từ loại trong kho ngữ liệu gây ra bởi một trong hai lý
do là: nhập nhằng của từ loại và lỗi gán nhãn. Do đó, công việc sửa
chữa lỗi chú giải từ loại gồm có hai bước sau :

Bước 1: Xét các từ trong kho ngữ liệu và phân loại nhãn của
từ đó được gán nhãn đúng hay sai. Điều này được thực hiện dựa trên
một phương pháp phát hiện hoàn toàn tự động được áp dụng trên
trong kho ngữ liệu lớn.
Bước 2: Tìm kiếm nhãn đúng cho những vị trí đó: Xem xét
những vị trí chính xác là lỗi và xác định nhãn đúng cho từ đó.
2.3.1. Dữ liệu huấn luyện
Để sử dụng được, mô hình entropy cực đại cần được cung
cấp nhiều thông tin về nhãn từ loại và thông tin về ngữ cảnh.
Entropy cực đại được huấn luyện bằng cách xét các thuộc
tính tại vị trí i trong chuỗi dữ liệu quan sát gồm hai phần: thứ nhất,
thông tin ngữ cảnh tại vị trí i của chuỗi dữ liệu quan sát. thứ hai, phần
thông tin về nhãn tương ứng.
Trong luận văn này, chúng tôi sử dụng cộng cụ vnTagger để
tách từ và gán nhãn từ loại cho kho ngữ liệu VietTreeBank. Công cụ
đã được tích hợp sẵn tập dữ liệu huấn luyện dùng để gán nhãn cho từ
loại tiếng Việt.


15

2.3.2. Thuộc tính phân lớp
Để tự động phát hiện được các lỗi chú giải trong kho ngữ liệu
tiếng Việt bằng cách phân lớp ngữ cảnh dựa trên nền tảng cơ bản là
việc gán nhãn cho một từ phụ thuộc vào ngữ cảnh của từ đó. Thông
tin ngữ cảnh được chúng tôi sử dụng đó là nhãn của từ phía trước và
phía sau của từ hiện tại. Mỗi ngữ cảnh xuất hiện trong ngữ liệu huấn
luyện sẽ giúp cho chúng ta chọn được nhãn đúng cho từ. Xác suất mà
nhãn xuất hiện trong ngữ cảnh đó sẽ được lưu lại, trong quá trình gán
nhãn cho ngữ liệu mới nó giúp chúng ta chọn được nhãn chính xác.

Theo [3], đã đưa ra nhận định rằng, một biến thể thì có nhiều
khả năng là lỗi hơn một sự nhập nhằng nếu nó xuất hiện trong một
đoạn dài của các câu khác nhau. Hay nói cách khác, các variation ngram với giá trị n càng lớn thì khả năng variation là một lỗi càng cao.
2.3.3. Cách phát hiện lỗi dựa trên kết quả phân lớp
Trong luận văn này, chúng tôi xây dựng công cụ tự động phát
hiện lỗi chú giải từ loại trong kho ngữ liệu VTB, gồm các bước sau:
Bước 1: Tiền xử lý kho ngữ liệu treebank tiếng Việt;
Bước 2: Sử dụng công cụ gán nhãn tự động vnTagger để tách
từ và gán nhãn từ loại cho kho ngữ liệu VietTreeBank. Với tập dữ liệu
đầu vào là kho ngữ liệu VTB đã loại bỏ các nhãn từ loại được gán
bằng tay trước đó;
Bước 3: Đi thống kê số lượng các variation nucleis và vị trí
của chúng trong kho ngữ liệu treebank tiếng Việt được chú giải từ loại
bằng tay ở mỗi n-grams (01 gram, 02 gram,…,n –gram) và đồng thời
đưa ra những vị trí của variation nucleis có khả năng lỗi bằng phương
pháp so sánh nhãn ở những vị trí của variation nucleis với nhãn của từ
loại (cùng vị trí) trong kho ngữ liệu VTB sử dụng vnTagger gán nhãn
từ loại ở Bước 2.
Bước 4: Dựa trên kho ngữ liệu vàng 2 để đánh giá các
variation nucleis được thống kê ở Bước 3.
2

Được xây dựng bởi các nhà ngôn ngữ học của dự án quốc gia VLSP về văn bản tiếng Việt


16

Chƣơng 3. THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ
3.1. Mô tả về dữ liệu và công cụ đƣợc sử dụng trong thử nghiệm
3.1.1. Mô tả dữ liệu thử nghiệm

Bộ dữ liệu VietTreeBank: Đây là sản phẩm của dự án quốc
gia VLSP, gồm 142 văn bản tương ứng với 10.165 câu và khoảng
230.000 từ. Bộ dữ liệu này đã được gán nhãn từ loại bằng tay với tập
nhãn từ loại VTB (VietTreeBank) gồm 16 nhãn từ loại, 1 nhãn cho từ
không gán nhãn được và 1 nhãn cho ký hiệu đặc biệt (Bảng 1.3).
3.1.2. Mô tả công cụ được sử dụng thử nghiệm
3.1.2.1. Công cụ gán nhãn từ loại
Trong luận văn này, chúng tôi sử dụng công cụ vnTagger của
tác giả Lê Hồng Phương được viết bằng ngôn ngữ lập trình Java dựa
trên mô hình MEM để tách từ và gán nhãn từ loại tự động cho văn
bản tiếng Việt. Tập nhãn được dùng trong chương trình ở Bảng 1.2
gồm 18 nhãn từ loại (xem tại mục 2.2.3).
Kho ngữ liệu được chú giải từ loại bởi vnTagger dùng so sánh
và đánh giá để đưa ra các vị trí của variation nucleis có khả năng lỗi
nhãn từ loại trong treebank tiếng Việt được gán nhãn bằng tay, với:
Input: Kho ngữ liệu treebank tiếng Việt đã loại bỏ nhãn từ
loại được gán bằng tay trước đó.
Output: Kho ngữ liệu VTB được gán nhãn từ loại bởi công
cụ vnTagger.
3.1.2.2. Công cụ tự động phát hiện lỗi chú giải từ loại
Công cụ được xây dựng dựa trên thuật toán variation n-gram.
Công cụ này được viết bằng ngôn ngữ lập trình C# dùng để thống kê
số lượng các variation nucleis và vị trí của từ được chú giải từ loại
trong kho ngữ liệu tiếng Việt, với:
Input: Kho ngữ liệu VTB được chú giải từ loại bằng tay.
Output: Danh sách thống kê số lượng các variation nucleis
và vị trí của chúng trong kho ngữ liệu VietTreeBank được chú giải từ
loại trong các n-grams (01 gram, 02 gram,…,n–gram) và đưa ra tập
nhãn của các vị trí variation nucleis có khả năng lỗi.



17

3.1.3. Thử nghiệm chương trình và đánh giá kết quả
3.1.3.1. Thử nghiệm chương trình
Chương trình tự động phát hiện lỗi: với mục đích kiểm
nghiệm phương pháp entropy cực đại kết hợp với thuật toán variation
n-gram để tự động phát hiện lỗi chú giải từ loại trong kho ngữ liệu
VietTreeBank có 10.165 câu được tách từ và gán nhãn từ loại bằng
tay. Tập dữ liệu này sẽ được sử dụng làm đầu vào cho việc kiểm thử
tự động phát hiện lỗi chú giải từ loại.

Hình 3.1. Giao diện chƣơng trình chính

Chương trình gồm hai chức năng chính: chức năng gán nhãn
từ loại và chức năng phát hiện lỗi chú giải.
+ Chức năng gán nhãn từ loại: gọi đến công cụ vnTagger
để tách từ và gán nhãn từ loại tự động cho kho ngữ liệu
VietTreeBank. Theo [9], công cụ này có độ chính xác gán nhãn là:
Độ chính xác tổng thể: 93.40%, độ chính xác từ chưa biết: 80.69% và
độ chính xác câu: 31.40%. Và thời gian thực hiện gán nhãn từ loại
cho 218.816 từ của kho ngữ liệu VietTreeBank là: 6 phút 03 giây.


18

Hình 3.2. Giao diện chƣơng trình gán nhãn từ loại

+ Chức năng phát hiện lỗi chú giải từ loại: thực hiện thống
kê số lượng các variation nucleis, vị trí của chúng trong kho ngữ liệu

VietTreeBank được chú giải từ loại bằng tay và đánh dấu các vị trí
của variation nucleis có khả năng lỗi.

Hình 3.3. Giao diện chƣơng trình phát hiện lỗi chú giải từ loại

Kết quả chương trình thu được: 16-grams với số variation
nucleis, vị trí của chúng được phát hiện trong kho ngữ liệu và số vị trí
có khả năng lỗi nhãn từ loại ở mỗi gram, cụ thể như sau:


19
Số variation
Số vị trí
Số vị trí variation
nucleis
variation nucleis nucleis có khả năng lỗi
1-gram
1.646
116.346
17.965
2-gram
4.661
29.270
9.547
3-gram
1.316
3.995
1.593
4-gram
269

670
313
5-gram
85
211
100
6-gram
41
102
49
7-gram
23
56
29
8-gram
15
37
22
9-gram
9
25
16
10-gram
7
21
14
11-gram
5
10
5

12-gram
5
10
5
13-gram
4
8
4
14-gram
3
6
3
15-gram
2
4
2
16-gram
1
2
1
Bảng 3.1. Số lƣợng n-grams và variation nucleis trong VTB

Số n-gram

Từ bảng 3.1 ta thấy, các variation nucleis trong n-grams càng
lớn thì tỷ lệ variation nuclei lỗi càng cao. Để đưa ra được các vị trí
variation nucleis có khả năng lỗi thì chúng ta đem so sánh nhãn từ
loại ở vị trí variation nuclei với nhãn từ loại được gán bởi công cụ
vnTagger (cùng vị trí) nếu khác thì đánh dấu vị trí đó.
3.3.3.2. Đánh giá kết quả thử nghiệm

Vì các variation nucleis được phát hiện bởi công cụ phát hiện
lỗi chú giải từ loại mới chỉ ở mức độ là chỉ ra được các nhãn từ loại ở
các vị trí của variation nucleis có khả năng xảy ra lỗi. Chính vì vậy,
để đánh giá được các vị trí này có chính xác là lỗi hay không thì
chúng tôi đã tiến hành xây dựng một công cụ tự động đánh giá các vị
trí của variation nucleis có khả năng lỗi dựa trên kho ngữ liệu vàng
với các từ được gán nhãn từ loại hoàn toàn chính xác.


20

Hình 3.4. Kết quả đánh giá các variation nucleis

Với dữ liệu đầu vào là kho ngữ liệu vàng và tập nhãn của các
vị trí variation nucleis có khả năng lỗi (được thay bởi các nhãn của
vnTagger). Trước tiên, công cụ đánh giá tiến hành thống kê được 820
từ trong kho ngữ liệu vàng (pos_key.txt) thuộc tập variation nucleis
của VTB (từ 1-gram,…,16-gram). Tiếp theo, đem so sánh nhãn từ
loại được gán bởi vnTagger ở các vị trí của variation nucleis được
phát hiện trong kho ngữ liệu VietTreeBank với nhãn từ loại của từ đó
trong kho ngữ liệu vàng (cùng vị trí xuất hiện).
Nếu hai nhãn trùng nhau thì công cụ phát hiện lỗi đã phát
hiện sai ngược lại thì công cụ phát hiện lỗi đã phát hiện đúng đồng
thời công cụ đánh giá lỗi đưa ra đề xuất nhãn từ loại thay thế cho
nhãn lỗi. Kết quả ở 5.036 vị trí xuất hiện của 820 variation nucleis có
3.654 vị trí trùng với nhãn trong kho ngữ liệu vàng và 1.382 vị trí
khác với nhãn trong kho ngữ liệu vàng (nhãn lỗi).


21


Chƣơng 4. KẾT LUẬN
4.1. Kết quả đạt đƣợc
- Cơ sở lý thuyết: Luận văn đã hệ thống hóa một số vấn đề
lý thuyết về tách từ, gán nhãn từ loại, phát hiện lỗi chú giải từ loại và
ngôn ngữ tiếng Việt cũng như nắm bắt được các cách tiếp cận khác
nhau cũng như tình hình nghiên cứu trong nước và thế giới, cụ thể
như sau:
Về từ loại nghiên cứu bài toán tách từ và hướng tiếp cận với
bài toán gán nhãn, quá trình gán nhãn từ loại và tập nhãn từ loại tiếng
Việt. Tìm hiểu một số khái niệm như kho ngữ liệu, ngữ liệu vàng,
ngữ liệu huấn luyện, từ, âm tiết (tiếng) và quá trình xây dựng, cách
gán nhãn ở treebank tiếng Việt.
Tìm hiểu mô hình entropy cực đại và mô hình N-gram.Với
ưu điểm mềm dẻo và linh hoạt của mô hình entropy cực đại, luận văn
đã sử dụng mô hình entropy cực đại kết hợp với thuật toán variation
n-grams để giải quyết bài toán tự động phát hiện lỗi chú giải từ loại
được trình bày chi tiết tại chương 2 .
- Về mặt thực nghiệm: Dựa trên cơ sở lý thuyết của mô hình
entropy cực đại và mô hình n-gram để xây dựng chương trình tự
động phát hiện lỗi chú giải từ loại trong kho ngữ liệu treebank tiếng
Việt. Chương trình được viết bằng ngôn ngữ lập trình C# với giao
diện tiện dụng và gồm hai chức năng chính (gán nhãn từ loại và phát
hiện lỗi chú giải từ loại). Chương trình dựa trên kho ngữ liệu
VietTreeBank đã được gán nhãn từ loại bằng tay để đưa ra các lỗi
chú giải từ loại và vị trí của các lỗi đó trong kho ngữ liệu tiếng Việt.
Điều đó, giúp các hệ thống tìm kiếm thông tin, hệ thống nhận dạng
tiếng nói cũng như trong các hệ thống dịch máy,…có độ chính xác và
hiệu quả hơn.
Kết quả chạy chương trình phát hiện lỗi trên kho ngữ liệu

VietTreeBank thu được: 16-grams với số variation nucleis và vị trí
của chúng được phát hiện trong kho ngữ liệu ở mỗi grams là:


22
Số n-gram

Số variation
nucleis

Số vị trí variation
nucleis

Số vị trí variation
nucleis có khả năng lỗi

1-gram
2-gram
3-gram
4-gram
5-gram
6-gram
7-gram
8-gram
9-gram
10-gram
11-gram
12-gram
13-gram
14-gram

15-gram
16-gram

1.646
4.661
1.316
269
85
41
23
15
9
7
5
5
4
3
2
1

116.346
29.270
3.995
670
211
102
56
37
25
21

10
10
8
6
4
2

17.965
9.547
1.593
313
100
49
29
22
16
14
5
5
4
3
2
1

Và chương trình đã đánh giá 5.036 vị trí xuất hiện của 820
variation nucleis có 3.654 vị trí trùng với nhãn trong kho ngữ liệu
vàng và 1.382 vị trí khác với nhãn trong kho ngữ liệu vàng (nhãn lỗi).
4.2. Hƣớng phát triển
Do còn hạn chế về thời gian nên khoá luận còn một số vấn đề
cần tiếp tục hoàn thiện và phát triển trong thời gian tới:

Tìm hiểu, nghiên cứu thêm các đặc điểm của ngôn ngữ tiếng
Việt và các phương pháp phát hiện lỗi chú giải, sửa lỗi chú giải để
xây dựng công cụ tự động phát hiện và sửa lỗi chú giải từ loại trong
kho ngữ liệu tiếng Việt.
Tiếp tục nghiên cứu xây dựng kho ngữ liệu vàng treebank
tiếng Việt.



×