Tải bản đầy đủ (.docx) (76 trang)

Phân loại thực thể có tên trên wikipedia để phục vụ cho bài toán xây dựng hệ tri thức

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 (4.27 MB, 76 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

LƯU MẠNH HÀ

PHÂN LOẠI THỰC THỂ CÓ TÊN
TRÊN WIKIPEDIA ĐỂ PHỤC VỤ CHO BÀI TOÁN
XÂY DỰNG HỆ TRI THỨC

ơ

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

HÀ NỘI - 2019
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ


2
2
2

LƯU MẠNH HÀ

PHÂN LOẠI THỰC THỂ CÓ TÊN
TRÊN WIKIPEDIA ĐỂ PHỤC VỤ CHO BÀI TOÁN
XÂY DỰNG HỆ TRI THỨC

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

Cán bộ hướng dẫn: PGS. TS. Phạm Bảo Sơn



HÀ NỘI - 2019


3
3
3
LỜI CẢM ƠN

Trước tiên, tôi xin gửi lời cảm ơn sâu sắc nhất đến thầy giáo: Phó giáo sư
- Tiến sĩ Phạm Bảo Sơn và thầy giáo: Tiến sĩ Nguyễn Bá Đạt, đã tận tình hướng
dẫn tơi trong suốt q trình thực hiện luận văn tốt nghiệp.
Tơi xin bày tỏ lời cảm ơn chân thành tới Trường Đại học Công nghệ ĐHQG Hà Nội và những thầy cô giáo đã giảng dạy, truyền thụ kiến thức cho tôi
trong thời gian qua, cùng với các anh chị em tại Công ty cổ phần NERD, đã hỗ
trợ cho tôi trong suốt thời gian thực hiện luận văn này.
Tôi cũng cảm ơn các lãnh đạo của Tập đồn Cơng nghiệp Viễn thơng
Qn đội Viettel và các đồng nghiệp đã tạo điều kiện để tơi hồn thành việc học
cao học và bảo vệ luận văn thạc sĩ.
Cuối cùng, tôi xin cảm ơn tất cả gia đình, bạn bè đã ln động viên giúp
đỡ tơi trong thời gian nghiên cứu đề tài. Tuy đã có những cố gắng nhất định
nhưng do thời gian và trình độ có hạn nên luận văn cịn nhiều thiếu sót và hạn
chế. Kính mong nhận được sự góp ý của quý thầy cô và các bạn.

3


4
4
4


LỜI CAM ĐOAN

Tôi xin cam đoan các kết quả nghiên cứu, thực nghiệm được trình bày
trong luận văn này do tơi thực hiện dưới sự hướng dẫn của Phó giáo sư - Tiến sĩ
Phạm Bảo Sơn và Tiến sĩ Nguyễn Bá Đạt, và được thực hiện trong quá trình hợp
tác nghiên cứu giữa Đại học Công Nghệ và Công ty cổ phần NERD.
Tất cả những tham khảo từ các nghiên cứu liên quan đều được nêu nguồn
gốc một cách rõ ràng từ danh mục tài liệu tham khảo của luận văn. Trong luận
văn, khơng có việc sao chép tài liệu, cơng trình nghiên cứu của người khác mà
khơng chỉ rõ về tài liệu tham khảo.
Hà Nội, ngày 12/11/2019
Học viên

Lưu Mạnh Hà

4


5
5
5
MỤC LỤC

5


6
6
6


DANH SÁCH BẢNG

6


7
7
7
DANH SÁCH HÌNH VẼ

7


LỜI MỞ ĐẦU
Phân loại thực thể có tên là bài tốn quan trọng trong lĩnh vực trích xuất
thơng tin (Information Extraction), và xây dựng hệ tri thức (Knowledge Base
Construction). Cùng với nhu cầu ngày càng nhiều của các ứng dụng trí tuệ nhân
tạo, đặc biệt là các ứng dụng trợ lý ảo như của Google, Apple, Amazon, nhu cầu
xây dựng các hệ tri thức ngày càng lớn và cấp thiết. Theo đó, tầm quan trọng của
bài tốn phân loại thực thể ngày càng được nâng cao.
Trong luận văn này, học viên giới thiệu một phương pháp hiệu quả để giải
quyết bài tốn phân loại thực thể có tên trên phiên bản Wikipedia tiếng Việt dựa
trên máy véc-tơ hỗ trợ (Support Vector Machine). Đặc biệt, luận văn cũng hoàn
thành xây dựng một cơng cụ để thực thi bài tốn này với độ chính xác cao trên
94%. Bên cạnh đó, luận văn cũng đóng góp cho cộng đồng nghiên cứu một tập
dữ liệu lớn gồm 10,000 thực thể được gán nhãn thủ công và một công cụ để thực
hiện tiền xử lý dữ liệu, có thể được tái sử dụng để phục vụ cho các bài tốn có
nội dung liên quan.
Học viên tin tưởng rằng những đóng góp của luận văn sẽ đẩy nhanh quá
trình xây dựng hệ tri thức tiếng Việt giàu có về thơng tin. Qua đó, học viên sẽ

trực tiếp hoặc gián tiếp đóng góp vào các nghiên cứu trong lĩnh vực xử lý ngôn
ngữ tự nhiên (Natural Language Processing) và trí tuệ nhân tạo (Artificial
Intelligence) như hỏi đáp tự động (Question Answering), tổng hợp và trích xuất
thơng tin (Information Extraction).

8


Chương 1
Giới thiệu

1.1. Phạm vi bài toán và mục tiêu nghiên cứu
Hiện nay, với nhu cầu ngày càng nhiều của các ứng dụng trí tuệ nhân tạo, đặc
biệt là các ứng dụng trợ lý ảo như Google Assistant (Google), Alexa (Amazon),
Siri (Apple), v.v. thì nhu cầu xây dựng hệ tri thức để phục vụ cho các ứng dụng
này ngày càng cấp bức và thiết yếu. Trong việc xây dựng hệ tri thức thì việc xây
dựng một cơ sở dữ liệu các thực thể có tên và phân loại các thực thể có tên này
là bước quan trọng nhất. Bài tốn phân loại thực thể có tên để phục vụ cho xây
dựng hệ tri thức là bài tốn sử dụng thơng tin từ một nguồn dữ liệu để trích lọc
ra các thực thể có tên, từ đó phân loại các thực thể có tên thành các kiểu thực thể
như người (Person), tổ chức (Organization), Địa điểm (Place), Sự kiện
(Event), v.v. hoặc các kiểu chi tiết hơn như kiểu FIGER [9]., NERD, v.v. để
phục vụ cho việc xây dựng các hệ tri thức.
Đây là bài tốn quan trọng trong lĩnh vực trích xuất thông tin (Information
Extraction), và xây dựng hệ tri thức (Knowledge Base Construction), phân loại
thực thể có tên trên miền Wikipedia thu hút được sự quan tâm lớn của giới học
thuật trên thế giới [14]., [16]., [19].. Tại Việt Nam, trong bối cảnh nhiều công ty
công nghệ như FPT1, NERD2, v.v. và các tổ chức phi lợi nhuận như Đề án hệ tri
thức Việt số hóa3 đã và đang nỗ lực xây dựng một hệ tri thức lớn cho thị trường
Việt, việc xây dựng và nghiên cứu một công cụ phân loại thực thể có tên cho

tiếng Việt là cần thiết.
Một số nghiên cứu liên quan có thể kể đến như cơng cụ dự đốn kiểu của thực
thể trong hệ tri thức Dbpedia của tác giả Nguyễn Thị Như và cộng sự [12].,
[13].. Đây có thể coi là bước khởi đầu cho bài toán này đối với tiếng Việt. Tuy
nhiên, kết quả thu được chưa thực sự tốt do dữ liệu Dbpedia phiên bản tiếng Việt
còn rất khiêm tốn. Hơn nữa, do các cơng cụ trích xuất thơng tin của hệ tri thức
Dbpdia không được tối ưu cho tiếng Việt, vì thế một số lượng lớn nhiễu vẫn cịn
tồn tại trong đó.

1 />2 />3 />
9


Trong khuôn khổ của luận văn này, học viên nghiên cứu và xây dựng một cơng
cụ dự đốn kiểu của thực thể có tên sử dụng dữ liệu lấy từ các trang Wikipedia
tiếng Việt4. Nhờ đó, cơng cụ này có khả năng tận dụng nhiều kiểu đặc trưng hữu
ích khác nhau từ một trang Wikipedia như:
• kiểu đặc trưng có cấu trúc, ví dụ: hộp thơng tin (infobox properties), tiêu
đề (heading);
• kiểu đặc trưng phi cấu trúc, ví dụ: từ khóa bao gồm thể loại (categories)
và các cụm danh từ quan trọng thường xuất hiện ở đầu trang, v.v.
Theo sự hiểu biết và tìm kiếm thơng tin của học viên, hiện nay chưa có nghiên
cứu nào tương tự cho tiếng Việt.
Để đạt được mục tiêu trên, luận văn sẽ tập trung triển khai các nội dung nghiên
cứu chính như sau:
• Tải dữ liệu từ Wikipedia tiếng Việt và tiền xử lý, lọc bỏ nhiễu (html,
redirect pages, template pages, v.v.).
• Lựa chọn ngẫu nhiên 10,000 bài viết và gán nhãn thủ công cho 10,000 bài
viết này. Đồng thời luận văn cũng đã xây dựng được một bộ luật từ thông
tin Infobox template được thực hiện thủ cơng.

• Xây dựng một cơng cụ để trích chọn các đặc trưng từ các trang Wikipedia
này để phục vụ cho bài tốn chính. Trong đó, luận văn có tái sử dụng lại
cơng cụ VNCoreNLP, là một công cụ rất phổ biến trong việc phân tách từ
và gán nhãn từ loại tiếng Việt.
• Tiếp theo, luận văn xây dựng một mơ hình học máy, lựa chọn phương
pháp Máy véc tơ hỗ trợ (SVM) để phân loại các thực thể sau khi đã thử
nghiệm với một vài phương pháp khác dựa trên một tập dữ liệu nhỏ.
Trong phần này học viên sử dụng thư viện Sklearn để thực thi các bài tốn
học máy cụ thể. Mơ hình này nhận dữ liệu đầu vào là thực thể có tên và
các đặc trưng được trích chọn từ một trang Wikipedia tiếng Việt đã được
tiền xử như trên, ví dụ: Đại học Quốc Gia Hà Nội, và cho ra kết quả
là một kiểu của thực thể trong danh sách các kiểu đã được định nghĩa
trước, ví dụ: tổ chức (Organization).
• Cuối cùng, luận văn đánh giá kết quả của phương pháp này và so sánh với
phương pháp sơ sở (baseline) để chứng minh cho độ ưu việt của giải
pháp.
• Đồng thời, học viên cũng đưa ra các đề xuất để phát triển tiếp công cụ này
trong tương lai.
4 Luận văn được thực hiện trong quá trình hợp tác nghiên cứu giữa Đại học Công Nghệ và Công ty cổ phần
NERD.

10


Lý do luận văn lựa chọn Wikipedia do đây là một nền tảng tri thức đa ngơn ngữ,
có cộng đồng phát triển đông đảo ở hầu hết các quốc gia trên thế giới. Đây chính
là nguồn dữ liệu cơ bản giúp xây dựng các hệ tri thức lớn trên thế giới như
Dbpedia [2]., Wikidata [20]., Yago [18]., v.v. Hiện nay, phiên bản Wikipedia có
hơn 52 triệu bài viết trên 309 ngơn ngữ, riêng tiếng Việt 5 có khoảng 1.24 triệu
bài viết với hơn 1.7 triệu thực thể bao gồm các khái niệm như Cầu thủ bóng

đá, Trường đại học, v.v., và các thực thể có tên như Đồn Văn Hậu, Đại
học Quốc gia Hà Nội, v.v. Hình 1.1 thể hiện một phần trang Đại học
Quốc Gia Hà Nội trên miền Wikipedia tiếng Việt.

Hình 1.1: Trang Wikipedia tiếng Việt về Đại học Quốc Gia Hà Nội

1.2. Đóng góp của luận văn
Luận văn này đã đóng góp cho cộng đồng nghiên cứu:
• một cơng cụ có khả năng phân loại thực thể có tên trên miền Wikipedia
tiếng Việt đạt độ chính xác ,
• một bộ dữ liệu với 10,000 thực thể được gán nhãn thủ cơng.
• một cơng cụ tiền xử lý dữ liệu có thể tái sử dụng cho các bài toán và
nghiên cứu liên quan.
Học viên tin tưởng rằng những đóng góp trên sẽ đẩy nhanh q trình xây dựng
hệ tri thức tiếng Việt giàu có về thơng tin. Qua đó, luận văn sẽ trực tiếp hoặc
gián tiếp đóng góp vào các nghiên cứu trong lĩnh vực xử lý ngôn ngữ tự nhiên
(Natural Language Processing) và trí tuệ nhân tạo (Artificial Intelligence) như
hỏi đáp tự động (Question Answering), tổng hợp và trích xuất thơng tin
(Information Extraction), v.v.

5

11


1.3. Cấu trúc của luận văn
Các phần còn lại của luận văn được tổ chức như sau: các khái niệm cơ bản và
quan trọng của bài toán xây dựng hệ tri thức và phân loại thực thể được trình
bày trong chương 2 như khái niệm hệ tri thức, thực thể, thực thể có tên, kiểu
thực thể và các hệ thống kiểu thực thể phổ biến. Luận văn cũng sẽ phân tích

những điểm khác biệt giữa bài tốn này với bài tốn nhận dạng thực thể có tên
(Named Entity Recognization – NER) để làm rõ tính cần thiết của bài tốn này.
Trong chương 3, luận văn sẽ giới thiệu cụ thể về các công cụ và phương pháp
được sử dụng trong bài toán. Luận văn sẽ giới thiệu tổng quan về các phương
pháp học máy, và phân tích chi tiết hơn về phương pháp máy véc tơ hỗ trợ
(Support vector machine – SVM) là phương pháp học máy chính được học viên
sử dụng trong luận văn. Đồng thời luận văn cũng giải thích chi tiết về thư viện
Sklearn được sử dụng để thực thi mơ hình học máy trong luận văn và một số
công cụ của thư viện được sử dụng để phân chia dữ liệu thành tập huấn luyện và
tập kiểm tra để kiểm định chéo (Stratified K-folds cross validation), trích chọn
đặc trưng (Feature extraction), lựa chọn đặc trưng (Feature selection). Luận văn
cũng giới thiệu sơ lược về VNCoreNLP, một công cụ rất phổ biến và hiệu quả để
phân tách từ và gán nhãn từ loại, được sử dụng trong khâu tiền xử lý dữ liệu và
trích chọn đặc trưng. Luận văn cũng mô tả các đặc trưng sẽ sử dụng, cũng như
cách biểu diễn các đặc trưng này trong bài tốn.
Tiếp theo, mơ hình thực nghiệm và kết quả của thực nghiệm sẽ được trình bày
ở chương 4. Trong chương này, luận văn sẽ mô tả sơ bộ về tập dữ liệu được sử
dụng, các bước thực hiện thực nghiệm. Đồng thời luận văn cũng trình bày về mơ
hình được sử dụng trong thực nghiệm và các cài đặt trong mơ hình (chiến lược
phân loại, phương pháp phân chia dữ liệu, lựa chọn đặc trưng, v.v.). Luận văn
cũng nêu ra phương pháp đánh giá hiệu quả của mơ hình và so sánh với phương
pháp cơ sở để chứng minh tính ưu việt của phương pháp.
Cuối cùng, tồn bộ các cơng việc đã thực hiện được tổng kết và trình bày trong
phần kết luận. Đồng thời, trong phần này cũng trình bày hướng nghiên cứu, mở
rộng tiếp theo của luận văn trong tương lai.

12


Chương 2

HỆ THỐNG KIỂU CỦA THỰC THỂ CÓ TÊN

2.1. Khái niệm
2.1.1. Hệ tri thức
Hệ tri thức là một nhánh của ngành trí tuệ nhân tạo. Nó chứa đựng tri thức về
giải quyết vấn đề của con người trong một lĩnh vực hẹp được định trước và có
khả năng mở rộng kho tri thức này thông qua công cụ suy luận và hệ thống truy
vấn của nó [25].. Một hệ tri thức (knowledge-based system) là một chương trình
máy tính sử dụng một cơ sở tri thức (knowledge base) với một công cụ suy luận
(inference engine) để giải quyết các vấn đề thường địi hỏi tư duy đặc biệt của
con người. Hình 2.2 mô tả kiến trúc chung của một hệ tri thức

Hình 2.2 Kiến trúc của hệ tri thức6
Cơng cụ giao diện hoạt động như cơng cụ tìm kiếm và cơ sở tri thức đóng vai trị
là kho lưu trữ kiến thức. Học máy là một thành phần thiết yếu của các hệ tri thức
và mơ hình học giúp cải thiện hệ thống. Các hệ tri thức có thể được phân loại
thành các hệ dựa trên CASE, hệ dạy học thông minh (Intelligent tutoring
systems), hệ chuyên gia (Expert systems), hệ thao tác siêu văn bản
6 />
13


(Hypertext manipulation systems ) và cơ sở dữ liệu với giao diện người
dùng thông minh7.
So với các hệ thống thông tin dựa trên máy tính truyền thống, các hệ tri thức có
nhiều ưu việt hơn. Chúng có thể cung cấp tài liệu hiệu quả và cũng xử lý một
lượng lớn dữ liệu phi cấu trúc theo cách thông minh. Các hệ tri thức có thể hỗ
trợ trong việc ra quyết định chuyên sâu và cho phép người dùng làm việc ở mức
độ chuyên môn cao hơn và thúc đẩy năng suất và tính nhất quán. Các hệ thống
này rất hữu ích khi khơng có chun mơn hoặc khi dữ liệu cần được lưu trữ để

sử dụng trong tương lai hoặc cần được nhóm với chun mơn khác nhau ở một
nền tảng chung, do đó cung cấp tích hợp kiến thức quy mô lớn. Cuối cùng, các
hệ thống dựa trên tri thức có khả năng tạo ra kiến thức mới bằng cách tham khảo
nội dung được lưu trữ.

Hình 2.3 Biểu diễn dữ liệu trong hệ tri thức dưới dạng knowledge graph8
Hình 2.3 thể hiện biểu diễn của dữ liệu trong hệ tri thức dưới dạng Knowledge
graph, trong đó các nút là các thực thể có tên, được phân loại (quan hệ “is a”) và
có các mối quan hệ với nhau (như “is located in”, “painted”, v.v.).
Ngày nay, các ứng dụng với hệ tri thức ngày càng nhiều, đặc biệt là với các ứng
dụng trợ lý ảo, không thể hoạt động nếu thiếu các hệ tri thức. Việc xây dựng hệ
tri thức thu hút được rất nhiều mối quan tâm của cộng đồng nghiên cứu và các
doanh nghiệp công nghệ lớn. Các hệ tri thức lớn và phổ biến hiện nay gồm
7 />
8 g/2019/10/08/introduction-question-answering-knowledge-graphs-kgqa
14


Dbpedia [2]., Wikidata [20]., Yago [18]., v.v.Tuy nhiên, các hệ tri thức tiếng Việt
vẫn cịn ít và cịn tương đối hạn chế.
2.1.2. Thực thể
Thực thể (entity) là một đối tượng (ví dụ: Đồn Văn Hậu, Đại học Quốc
gia Hà Nội, v.v.), hoặc một lớp đối tượng (ví dụ: Cầu thủ bóng đá,
Trường đại học, v.v.) trong thế giới tự nhiên [18]., [19].. Mỗi thực thể mang
một ý nghĩa rõ ràng, khơng cịn sự mập mờ của ngơn ngữ. Hình 2.4 thể hiện ba ý
nghĩa khác nhau của từ “đá” trong ngơn ngữ tự nhiên:
• Nước đá: là tên gọi khác của nước đóng băng;
• Đá (võ thuật): là cách sử dụng chân trong võ thuật, thể thao và thi đấu;
• Chia tay (tình cảm): là hành động rời bỏ, cắt đứt quan hệ về mặt tình
cảm.


Hình 2.4: Các ý nghĩa khác nhau của từ “đá”
Nhờ loại bỏ sự nhập nhằng của ngơn ngữ tự nhiên, thực thể giúp máy móc có
khả năng phân tích và hiểu ngơn ngữ như người. Thực thể là đơn vị nhỏ nhất và
là đơn vị cơ bản cấu thành hệ tri thức.
2.1.3. Thực thể có tên
Tuy mỗi thực thể mang một và chỉ một ý nghĩa, vẫn có những thực thể ám chỉ
khơng chỉ một mà là một nhóm đối tượng. Ví dụ, Trường đại học là một tập
hợp bao gồm Đại học Quốc gia Hà Nội, Đại học Bách Khoa Hà Nội,
Đại học Ngoại Thương, v.v. Thực thể có tên (named entity) là một thực thể
được biểu diễn dưới dạng tên riêng và chỉ duy nhất một đối tượng [5]., [6].,
[18].. Trong các ví dụ ở Bảng 2.1 là ví dụ phân biệt giữa thực thể có tên và
nhóm thực thể, cụ thể:
15


• Đoàn Văn Hậu, Đại học Quốc gia Hà Nội, Hà Nội là thực thể có
tên;
• Cầu thủ bóng đá, Trường đại học khơng phải là thực thể có tên.
Một số nghiên cứu trên thế giới, như [18]., [19]., sử dụng thuật ngữ thực thể
(entity) để chỉ thực thể có tên, và lớp thực thể (class) để chỉ những thực thể
khác.
2.1.4. Kiểu của thực thể
Kiểu của thực thể có tên (named entity type) là loại của một thực thể như người
(Person), tổ chức (Organization), địa điểm (Place), v.v. [5]., [6]., [21]..
Bảng 2.1 mơ tả một vài ví dụ về các loại thực thể khác nhau. Theo đó, các thực
thể có tên như Donal Trump, Đại học Quốc gia Hà Nội là các thực thể có
tên và kiểu tương ứng của chúng. Trong khi đó, Trường đại học, Thành phố
khơng phải một thực thể duy nhất mà chỉ một lớp đối tượng, và vì thế khơng có
kiểu tương ứng.

Bảng 2.1: Một vài ví dụ về thực thể có tên
Thực thể

Là thực thể có tên

Kiểu

Đồn Văn Hậu



Person

Donal Trump



Person

Đại học Quốc gia
Hà Nội
Tập đồn
Viettel



Organization




Organization

Hà Nội



Place

Vientiane



Place

Tây du ký



Sea Game



Event

Tơn Ngộ Khơng



Character


Cầu thủ bóng đá



-

Trường đại học



-

Thành phố



-

Creative Work

2.2. Các hệ thống kiểu thực thể
Khái niệm về kiểu của thực thể và số lượng kiểu phụ thuộc vào từng bài toán,
từng lĩnh vực khác nhau. Trong khi những nghiên cứu chung [3]., [5]. chỉ quan
16


tâm đến một vài loại thực thể (số lượng thường không quá 10 loại), một số
nghiên cứu đặc thù cần quan tâm sâu hơn tới kiểu của thực thể, ví dụ:
• hệ tri thức[10]., [18]. cần biết một thực thể chỉ người là một người thật
(Person) hay một nhân vật hư cấu (Character);

• ứng dụng bản đồ9 cần biết một thực thể chỉ địa điểm là một tòa nhà
(Building) hay một ngọn núi (Mountain), v.v.
Trong bài toán xây dựng hệ tri thức, ngồi các kiểu chung, thì cần có các hệ
thống kiểu chi tiết, trong đó các kiểu như Person, Organization, v.v. được
chia nhỏ thành các kiểu chi tiết. Sau đây, luận văn sẽ giới thiệu một số hệ thống
kiểu chi tiết phổ biến.
2.2.1. Các hệ thống kiểu chi tiết cho Tiếng Anh
Các hệ thống kiểu chi tiết (fine-grained type system) được sử dụng rộng rãi
trong các hệ tri thức như Dbpedia [2]., Wikidata [20]., Yago [18]., v.v. Gần đây,
nhiều cơng cụ nhận dạng thực thể có tên mới cho tiếng Anh cũng áp dụng các hệ
thống kiểu chi tiết này [4]., [9]., [17].. Bảng 2.2 chứa hơn 100 kiểu của thực thể
được sử dụng trong hệ thống nhận dạng tên riêng FIGER [9]., ví dụ: kiểu
Person chứa các kiểu:
• Actor: chỉ diễn viên;
• Athlete: chỉ vận động viên;
• Musician: chỉ nhạc sĩ, v.v.
Hình 2.5 mơ tả phân cấp của hệ thống kiểu trong hệ tri thức Dbpedia. Theo đó,
kiểu Person được chia nhỏ thành các cấp thấp chi tiết hơn như Artist,
Engineer, Athlete, Farmer, Scientist. Tiếp tục, các kiểu này lại được chia
nhỏ hơn nữa, ví dụ Artist được chia thành Dancer, Actor và Comedian.

9 />
17


Hình 2.5 Kiến trúc của hệ thống kiểu trong hệ tri thức Dbpedia
Bảng 2.2: Các kiểu được sử dụng trong hệ thống FIGER [9].

18



2.2.2. Hệ thống kiểu thực thể NERD-TS
Hệ thống kiểu NERD-TS (NERD Type System) là một trong hệ thống kiểu thực
thể, được phát triển bởi Công ty cổ phần NERD10. Cụ thể, NERD-TS được thiết
kế cho bài toán xây dựng hệ tri thức tiếng Việt và các bài toán khai phá dữ liệu
(Text Mining) trên nền tảng hệ tri thức. Hệ thống kiểu NERD-TS được phát triển
dựa trên hệ thống kiểu của Wikipedia11, chứa sáu kiểu phổ biến nhất, mỗi kiểu
có ít nhất 5,000 bản ghi trên phiên bản Wikipedia tiếng Việt được thống kê vào
ngày 10/01/2019. Đồng thời, hệ thống kiểu NERD-TS cũng được chia nhỏ thành
khoảng 100 kiểu chi tiết, bao gồm:
• Person: thực thể chỉ người trong thế giới thực như
o danh nhân văn hóa: Nguyễn Trãi, Nguyễn Du, Hồ Chí Minh,
v.v.;
o chính trị gia: Nguyễn Phú Trọng, Nguyễn Xn Phúc, v.v.;
o cầu thủ bóng đá: Đồn Văn Hậu, Nguyễn Quang Hải (sinh
1997), v.v.;
o và nhiều thực thể khác: Chi Pu, Nguyễn Lê Việt Anh, v.v.
• Organization: thực thể chỉ tổ chức như
o trường đại học: Đại học Quốc gia Hà Nội, Đại học Bách
Khoa, v.v.;
o công ty: Cơng ty FPT, Tập đồn Viettel, v.v.;
o và nhiều thực thể khác: Đội tuyển bóng đá quốc gia Việt
Nam, Quân đội nhân dân Việt Nam, v.v.
• Place: thực thể chỉ địa điểm như
o địa điểm tự nhiên: Hang Sơn Đoòng, Hồ Tây, v.v.;
o địa điểm nhân tạo: Sân bay quốc tế Nội Bài, Cung thể
thao Quần Ngựa, v.v.;
o và nhiều thực thể khác: Việt Nam, Hà Nội, v.v.
• Event: thực thể chỉ sự kiện như
o chiến tranh: Chiến tranh Việt Nam, Chiến tranh Iraq, v.v.;

o sự kiện thể thao: Giải vơ địch bóng đá thế giới 2018, Thế
vận hội 2020, v.v.;
o và nhiều thực thể khác: Hoa hậu thế giới 2019, Hội nghị
thượng đỉnh Triều Tiên – Hoa Kỳ 2019, v.v.
• Creative Work: thực thể chỉ sản phẩm nghệ thuật như
10 />11 />
19


o sách: Dế Mèn phiêu lưu ký, Chúa tể những chiếc nhẫn,
v.v.;
o phim: Về nhà đi con, Chúa tể những chiếc nhẫn: Hiệp
hội nhẫn thần, v.v.;
o chương trình máy tính: Cốc Cốc (bộ máy tìm kiếm), Zalo,
v.v.;
o tranh vẽ: Thiếu nữ bên hoa huệ, Tan ca mời chị em ra
họp thi thợ giỏi, v.v.
• Character: thực thể chỉ nhân vật hư cấu trong phim hoặc trong tiểu
thuyết như Tôn Ngộ Không, John Snow, v.v.

2.2.3. Điểm khác biệt giữa NERD-TS với hệ thống kiểu trong bài tốn NER
truyền thống
Thực thể có tên và phân loại kiểu của thực thể có tên là những khái niệm gắn
liền với bài toán nhận dạng thực thể (Named Entity Recognition). Trong lĩnh
vực xử lý ngôn ngữ tự nhiên (Natural Language Processing), bài tồn này thuộc
nhóm các bài toán gán nhãn chuỗi (Sequence Labeling), nhằm xác định và phân
loại thực thể có tên từ một đoạn văn bản [3]., [21].. Ví dụ 2.1 thể hiện kết quả
của một công cụ nhận dạng thực thể trên câu “Thủ tướng Nguyễn Xuân Phúc
thăm Đại học Quốc Gia Hà Nội”. Trong đó, “Nguyễn Xuân Phúc” được nhận ra
là một thực thể chỉ người (Person), và “Đại học Quốc Gia Hà Nội” là một thực

thể chỉ tổ chức (Organization).

Ví dụ 2.1 Nhận dạng thực thể có tên tiếng Việt
Nhận dạng thực thể lần đầu được giới thiệu ở hội thảo MUC-6 [5]., [6].. Kể từ
đó đến nay, bài tốn này luôn giành được sự quan tâm lớn từ cộng đồng xử lý
ngơn ngữ tự nhiên trên tồn thế giới, cũng như tại Việt Nam 12. Thông thường
một công cụ nhận dạng thực thể chỉ quan tâm đến một vài kiểu thực thể như
người (Person), tổ chức (Organization), địa điểm (Place).

12 />
20


Hình 2.6 thể hiện kết quả của cơng cụ nhận dạng thực thể phổ biến nhất cho
tiếng Anh Stanford-NER13 [3].. Theo đó, nếu cho một đoạn văn bản đầu vào,
cơng cụ này sẽ nhận biết được các thực thể có tên, đồng thời phân loại các thực
thể có tên này một vài loại phổ biến. Trong ví dụ này, câu “Prime Minister
Nguyen Xuan Phuc visits Vietnam National University Hanoi” được
phân tích. Kết quả là hai thực thể “Nguyen Xuan Phuc” và “Vietnam
National University Hanoi” được ghi nhận và phân loại tương ứng là
Person và Organization.

Hình 2.6: Cơng cụ nhận dạng thực thể của Đại học Stanford
Khác với các hệ thống kiểu thực thể truyền thống được sử dụng trong bài toán
nhận dạng thực thể, hệ thống kiểu NERD-TS được thiết kế hướng tới bài toán
xây dựng hệ tri thức [26]., [27]., vì vậy có xu hướng chia nhỏ kiểu của thực thể
hơn, để giúp cho các thông tin trong hệ tri thức cụ thể hơn, giúp xử lý tốt hơn
cho các bài tốn truy vấn thơng tin. Cụ thể, NERD-TS phân biệt giữa thực thể
chỉ người (Person) và thực thể chỉ nhân vật hư cấu (Character). Hơn nữa, hệ
thống kiểu NERD-TS còn được chia nhỏ thành hơn 100 kiểu chi tiết, giúp cho

dữ liệu về kiểu được sử dụng hiệu quả hơn.
Trong ngữ cảnh của bài toán nhận dạng thực thể, việc phân biệt giữa kiểu
Person và Character là bất khả thi trong rất nhiều trường hợp. Ví dụ, cơng
cụ nhận dạng thực thể (NER) không thể nhận biết “Tôn Ngộ Không” trong
câu “Tôn Ngộ Không bái Đường Tăng là sư phụ.” là một người thật hay
một nhân vật hư cấu. Tuy nhiên phân loại thực thể trên miền Wikipedia, với
13 :8080/ner/

21


thông tin về hộp thông tin (infobox) và các thông tin mơ tả chi tiết về thực thể
hồn tồn có khả năng làm được điều này. Hình 2.7 cho thấy từ thơng tin trang
Wikipedia về Tơn Ngộ Khơng, có rất nhiều thơng tin có thể sử dụng để phân biệt
được đây là một nhân vật hư cấu, như “nhân vật chính”, “tiểu thuyết”, “thánh
nhân”, “văn học”,v.v.

Hình 2.7: Trang Wikipedia tiếng Việt về Tôn Ngộ Không
Việc phân biệt chi tiết kiểu của thực thể, ví dụ giữa Person và Character,
giúp quá trình trích xuất thơng tin lấy được những thơng tin phù hợp, qua đó
giúp tạo hệ tri thức chứa thơng tin có ý nghĩa. Ví dụ: một nhân vật hư cấu
(Character) cần có thơng tin về tác phẩm văn học (hoặc bộ phim) liên quan,
và thông tin về người sáng tạo ra nhân vật đó.
Trong khn khổ của luận văn, tôi chỉ sử dụng hệ thống kiểu NERD-TS với sáu
kiểu thực thể phổ biến nhất (Person, Organization, Place, Event,
Creative Work, Other) để phân loại các thực thể trên miền Wikipedia tiếng
Việt bởi
• nguồn dữ liệu Wikipedia tiếng Việt cịn rất khiêm tốn so với phiên bản
tiếng Anh
• cơng việc gán nhãn tập dữ liệu bằng tay với số lượng lớn các kiểu của

thực thể địi hỏi thời gian dài, khơng phù hợp với khuôn khổ của luận văn.
Tuy nhiên, phương pháp làm của luận văn hồn tồn có thể mở rộng trong tương
lai, với hệ thống kiểu chi tiết hơn. Phương pháp luận cũng tương tự với từng
kiểu phổ biến, sau đó thực hiện phân loại tiếp các thực thể trong cùng một kiểu
phổ biến này thành các kiểu chi tiết hơn.

22


Chương 3
PHÂN LOẠI THỰC THỂ CÓ TÊN TRÊN WIKIPEDIA TIẾNG VIỆT
Bài tốn phân loại thực thể có tên trên Wikipedia tiếng Việt để phục vụ cho xây
dựng hệ tri thức là một bài toán lớn, phức tạp, phải thực hiện nhiều cơng đoạn.
Các bước thực hiện địi hỏi nhiều cơng sức và thời gian từ chuẩn bị dữ liệu và
gán nhãn thủ cơng, tiền xử lý dữ liệu, trích chọn đặc trưng, xây dựng mơ hình
học máy và thực hiện dự báo, đánh giá. Trong khuôn khổ của luận văn, học viên
đã sử nhiều công cụ và phương pháp học máy cũng như các thư viện sẵn có để
thực hiện được bài tốn đề ra, như:
• Tải dữ liệu từ Wikipedia tiếng Việt và tiền xử lý, lọc bỏ nhiễu (html,
redirect pages, template pages, v.v.) bằng cơng cụ Wikiextrator.
• Trích chọn các đặc trưng từ các trang Wikipedia bằng công cụ xử lý ngôn
ngữ tự nhiên VNCoreNLP để tách từ và gán nhãn từ loại.
• Sử dụng phương pháp máy véc tơ hỗ trợ (SVM) để xây dựng mơ hình học
máy. Việc thực thi mơ hình học máy này được thực hiện trên thư viện
Sklearn.
Trong khuôn khổ nội dung của chương này, học viên sẽ giới thiệu về các công
các công cụ và phương pháp được sử dụng trong luận văn. Luận văn sẽ giới
thiệu tổng quan về các phương pháp học máy, và phân tích chi tiết hơn về
phương pháp máy véc tơ hỗ trợ (Support vector machine – SVM), thư viện
Sklearn. Đồng thời luận văn cũng mô tả các đặc trưng sẽ sử dụng, cũng như

cách biểu diễn các đặc trưng này trong bài tốn và các cơng cụ sử dụng trong
tiền xử lý dữ liệu như VNCoreNLP.

3.1. Học máy
3.1.1. Tổng quan về học máy
Học máy (Machine Learning) là một tập con của trí tuệ nhân tạo (Artificial
Intelligence)14. Nói một cách đơn giản, học máy là một lĩnh vực của Khoa học
máy tính (Computer Science), nó có khả năng tự học hỏi dựa trên dữ liệu đưa
vào mà khơng cần phải được lập trình cụ thể. Những năm gần đây, khi mà khả
năng tính tốn của các máy tính được nâng lên một tầm cao mới và lượng dữ
liệu khổng lồ được thu thập bởi các hãng công nghệ lớn, Học máy đã tiến thêm
một bước dài và một lĩnh vực mới được ra đời gọi là học sâu (Deep Learning).
Hình 3.8 thể hiện mối quan hệ giữa trí tuệ nhân tạo, học máy, và học sâu.
14 />
23


Hình 3.8: Mối quan hệ giữa AI, Machine Learning và Deep Learning15
Học sâu đã giúp máy tính thực thi những việc tưởng chừng như không thể vào
mười năm trước: phân loại cả ngàn vật thể khác nhau trong các bức ảnh, tự tạo
chú thích cho ảnh, bắt chước giọng nói và chữ viết của con người, giao tiếp với
con người, hay thậm chí cả sáng tác văn hay âm nhạc.
3.1.2. Phân nhóm các thuật tốn học máy dựa trên phương thức học
Theo phương thức học, các thuật toán học máy thường được chia làm bốn nhóm:
học có giám sát (Supervised Learning), học không giám sát (Unsupervised
Learning), học bán giám sát (Semi-supervised Learning), và học tăng cường
(Reinforcement Learning).
Học có giám sát (Supervised Learning)
Supervised learning là thuật toán dự đoán đầu ra (outcome) của một dữ liệu mới
(new input) dựa trên các cặp (input, outcome) đã biết từ trước. Cặp dữ liệu này


15 />
24


còn được gọi là (data, label), tức (dữ liệu, nhãn). Học có giám sát là nhóm phổ
biến nhất trong các thuật tốn Học máy.
Một cách tốn học, Học có giám sát là khi chúng ra có một tập hợp biến đầu
vào và một tập hợp nhãn tương ứng , trong đó là các véc tơ. Các cặp dữ liệu
biết trước được gọi là tập dữ liệu huấn luyện (training data ). Từ tập dữ liệu
huấn luyện này, chúng ta cần tạo ra một hàm số ánh xạ mỗi phần tử từ tập sang
một phần tử (xấp xỉ) tương ứng của tập :
(3.1)
Mục đích là xấp xỉ hàm số thật tốt để khi có một dữ liệu mới, chúng ta có thể
tính được nhãn tương ứng của nó .
Ví dụ 3.1: trong nhận dạng chữ viết tay, ta có ảnh của hàng nghìn ví dụ của mỗi
chữ số được viết bởi nhiều người khác nhau. Chúng ta đưa các bức ảnh này vào
trong một thuật tốn và chỉ cho nó biết mỗi bức ảnh tương ứng với chữ số nào.
Sau khi thuật tốn tạo ra một mơ hình, tức một hàm số mà đầu vào là một bức
ảnh và đầu ra là một chữ số, khi nhận được một bức ảnh mới mà mơ hình “chưa
nhìn thấy bao giờ”, nó sẽ dự đốn bức ảnh đó chứa chữ số nào. Ví dụ này khá
giống với cách học của con người khi còn nhỏ. Ta đưa bảng chữ cái cho một đứa
trẻ và chỉ cho chúng đây là chữ A, đây là chữ B. Sau một vài lần được dạy thì trẻ
có thể nhận biết được đâu là chữ A, đâu là chữ B trong một cuốn sách mà chúng
chưa nhìn thấy bao giờ. Hình 3.9 mơ tả một bộ dữ liệu huấn luyện cho bài tốn
nhận dạng số viết tay.
Ví dụ 3.2: Thuật tốn dị các khn mặt trong một bức ảnh đã được phát triển từ
rất lâu. Thời gian đầu, facebook sử dụng thuật toán này để chỉ ra các khuôn mặt
trong một bức ảnh và yêu cầu người dùng tag friends - tức gán nhãn cho mỗi
khuôn mặt. Số lượng cặp dữ liệu (khuôn mặt, tên người) càng lớn, độ chính xác

ở những lần tự động tag tiếp theo sẽ càng lớn.

25


×