ĐẠI HỌC QUỐC GIA HÀ NỘI
****
NHẬN DẠNG VÀ PHÂN LOẠI CÁC THựC THẺ CÓ TÊN
CHO VẪN BẢN TIÉNG VIỆT
Mã số: QC.09.08
Chủ nhiệm đề tài: Phạm Bảo Sơn
Ị 0AIMOC QỊ1'* G'c Hí. f\: 1
l.\ ■ It V* «*-• 1- 'n\» Iho »if N
Ồ O O b 0 0 0 0 0 4 - 1
Hà N ộ i-2 0 1 0
MỤC LỤC
BÁO CÁO TỔNG KẾT 2
1. Giới th iệ u 2
2. Thách thức 3
3. Tổng quan các vấn đề nghiên cứu 4
3.1 Các phương pháp phổ biển 4
3.2 Giới thiệu về G A TE 5
4. Xây dựng Corpus cho tiếng Việt 7
5. Xây dựng hệ thống NER cho tiếng V iệ t 9
5.1. Tiền xử lý 10
5.2. Bộ từ đ iể n 11
5.3. Bộ luậ t 12
6. Thực ng hiệm 14
6.1 Các bước tiến hành thực nghiệm 14
6.2. Kết quả thực ng hiệm 15
7. Kết luận 18
Tài liệu tham k h ả o 19
11
Danh sách những người tham gia thực hiện đề tài (học hàm, học vị, cơ quan công tác)
Chủ trì đề tài:
• TS. Phạm Bảo Sơn
Bảng 6.1 - Kết quả nhận dạng trên tập huấn luyện 15
Bàng 6.2 - Bàng kết quả nhận dạng trên tập kiểm ừa Ị 6
Bảng 6.3 - Kêt quả nhận dạng trên tập kiểm ừa với tiêu chí “lòng” ( lenient evaluation)
17
Bàng 6.4 - Kết quả thực nghiệm cùa một số hệ thống nhận dạng thực thể trong văn bản tiểng Việt
17
V
1 T ó m tắt cá c kết qu ả n gh iên cứ u ch ín h của đ ề tài
Kêt quà vé khoa học (những đóng góp của đề tài, các công trình khoa học đã công bố)
2 bài báo đăng tại các hội nghị quốc tế chuyên ngành (đăng bởi IEEE CS)
• Dang Due Pham, Giang Binh Tran and Son Bao Pham. “A Hybrid Approach to
Vietnamese Word Segmentation using Part o f Speech tags”, Proceedings o f The first
International Conference on Knowledge and Systems Engineering (KSE 2009).
• Dai Quoc Nguyen, Dat Quoc Nguyen and Son Bao Pham. “A Vietnamese Question
Answering S y s t e m Proceeding o f The first International Conference on Knowledge and
Systems Engineering (KSE 2009).
Két quả phục vụ thực tế (các sản phấm công nghệ, khả năng áp dụng thực tế)
Chúng tôi đã nghiên cứu và phát triển một hệ thống nhận dạng thực thể có tên cho tiếng
Việt đạt kết quả khá khả quan, song song với đó là một bộ dữ liệu đã được gán nhãn chuẩn và
tài liệu định nghĩa các loại thực thể. Tất cả hệ thống và các tài liệu liên quan sẽ được mở cho
cộng đồng sử dụng và phát triển.
Kết quả đào tạo (sẻ lượng sinh viên, số lượng học viên cao học, nghiên cứu sinh tham gia
thực hiện làm việc trong đề tài, so khóa luận, luận vân đã hoàn thành và bảo vệ)
3 khóa luận tốt nghiệp CNTT:
'• Dat Ba Nguyen, "Named Entity Recognition for Vietnamese ”, Khóa luận tốt nghiệp
đại học, Trường Đại học Công Nghệ, 2009.
• Dai Quoc Nguyen, “Phương pháp xây dựng hệ thong hỏi đáp tiếng Việt dựa trên
Ontology”, Khóa luận tốt nghiệp đại học, Trường Đại học Công Nghệ, 2009.
về bài toán nhận dạng thực thể trong văn bản đối với tiếng Việt. Hơn nữa những hệ thống
hiện thời không phải là nguồn mở nên rất khó để tiếp cận sứ dụng và phát triển [4], [11].
Chính vì vậy chúng tôi quyết định xây dựng một hệ thống nhận dạng thực thể sử dụng hệ
luật cho văn bản tiếng Việt trên nguồn m ở của khung làm việc GATE (General Architecture
for Text Engineering)1. Toàn bộ hệ thống sẽ được mở cho cộng đồng sử dụng và phát triển.
1 Website chính thức của GATE: htìp://gate.ac.uk/downỉoad/index.html
2
Song song với việc phát triển hệ thống, chúng tôi cũng xây dựng một bộ tài liệu bao gồm:
định nghĩa các thực thể, các loại thực thể, cùng với một tập dừ liệu được gán nhãn chuẩn cho
bài toán nhận dạng thực thể trong văn bản tiếng Việt.
2. Thách thức
Có những thách thức mà phải vượt qua để giải quyết được bài toán này:
• Tiếng Việt mang nhiều đặc trưng ngôn ngữ riêng khiến nó trở nên phức tạp so với
tiếng Anh và m ột số ngôn ngữ khác. Những khó khăn đó xuất phát từ một trong
những đặc điểm sau:
o Phân biệt các từ không xác định bằng dấu cách bởi một từ có thể bao gồm nhiều
âm tiết và chỉ mỗi âm tiết mới phân cách nhau bởi dấu cách. Điều này dẫn đến
nhập nhằng ữong phân đoạn từ tiếng Việt. Ví dụ: “Học sinh học sinh học ” có thể
được phân đoạn từ thành “Học sinh học sinhỳiọc” hoặc cũng có thể là “Học_sinh
học sinh học
o Ngữ pháp Việt Nam phức tạp cùng với hiện tượng đồng âm khác nghĩa, từ dồng
nghĩa hay đảo trật tự câu và các phép tu từ dẫn đến nhập nhằng trong xác định ý
nghĩa của câu, từ.
• Chưa có corpus (tập cơ sở dữ liệu gán nhãn tiếng Việt) công bố với kích thước đủ lớn
để tiến hành thí nghiệm và đánh giá hiệu năng của phương pháp.
• Chưa có nhiều nghiên cứu tiền đề về vấn đề phát nhận dạng thực thể có tên trong văn
bản tiếng Việt.
• Đặc thù tiếng Việt khó có thể áp dụng ngay những kết quả nghiên cứu trên thế giới
với tiếng Anh, Ả-Rập để đạt được kết quả cao.
3
4
Sau đó dựa trên những thông tin về nhãn cùa từ thu được qua mô hình IOB, cùng với từ
loại và loại thực thể (named entity) v.v để trích chọn đặc trưng làm đầu vào cho các mô
hình phân loại sử dụng các phương pháp học máy.
Đối với tiếng Việt, một trong những nghiên cứu đầu tiên là của tác giả Nguyễn với hệ
thống nhận dạng thực thể trong văn bản dựa trên mô hình Conditional Random Fields (CRF)
để xác định 8 loại thực thể: thực thể chỉ người (Person), thực thể chỉ địa danh (Location),
thực thể chi tổ chức (Organization), phần trăm, thời gian (Time), số (Number), tiền tệ
(Money) [11]. Tác giả tiến hành thực nghiệm sử dụng công cụ FlexCRFs2, sử dụng dữ liệu
gồm 50 bài báo lĩnh vực kinh doanh (khoảng gần 1400 câu) lấy từ nguồn báo điện tử
vnexpress. Biểu đồ ở hình 2.1 thể hiện kết quả cùa 10 lần thử nghiệm với F-measure trung
bình khoảng 8 0 -8 1 %.
“Hệ thống lai” là hệ thống kết hợp giữa hai hướng tiếp cận truyền thống, là sử dụng hệ
luật và các phương pháp học máy, nhằm sử dụng được ưu điểm cùa cà hai hướng tiếp cận
này. Tuy chưa có một nghiên cứu nào về hướng tiếp cận này đối với tiếng Việt, nhưng cũng
đã có một vài nghiên cứu đạt kết quả khá khả quan với tiếng Trung Quốc được xem là khá
gần gũi với tiếng Việt. Sirhari và X. Fang cùng đưa ra những hệ thống lai kết hợp giữa các
phương pháp học máy và hệ luật [16], [5]. Đặc biệt hệ thống của X. Fang đã thu được những
kết quả khá cao cho văn bản tiếng Trung. Tuy chưa có nhiều nghiên cứu về hướng tiếp cận
này cho bài toán nhận dạng thực thể trong văn bàn tiếng Việt, nhưng với những kết quả khả
quan như vậy có thể nó sẽ là hướng quan trọng trong tương lai.
3.2 Giới thiệu về GATE
GATE là một khung làm việc mã nguồn mở cho các bài toán xử lý văn bản do nhóm giáo sư
Cunningham thuộc trường đại học Sheffield - Anh phát triển. Có thể download phiên bản
mới nhất của GATE miễn phí tại địa chi: http://gate.ac.uk7do\vnload/index.htmỉ.
Mô hình kiến trúc tổng quát của GATE được mô tả trong hình 3.1. Trong đó:
• Tầng hiển thị (IDE GUI Layer): có nhiệm vụ hiển thị giao diện trực quan tương tác
với người dùng.
• Tầng ứng dụng (Application Layer): gồm các ứng dụng khác nhau như bộ ANNIE (có
sẵn trong GATE) hay các thành phần tích hợp (Plugin) mới v.v
“Phòng Giáo dục hicyện M ỹ Đức đang họp giao ban. ”
ta chỉ nhận “Phòng Giáo dục huyện Mỳ Đức” là thực thể chỉ các tổ chức (Organization) và
bỏ qua thực thể chỉ địa điểm “Mỹ Đức”.
Tuy không cần thiết có một tập dữ liệu được gán nhãn lớn để dùng trong giai đoạn huấn
luyện như những hệ thống sử dụng các phương pháp học máy, nhưng với mục đích xây dựng
thêm một bộ dữ liệu chuẩn, cùng với những khó khăn trong vấn đề nhập nhằng ngôn ngữ khi
viết luật, chúng tôi quyết định xây dựng song song hệ thống nhận dạng thực thể và tập dữ
liệu được gán nhân chuẩn, trong đó tập văn bản ban đầu được lấy tò đề tài: “Nghiên cứu phát
triển một số sản phẩm thiết yếu về xử lý tiếng nói và vân bàn tiếng Việt”, mã so KCO 1.01 /06-
10. Quá trình phát triển đồng thời hai thành phần như vậy mang lại rất nhiều lợi ích như:
• Tiết kiệm thời gian và công sức so với việc hoàn toàn gán nhãn bằng tay cho tập dữ
liệu.
• Quá trình chuẩn hóa lại tập thực thể được nhận sai của hệ thống đem lại cho chúng tôi
nhiều kinh nghiệm để hoàn thiện bộ luật cũng như bộ từ điển trong hệ thống.
Mô hình của hệ thống được mô tả quá trình phát triển của hệ thống trong hình 4.1.
7
Update
Hình 4.1 - Mô hình các bước phát triển cùa hệ thống
Đầu tiên chúng tôi xây dựng rất nhanh một hệ thống nhận dạng thực thể sử dụng bộ luật
Jape cho văn bản tiếng Việt có thể dùng được. Sau khi hệ thống đã hình thành, chúng tôi sử
dụng nó để gán nhãn tự động cho văn bản (một tập văn bản). Tập văn bản được gán nhãn tự
động này còn mang nhiều lỗi, được chúng tôi chuẩn hóa thành những văn bản được gán nhãn
chuẩn và thêm nó vào tập dừ liệu (corpus). Tuy đã tiết kiệm được khá nhiều thời gian và
công sức nhờ m ô hình gán nhãn tự động nhưng việc chuẩn hóa lại cũng gặp phải một số khó
khăn như:
• Mang tính chủ quan, dễ mắc sai sót.
• Nhiều trường hợp nhập nhằng rất khó để phân loại.
Chính vì những lý do trên, chúng tôi chia ra làm hai đội, gán nhãn lại độc lập với nhau.
Sau đó sử dụng bộ công cụ Coltech.NE.tool do nhóm tự xây dựng dựa trên các bộ công cụ
8
Như vậy tiếng “sinh” có thể kết hợp với tiếng “Học” đứng trước nó để tạo thành từ “Học
sinh”, hay nó còn có thể kết hợp với tiếng “học” đứng sau nó để tạo thành từ “sinh_học”.
Quay trở lại bài toán nhận dạng thực thể trong văn bản tiếng Việt, đương nhiên thực thể phải
là từ, hoặc cụm từ mang ý nghĩa. Chúng ta không thể nhận một cụm các tiếng không mang
một ý nghĩa gì làm thực thể. Vậy yêu cầu đầu tiên của giai đoạn tiền xử lý cho bài toán nhận
dạng thực thể là bài toán tách từ trong tiếng Việt. Một hệ thống nhận dạng thực thể chi có thể
tốt khi có m ột bộ tách từ hoạt động tốt. Lấy câu sau đây làm ví dụ:
“Anh Hùng lái xe trên đại lộ 5. ”
Nếu bộ tách từ hoạt động chính xác, câu đó sẽ được tách thành:
“Anh Hùng lái_xe trên đại_lộ 5.”
Từ “Hùng” đứng sau tiền tố nhận dạng “Anh” sẽ được nhận là thực thể chi người <Person>
và chính xác. Tuy nhiên nếu bộ tách từ hoạt động không chính xác và câu được tách thành:
“Anh Hùng lái_xe trên đại_lộ 5.”
Khi đó trong tập các từ hoàn toàn không có tò “Hùng” và việc nhận ra “Hùng” là thực thể
tên người sẽ trở nên rất khó khăn.
Ngoài yêu cầu bắt buộc về một bộ tách từ, chúng tôi còn sử dụng thêm bộ gán nhãn từ
loại trong giai đoạn tiền xử lý cúa hệ thống, nhàm cung cấp được nhiều thống tin cho các giai
đoạn xử lý tiếp theo. Chúng tôi đóng gói bộ WS&PT.2IN1.4VN (Phạm 2009) thành plugin
10
Coltech.NLP.tokenizer trong khung làm việc GATE. Nhờ đó bộ tách từ và gán nhãn từ loại
có thể dễ dàng thay đổi, cải tiến mà không làm ảnh hưởng đến kiến trúc của hệ thống.
5.2. Bộ từ điển
Bộ từ điển (VNEgazetteer) được tạo từ nhiều từ điển với các tiêu chí khác nhau, nhằm nhận
dạng được một lớp các thực thể nhờ quá trinh so khớp, cũng như cung cấp những thông tin
cần thiết cho quá trình nhận dạng trong bộ luật. Mồi từ điển gồm các từ mang cùng một ý
nghĩa nào đó, có thể là chứa các thực thể cùng loại như: tên người, tên tổ chức v.v hay
chứa các từ, cụm từ đóng những vai trò giống nhau về mặt cú pháp, ngừ nghĩa, hoặc chi đơn
giản là để sử dụng cho m ột luật nào đó trong bộ luật. Bộ từ điển được chúng tôi xây dựng
nhờ những kinh nghiệm có được trong quá trình gán nhãn bằng tay, và vẫn đang được tiếp
tục phát triển.
bộ tò điển) cung cấp để nhận dạng các thực thể (thực thể và loại thực thể). Có thể mô tả các
bước hoạt động của bộ luật đo chúng tôi xây dựng như sau:
• Tiền xử lý: loại bỏ các nhãn “Lookup” không cần thiết, hoặc có thể đưa những thông
tin sai cho quá trình nhận dạng.
• Xử lý
o Nhận dạng các thực thể chi công trình <Facility> và các thực thể chi tổ
<Organization>
o Nhận dạng các thực thể chỉ địa điểm <Location> và các thực thể thuộc về quốc gia
<Nationality>
o Nhận dạng các thực thể chi các tổ chức tôn giáo <Religion>
o Nhận dạng các thực thể chi người <Person>
o Sử dụng ngữ cảnh và quá trình nhận dạng thông minh.
12
Bước đầu tiên của bộ luật là loại bỏ đi những nhãn Lookup chi là tiếng không phải là từ,
không mang đúng ngữ nghĩa trong văn cảnh. Ví dụ trong câu:
“Thị trường Việt Nam thật ảm đảm trong thời kỳ khủng hoảng”.
Tiếng “trường” trong trường hợp này không thể được hiểu theo nghĩa “trường học” vì nó
nằm ừong từ “thị trường” . Vì vậy annotation Lookup ở tiếng “trường” sẽ bị xóa bỏ để tránh
nhập nhằng trong quá trình nhận dạng tiếp theo. Ngoài ra trong phần tiền xử lý, chúng tôi
cũng đồng thời tạo ra những annotation mới - NamePhrase - gộp những từ, cụm từ viết hoa
ở cạnh nhau để thuận tiện cho việc nhận dạng.
Trong các bước tiếp theo, các cặp Facility và Organization, Location và Nationality mang
nhiều sự nhập nhằng được xử lý. Quá trình này chưa sử dụng các yếu tố ngừ cành vì thế vẫn
còn nhiều lỗi trong quá trình nhận dang.
Tên người ỉà một trong những loại thực thể khó được nhận dạng nhất, bời bất kỳ từ nào
cũng có thể được dùng như một tên người. Dưới đây là một luật đơn giản được sử dụng để
nhận dạng tên người:
Rule: PersonAfterTitle
(
{Lookup .majorTupe == “titIeperson”}({NamePhrase}):name
4Ệ? GATE document_00018 I
■ A nn ota tio n S ets I
Bà H v ử a húi tíu tnuấc vử» kỉ: T)đl trtỉng H I Nhà ehẳno còn
*1, lao đíno quần quật c i nim mà vỉn khíng 90 in. KMng biết đđl nó bao
g li mỂrt có yợ "Ấy mế m ì niềm vul bít ng đđỉ đến VỚI m u anh gặp
cỏ giáo miền ÍUỎI mớl lên bén.
r S M H B B i
n n n a n s
► O r ig in a l m a r io i p t
Hình 5.2 - Một ví dụ cho quá trình nhận dạng thông minh
6. T hự c nghiệm
6.1 Các bước tiến hành thực nghiệm
• Bước 1: Sử dụng hệ thống nhận dạng thực thể trong văn bản tiếng Việt do chúng tôi
xây dựng để tự động nhận dạng và gán nhãn cho các thực thể.
• Bước 2: So sánh tập dữ liệu được gán nhãn tự động và tập dữ liệu chuẩn được gán
nhãn bằng tay, qua đó đưa ra các thông số đánh giá chất lượng cùa hệ thống
(Precision, Recall, F-measure). Trong đó:
o Precision = (NI / N2) X 100%
o Recall = (NI /N 3 )x 100%
o F-measure = 2 X (Precision X R eca ll) / (Precision + Recall) X 100%
Ký hiệu:
o N 1: Số thực thể được nhận dạng chính xác.
14
o N2: Tổng số thực thể được nhận ra.
o N 3: Số thực thể thực tế
6.2. Kết quả thực nghiệm
Chúng tôi đánh giá kết quả thực nghiệm qua hai tiêu chí:
• Tiêu chí chặt (strict): một thực thể được nhận dạng đúng khi trùng khớp hoàn toàn (về
vị trí), và cùng kiểu với thực thể trong tập dừ liệu chuẩn.
• Tiêu chí lỏng (lenient): một thực thể được nhận dạng đúng khi nó có phần chung và
Nationality
87
84 72 85.71 % 82.75 % 84.21 %
Facility
78
76 69 90.78 %
88.46 % 89.61 %
Religion
18
18 18 100.00%
100.00% 100.00%
All
1103 988
940 95.14 % 85.22 % 89.90 %
15
Bảng 6.2 - Bảng kết quả nhận dạng trên lập kiểm tra
SỐ
thực thể
Sô thực
thể được
nhận
dạng
Sô thực
thể được
nhận
đúng
Precision Recall F-measure
Person
370 285 263 92.28 % 71.08 % 80.30 %
Organization
như: thực thể chi các tổ chức tôn giáo <Religion> (F-measure: 97.43%), thực thế chi địa
điểm (F-measure: 88.97% ) v .v thì loại thực thể chỉ tổ chức <Organization> lại thu được
kết quả khá khiêm tốn F-measure: 61.72%. Sở đĩ có điều này là vì tên các tổ chức của Việt
Nam đôi khi khá dài, khó nhận diện, đặc biệt khi chủng không được viết hoa. Ví dụ câu sau:
"Công ty Hợp tác lao động nước ngoài - L O D , thuộc Bộ GTVT. "
Câu trên gồm 3 thực thể chỉ tổ chức: “Công ty Hợp tác lao động nước ngoài”, “LOD” và “Bộ
GTVT”. Tuy nhiên hệ thống chi nhận được thực thể “Công ty Hợp tác” (nhận sai) và “Bộ
GTVT” (nhận đúng). Tuy nhận sai nhưng việc nhận ra một phần cùa thực thể “Công ty Hợp
tác lao động nước ngoài” cũng có ý nghĩa, bởi thật khó để nhận được thực thể này. Chúng tôi
thử đánh giá lại chất lượng của hệ thống theo tiêu chí “lỏng” hơn (lenient evaluation). Ket
quả thu được như sau:
16
Bảng 6.3 - Két quả nhận dạng trên tập kiểm tra với tiêu chí “lỏng” ( lenient valuation)
Số thực
thể
Sô thực
thể được
nhận
dạng
Sô thực
thể được
nhận
đúng
Precision Recall
F-measure
Person
370 285 266
93.33 % 7 1.89% 81.22%
Organization
48 33
Precision Recall
F-measure
Hệ thống nhận dạng thực thể sử dụng
CRF [11]
81.85% 79.35% 80.53%
Hệ thông VN-KIM IE [4]
81.37% 81.37%
81.37%
Hệ thông NER for Vietnam ese
90.69 %
74.87 %
82.03 %
17
7. K ế t luận
Trong nghiên cửu này, chúng tôi đã xây dựng được một hệ thống nhận dạng thực thể có tên
trong văn bản tiếng Việt đạt kết quả khá khả quan (82%). Ngoài ra chúng tôi cũng đã xây
dựng được một tập dữ liệu đã được gán nhãn chuẩn tiếng Việt và một tài liệu đĩnh nghĩa và
phân loại các loại thực thể có tên. Tất cả hệ thống và những tài liệu liên quan sê được mở
cho cộng đồng sử dụng và phát triển.
I C^I I1M 1NỤ1
Ị rPỤN-V- U iu l IHQN G IIN ỉ H ự VIỆN
ị Ọ Ọ O ỷ O O O O O ± l
18
Tài liệu tham kh ảo ■
1. Bikel, D., Miller, s., Schwartz, R., Weischedel, R.: A High- Performance Learning Narae-
finder. Proceedings of the Fifth Conference on Applied Natural Language Processing, pp
194-201 (1998)
2. Borthwick, A., Sterling, J., Agichtein, E., Grishman, R.: Exploiting Diverse Knowledge
Sources via Maximum Entropy in Named Entity Recognition. Proceedings of the
Sixth Workshop on Very Large Corpora, Montreal, Canada (1998)
of Gram m ars for Named Entity Recognition?. Proceedings of the Conference on
Language Resources and Evaluation (LREC’02) (2002)
14. Pham, T., Kawazoe, A., Dinh, D., Collier, N.: Construction of Vietnamese Corpora for
Named Entity Recognition. Conference RIA02007, Pittsburgh PA, U.S.A. May 30-June
1, 2007 - Copyright C.I.D. Paris, France (2007)
15. Pham, D.D., Tran, G.B., Pham, S.B.: Vietnamese Word Segmentation Using Part of
Speech Tags. Proceedings of the First International Conference on Knowledge and
Systems Engineering, Hanoi, Vietnam (2009)
16. Srihari, R., Niu, c., Li, w.: A Hybrid Approach for Named Entity and Sub-Type
Tagging. Proceedings of the Sixth Conference on Applied Natural Language Processing
(2000)
17. Wu, Y., Fan, T., Lee, Y., Yen, s.: Extracting Named Entities Using Support Vector
Machines. Proceedings of the International Workshop on Knowledge Discovery in Life
Science Literature (2006)
20