HỌC VIỆN CÔNG NGHỆ BƢU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN 1
------------
ĐỒ ÁN
TỐT NGHIỆP ĐẠI HỌC
Đề tài: “Các đặc trƣng ngôn ngữ cho bài
toán phân loại câu hỏi tiếng Việt”
Giảng viên hƣớng dẫn : TS. NGÔ XUÂN BÁCH
Sinh viên thực hiện : NGUYỄN ĐÌNH NGHỊ
Lớp : D11CNPM3
Khóa: : 2011 – 2016
Hệ đào tạo : ĐẠI HỌC CHÍNH QUY
Hà Nội 12/2015
ĐỒ ÁN TỐT NGHIỆP
TÓM TẮT
Trong thời đại bùng nổ Công nghệ thông tin hiện nay, phương thức sử dụng giấy
tờ tro
60 trang |
Chia sẻ: huong20 | Ngày: 07/01/2022 | Lượt xem: 441 | Lượt tải: 0
Tóm tắt tài liệu Đồ án Các đặc trưng ngôn ngữ cho bài toán phân loại câu hỏi tiếng Việt, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ong giao dịch đã dần được số hĩa chuyển sang các dạng văn bản lưu trữ trên máy
tính hoặc truyền tải trên mạng. Bởi nhiều tính năng ưu việt của tài liệu số như: cách
lưu trữ gọn nhẹ, thời gian lưu trữ lâu dài, tiện dụng trong trao đổi, đặc biệt là qua
Internet, nên ngày nay, số lượng văn bản số tăng lên một cách chĩng mặt, đặc biệt là
trên World Wide Web. Cùng với sự gia tăng về số lượng văn bản, nhu cầu tìm kiếm
văn bản cũng tăng theo. Với số lượng văn bản đồ sộ thì yêu cầu cần cĩ những hệ thống
khai thác thơng tin hiệu quả. Các cơng cụ tìm kiếm hiện thời chỉ trả về cho người dùng
một tập các tài liệu liên quan cĩ chứa từ khĩa trong câu truy vấn của người dùng. Tuy
nhiên, người dùng mong muốn một câu trả lời chính xác và cụ thể hơn, dẫn đến yêu
cầu cần phải cĩ một hệ thống hỏi đáp tự động.
Trong những năm gần đây, hệ thống hỏi đáp tự động đã nhận được sự quan tâm
đặc biệt của các nhà nghiên cứu, các cơng ty (Yahoo, Google, Mcrosoft, IBM, v.v.),
các hội nghị lớn về trích chọn thơng tin, xử lý ngơn ngữ tự nhiên (TREC, CLEF, ACL,
v.v.) và đã đạt được những kết quả nhất định. Tuy nhiên các nghiên cứu về hệ thống
hỏi đáp cho tiếng Việt vẫn cịn rất hạn chế. Điều này một phần là do thiếu các cơng cụ
đủ tốt để xử lý tiếng Việt như nhận dạng thực thể tên, phân tích cú pháp, v.v.
Đồ án “Các đặc trưng ngơn ngữ cho bài tốn phân loại câu hỏi tiếng Việt” tập
trung nghiên cứu về vấn đề phân loại câu hỏi cho tiếng Việt, đây là pha đầu tiên trong
một hệ thống hỏi đáp tiếng Việt, cĩ ý nghĩa đặc biệt quan trọng với hoạt động của cả
hệ thống. Khi một câu hỏi được phân loại sẽ giúp chúng ta thu hẹp được khơng gian
tìm kiếm câu trả lời cho câu hỏi và từ đĩ giúp hệ thống hỏi đáp cĩ thể đưa ra được các
câu trả lời ngắn gọn và chính xác hơn.
Trên cơ sở các nghiên cứu đã cĩ và điều kiện thực tế của các cơng cụ xử lý ngơn
ngữ tiếng Việt, chúng tơi tiến hành thực nghiệm việc phân loại câu hỏi tiếng Việt trên
hai bộ dữ liệu: bộ dữ liệu một gồm 3000 câu hỏi tiếng Việt, bộ dữ liệu hai gồm 3000
câu hỏi tiếng Việt và đi kèm với mỗi câu hỏi là 5 câu truy vấn từ Google. Chúng tơi sử
dụng một số phương pháp học máy thống kê như Máy véc tơ hỗ trợ (SVM), Nạve
Bayes (NB), K-láng giềng gần nhất và tiến hành thực nghiệm trên các đặc trưng ngơn
ngữ tiếng Việt như đặc trưng từ vựng, đặc trưng âm tiết, n-grams, đặc trưng nhãn từ
loại và đặc trưng cú pháp của câu. Các kết quả ban đầu đạt được khá khả quan. Bộ
phân lớp câu hỏi đạt được kết quả tốt nhất là 85.53% khi sử dụng thuật tốn SVM cho
đặc trưng âm tiết 1+2 grams kết hợp với đặc trưng nhãn từ loại và đặc trưng cú pháp.
Từ khĩa: Hệ thống hỏi đáp, phân loại câu hỏi, Máy véc tơ hỗ trợ, K-láng giềng
gần nhất, Nạve Bayes, cây cú pháp, n-grams.
GVHD: TS. Ngơ Xuân Bách i SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
LỜI CẢM ƠN
Em xin chân thành cảm ơn TS. Ngơ Xuân Bách, bộ mơn Khoa học máy tính, Khoa
Cơng nghệ thơng tin 1 đã tận tình chỉ dạy và hướng dẫn cho em trong việc lựa chọn đề
tài, thực hiện đề tài và viết báo cáo đồ án, giúp cho em cĩ thể hồn thành tốt đồ án này.
Em xin cảm ơn các thầy cơ giáo Học viện Cơng nghệ Bưu chính Viễn thơng, đặc
biệt các thầy cơ trong khoa Cơng nghệ thơng tin 1 đã tận tình dạy dỗ và chỉ bảo em
trong suốt 4 năm học.
Cuối cùng em xin cảm ơn gia đình, bạn bè, đồng nghiệp, những người đã luơn bên
cạnh động viên em những lúc khĩ khăn, và giúp đỡ em trong suốt thời gian học tập và
làm đồ án, tạo mọi điều kiện tốt nhất cho em để cĩ thể hồn thành tốt đồ án của mình.
Em xin chân thành cảm ơn!
Hà Nội, 12/2015
Sinh viên
Nguyễn Đình Nghị
GVHD: TS. Ngơ Xuân Bách ii SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
NHẬN XÉT
(Của giảng viên phản biện)
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
Hà Nội, 12/2015
Giảng viên phản biện
GVHD: TS. Ngơ Xuân Bách iii SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
NHẬN XÉT
(Của giảng viên hƣớng dẫn)
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
Hà Nội, 12/2015
Giảng viên hướng dẫn
GVHD: TS. Ngơ Xuân Bách iv SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
MỤC LỤC
TĨM TẮT ............................................................................................................................. i
LỜI CẢM ƠN ...................................................................................................................... ii
DANH MỤC HÌNH VẼ ..................................................................................................... vii
DANH MỤC BẢNG BIỂU ............................................................................................... viii
BẢNG THUẬT NGỮ TIẾNG ANH ................................................................................... ix
LỜI NĨI ĐẦU ...................................................................................................................... 1
CHƢƠNG 1: GIỚI THIỆU HỆ THỐNG HỎI ĐÁP VÀ BÀI TỐN PHÂN LOẠI CÂU
HỎI ....................................................................................................................................... 3
1.1 Giới thiệu hệ thống hỏi đáp tự động ......................................................................... 3
1.2 Bài tốn phân loại câu hỏi ........................................................................................ 6
1.3 Các nghiên cứu liên quan ......................................................................................... 7
1.4 Đĩng gĩp của đồ án ................................................................................................. 8
CHƢƠNG 2: HỆ THỐNG PHÂN LOẠI CÂU HỎI TIẾNG VIỆT ................................... 9
2.1 Vấn đề phân loại câu hỏi cho tiếng Việt ................................................................... 9
2.2 Trích chọn đặc trưng .............................................................................................. 10
2.2.1 Từ vựng .......................................................................................................... 10
2.2.2 Âm tiết............................................................................................................ 11
2.2.3 N-grams .......................................................................................................... 11
2.2.4 Nhãn từ loại .................................................................................................... 12
2.2.5 Cây cú pháp .................................................................................................... 14
2.3 Các thuật tốn học máy .......................................................................................... 17
2.3.1 Máy véc tơ hỗ trợ (Support Vector Machine) .................................................. 17
2.3.2 Nạve Bayes .................................................................................................... 20
2.3.3 K láng giềng gần nhất (K-nearest neighbors) ................................................... 22
CHƢƠNG 3: THỰC NGHIỆM VÀ ĐÁNH GIÁ .............................................................. 26
3.1 Dữ liệu thực nghiệm .............................................................................................. 26
3.1.1 Chuẩn bị dữ liệu ............................................................................................. 26
3.1.2 Tiền xử lý dữ liệu ........................................................................................... 27
3.2 Thiết lập thực nghiệm ............................................................................................ 32
3.2.1 Thực nghiệm với 3000 câu hỏi ........................................................................ 32
GVHD: TS. Ngơ Xuân Bách v SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
3.2.2 Thực nghiệm bổ sung câu truy vấn .................................................................. 42
KẾT LUẬN ........................................................................................................................ 45
PHỤ LỤC ........................................................................................................................... 46
TÀI LIỆU THAM KHẢO ................................................................................................. 49
GVHD: TS. Ngơ Xuân Bách vi SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
DANH MỤC HÌNH VẼ
Hình 1-1: Kiến trúc hệ thống hỏi đáp [12]. ............................................................................. 5
Hình 1-2: Mơ hình giai đoạn huấn luyện [14]. ........................................................................ 6
Hình 1-3: Mơ hình giai đoạn phân lớp [14]. ........................................................................... 7
Hình 2-1: Kiến trúc hệ thống phân loại câu hỏi tiếng Việt. ..................................................... 9
Hình 2-2: Phân tích phụ thuộc của một câu tiếng Việt [2]. .................................................... 16
Hình 2-3: Siêu phẳng phân chia dữ liệu học thành 2 lớp + và – với khoảng cách biên lớn nhất
[17]. ..................................................................................................................................... 17
Hình 2-4: Minh họa bài tốn phân 2 lớp bằng phương pháp SVM [17]. ................................ 18
Hình 3-1: File questions.txt. ................................................................................................. 26
Hình 3-2: File labels.txt. ....................................................................................................... 27
Hình 3-3: File questions.tok. ................................................................................................ 28
Hình 3-4: File questions.tagger. ........................................................................................... 29
Hình 3-5: File questions.pos. ................................................................................................ 30
Hình 3-6: File questions.DEP.CONLL. ................................................................................ 31
Hình 3-7: File questions.root. ............................................................................................... 31
Hình 3-8: File questions.child. ............................................................................................. 32
Hình 3-9: File từ điển. .......................................................................................................... 32
Hình 3-10: Định dạng dữ liệu cho libsvm. ............................................................................ 33
Hình 3-11: Giao diện màn hình chính của Weka. ................................................................. 35
Hình 3-12: Định dạng dữ liệu file arrff. ................................................................................ 36
Hình 3-13: So sánh độ chính xác giữa đặc trưng âm tiết và đặc trưng từ vựng. ..................... 39
Hình 3-14: Độ chính xác cho mỗi nhãn (âm tiết 1+2 grams). ................................................ 39
Hình 3-15: So sánh độ chính xác giữa các đặc trưng. ............................................................ 41
Hình 3-16: Phương pháp thực nghiệm bổ sung câu truy vấn ................................................. 42
Hình 3-17: File question_and_query.txt. .............................................................................. 43
Hình B-1: Giao diện nhập câu hỏi bằng tay. ......................................................................... 47
Hình B-2: Giao diện nhập câu hỏi bằng file. ......................................................................... 47
Hình B-3: Giao diện chạy chương trình. ............................................................................... 48
GVHD: TS. Ngơ Xuân Bách vii SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
DANH MỤC BẢNG BIỂU
Bảng 2-1: Tập nhãn từ loại [20] ........................................................................................... 13
Bảng 2-2: Nhãn thành phần cú pháp [13] ............................................................................. 14
Bảng 2-3: Nhãn chức năng cú pháp [13]............................................................................... 15
Bảng 3-1: Số lượng câu hỏi của mỗi nhãn. ........................................................................... 26
Bảng 3-2: Các tệp sau khi chuyển đổi................................................................................... 33
Bảng 3-3: Kết quả thực nghiệm SVM sử dụng n-grams, âm tiết và từ vựng .......................... 37
Bảng 3-4: Kết quả phân lớp cho mỗi nhãn (âm tiết 1+2grams) ............................................. 37
Bảng 3-5: Kết quả thực nghiệm khi bổ sung thêm các đặc trưng........................................... 40
Bảng 3-6: Kết quả phân lớp cho mỗi nhãn (âm tiết 1+2grams + nhãn từ loại + root)............. 40
Bảng 3-7: Kết quả thực nghiệm của các thuật tốn khác nhau............................................... 41
Bảng 3-8: Kết quả thực nghiệm bổ sung câu truy vấn ........................................................... 43
Bảng A-1: Các cơng cụ sử dụng ........................................................................................... 46
GVHD: TS. Ngơ Xuân Bách viii SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
BẢNG THUẬT NGỮ TIẾNG ANH
Viết tắt Từ tiếng Anh Giải nghĩa
Association for Computational
ACL Hiệp hội ngơn ngữ học tính tốn
Linguistics
The Cross-Language Evaluation Diễn đàn đánh giá ngơn ngữ
CLEF
Forum chéo
Thuật tốn K láng giềng gần
KNN K-Nearest Neighbors
nhất
MEM Maximum Entropy Model Mơ hình Entropy cực đại
NB Nạve Bayes Phương pháp Bayes đơn giản
POS Part Of Speech Nhãn từ loại
QA Question Answering Hệ thống hỏi đáp
SVM Support Vector Machine Máy véc tơ hỗ trợ
TREC Text Retrieval Conference Hội nghị truy xuất văn bản
GVHD: TS. Ngơ Xuân Bách ix SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
LỜI NĨI ĐẦU
Nghiên cứu về hệ thống hỏi đáp tự động (Q&A) [15] đã được quan tâm từ rất lâu
trên thế giới. Ngay từ những năm 1960, các hệ thống hỏi đáp đầu tiên sử dụng cơ sở
dữ liệu đã được ra đời. Đến những năm 1970-1980, rất nhiều dự án lớn hướng đến việc
“hiểu văn bản” và xây dựng hệ thống hỏi đáp dựa trên các mơ hình ngơn ngữ thống kê.
Cuối những năm 1990, World Wide Web ra đời và phát triển nhanh chĩng trở thành
một kho ngữ liệu khổng lồ. Các nhà nghiên cứu về hệ thống hỏi đáp cũng bắt đầu khai
thác web như là một nguồn dữ liệu cho việc tìm kiếm câu trả lời. Các kĩ thuật mới địi
hỏi tốc độ cao, khả năng xử lý lượng dữ liệu web lớn đang rất được quan tâm. Tuy
nhiên các nghiên cứu về xây dựng hệ thống hỏi đáp cho tiếng Việt vẫn cịn rất nhiều
hạn chế. Một trong những lý do chính là chúng ta cịn thiếu các cơng cụ xử lý tiếng
Việt, các tài nguyên ngơn ngữ học.
Phân loại câu hỏi [15] là pha đầu tiên trong kiến trúc chung của một hệ thống hỏi
đáp, cĩ nhiệm vụ tìm ra các thơng tin cần thiết làm đầu vào cho quá trình xử lý của các
pha sau (trích chọn tài liệu, trích xuất câu trả lời, v.v.). Vì vậy phân loại câu hỏi cĩ vai
trị hết sức quan trọng, ảnh hưởng trực tiếp đến hoạt động của tồn bộ hệ thống. Phân
loại câu hỏi là việc gán các nhãn phân loại cho một câu hỏi dựa trên mức độ tương tự
của câu hỏi đĩ so với các câu hỏi đã được gán nhãn trong tập huấn luyện. Phân loại
câu hỏi nhận đầu vào là câu hỏi của người dùng dưới dạng ngơn ngữ tự nhiên, và đầu
ra là nhãn phân loại của câu hỏi. Khi một câu hỏi được phân loại đúng thì việc tìm câu
trả lời cho câu hỏi đĩ sẽ được chính xác hơn. Ví vụ với câu hỏi “Thành phố nào cĩ
diện tích lớn nhất Việt Nam?”, nếu chúng ta biết được kiểu câu trả lời là thành phố thì
nĩ cĩ thể giúp chúng ta giới hạn được các câu trả lời, thay vì việc phải đi kiểm tra các
danh từ trong các tài liệu cung cấp câu trả lời.
Đồ án “Các đặc trưng ngơn ngữ cho bài tốn phân loại câu hỏi tiếng Việt” thực
hiện khảo sát, nghiên cứu các phương pháp xây dựng hệ thống hỏi đáp và phân loại
câu hỏi đang được quan tâm hiện nay, từ đĩ đưa ra phương pháp phân loại câu hỏi phù
hợp nhất cho hệ thống hỏi đáp tiếng Việt. Những nghiên cứu trong đồ án cĩ thể coi là
tiền đề cho các nghiên cứu tiếp theo để xây dựng một hệ thống hỏi đáp hồn thiện cho
tiếng Việt.
Hiện nay cĩ nhiều phương pháp khác nhau để tiếp cận với bài tốn phân loại câu
hỏi, trong phạm vi đồ án này, chúng tơi thực hiện phân loại câu hỏi sử dụng cách tiếp
cận học máy thống kê, cụ thể là sử dụng 3 thuật tốn: Máy véc tơ hỗ trợ (SVM), Nạve
Bayes (NB) và K-láng giềng gần nhất (KNN). Với thuật tốn SVM, chúng tơi sử dụng
cơng cụ libsvm [21] để tiến hành làm thực nghiệm, với các thuật tốn cịn lại, chúng
tơi sử dụng cơng cụ Weka [22] để làm thực nghiệm. Các thuật tốn được áp dụng làm
thực nghiệm trên các đặc trưng ngơn ngữ tiếng Việt gồm cĩ: đặc trưng từ vựng, đặc
trưng âm tiết, n-grams, đặc trưng nhãn từ loại, và đặc trưng về cú pháp phụ thuộc của
tiếng Việt. Các đặc trưng này sẽ được biểu diễn dưới dạng các vector đặc trưng, làm
đầu vào cho các thuật tốn. Kết quả thực nghiệm tốt nhất đạt được khi sử dụng thuật
GVHD: TS. Ngơ Xuân Bách 1 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
tốn SVM trên đặc trưng âm tiết 1+2 grams kết hợp với đặc trưng nhãn từ loại và đặc
trưng cú pháp là 85.53%, với các thuật tốn Nạve Bayes, K-láng giềng gần nhất, kết
quả tốt nhất lần lượt là: 77.56%, 70.83%.
Đồ án được trình bày thành 3 chương như sau:
CHƢƠNG 1: GIỚI THIỆU HỆ THỐNG HỎI ĐÁP VÀ BÀI TỐN PHÂN
LOẠI CÂU HỎI
Nội dung của chương này giới thiệu tổng quan về hệ thống hỏi đáp tự động, bài
tốn phân loại câu hỏi và trình bày những đĩng gĩp chính của đồ án.
CHƢƠNG 2: HỆ THỐNG PHÂN LOẠI CÂU HỎI TIẾNG VIỆT
Chương 2 trình bày một số phương pháp lấy đặc trưng ngơn ngữ tiếng Việt cho
bài tốn phân loại câu hỏi tiếng Việt và các thuật tốn học máy thống kê được sử dụng
để tiến hành thực nghiệm trên các đặc trưng đĩ.
CHƢƠNG 3: THỰC NGHIỆM VÀ ĐÁNH GIÁ
Trong chương 3, đồ án trình bày chi tiết về quá trình làm thực nghiệm gồm cĩ
cách thu thập dữ liệu, cách xử lý dữ liệu, chi tiết từng bước làm thực nghiệm, đánh giá
kết quả thực nghiệm.
GVHD: TS. Ngơ Xuân Bách 2 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 1: Giới thiệu
CHƢƠNG 1: GIỚI THIỆU HỆ THỐNG HỎI ĐÁP VÀ BÀI TỐN
PHÂN LOẠI CÂU HỎI
Trong chương 1, đồ án trình bày cái nhìn tổng quan về hệ thống hỏi đáp tự động,
bao gồm các khái niệm cơ bản liên quan tới hệ thống hỏi đáp, phân loại hệ thống hỏi
đáp và kiến trúc chung của một hệ thống hỏi đáp. Ngồi ra, chương 1 cũng giới thiệu
về bài tốn phân loại câu hỏi, các cách tiếp cận với bài tốn phân loại câu hỏi và mơ
hình của các giai đoạn phân loại câu hỏi, các nghiên cứu liên quan và những đĩng gĩp
mà đồ án đã thực hiện được.
1.1 Giới thiệu hệ thống hỏi đáp tự động
Với nhu cầu trao đổi thơng tin của con người ngày càng cao, thơng tin tràn ngập
trên mọi phương tiện truyền thơng, đặc biệt là sự phát triển rộng rãi của mạng tồn cầu
Internet, hằng ngày con người phải xử lý một lượng thơng tin khổng lồ. Những thắc
mắc của người dùng dưới dạng truy vấn sẽ được tìm kiếm và trả về một cách ngắn
gọn, súc tích, chính xác nhất những gì mà họ mong muốn. Đĩ chính là mục tiêu của hệ
thống hỏi đáp tự động. Rất nhiều hệ thống hỏi đáp thơng tin qua mạng ra đời nhằm đáp
ứng nhu cầu này.
Nghiên cứu về hệ thống hỏi đáp tự động [15] hiện đang thu hút sự quan tâm của
rất nhiều các nhà nghiên cứu từ các trường đại học, các viện nghiên cứu và cả các
doanh nghiệp lớn trong ngành cơng nghệ thơng tin, cĩ ý nghĩa khoa học lẫn ý nghĩa
thực tế. Rất nhiều các hội nghị thường niên về khai phá dữ liệu, trích chọn thơng tin
dành một chủ đề riêng cho các nghiên cứu về hệ thống hỏi đáp như TREC [24], CLEF
[25], v.v. Ngồi ra cịn cĩ các phần mềm thương mại liên quan đến QA cũng được
phát triển như Yahoo Answers [26] của Yahoo, Google Question [27] của Google,
Live QnA của Microsoft, v.v. và đặc biệt cĩ hai phần mềm là Answers.com của
Answer Corp đạt được 9.5 triệu đơ la và Ask của InterActive Corp đạt được 227 triệu
đơ la mỗi năm [8].
Hệ thống hỏi đáp tự động (Question Answering - QA) là một hệ thống được xây
dựng để thực hiện việc tìm kiếm câu trả lời cho một câu hỏi của người dùng từ một tập
lớn các tài liệu một cách chính xác và ngắn gọn. Hệ thống hỏi đáp tự động liên quan
đến 3 lĩnh vực lớn là xử lý ngơn ngữ tự nhiên (Natuaral Language Processing), tìm
kiếm thơng tin (Information Retrieval) và rút trích thơng tin (Information Extraction).
Hệ thống hỏi đáp nhận đầu vào là câu hỏi dưới dạng ngơn ngữ tự nhiên của người
dùng và trả lại các đoạn văn bản ngắn chứa câu trả lời trực tiếp cho câu hỏi.
Bài tốn xây dựng hệ thống hỏi đáp [15] là một bài tốn khĩ thuộc lĩnh vực xử lý
ngơn ngữ tự nhiên. Ngơn ngữ tự nhiên vốn nhập nhằng, đa nghĩa, việc xác định được
ngữ nghĩa của câu hỏi cũng như phát hiện ra câu trả lời là một thách thức khơng nhỏ.
Khơng những vậy, giữa câu hỏi và câu trả lời cịn tồn tại các quan hệ “ngầm” hay phụ
thuộc vào ngữ cảnh.
GVHD: TS. Ngơ Xuân Bách 3 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 1: Giới thiệu
Ví dụ câu hỏi: “Ai là tác giả Nhật ký trong tù?”
Câu trả lời mong đợi: “Hồ Chí Minh”.
Tuy nhiên hiện nay, đa phần các hệ thống hỏi đáp chỉ trả lời ở mức đưa ra các
đoạn trích dẫn cĩ chứa thơng tin về câu trả lời như sau:
- “Hồ Chí Minh viết Nhật ký trong tù trong thời gian Người bị chính quyền
Tưởng Giới Thạch bắt giam và giải đi khắp các nhà giam ở Quảng Tây,
Trung Quốc.”
- “Nhật ký trong tù, dịch tiếng Hán – Ngục trung nhật ký là một tập thơ của
Hồ Chí Minh,”.
Hay câu hỏi “Mozart sinh năm nào?” và câu trả lời “Mozart(1751 - 1791)”
Để tìm được câu trả lời trên cho câu hỏi, hệ thống cần cĩ cơ chế để biết được
rằng “tác giả của một tập thơ là người viết tập thơ đĩ” hoặc cần học được các mẫu
thường gặp của câu trả lời (các mẫu về ngày tháng năm sinh, về thời gian, địa chỉ v.v.)
tương ứng với từng loại câu hỏi. Các hệ thống QA trên thế giới hiện nay sử dụng rất
nhiều các cơng cụ xử lý ngơn ngữ như: Bộ gán nhãn từ loại (POS Tagger), bộ nhận
dạng tên thực thể (Named Entity Recognizer), bộ phân tích ngữ pháp (Parser) v.v. và
các tài nguyên ngơn ngữ như Wordnet, ontology để phân tích câu hỏi và trích xuất câu
trả lời [15].
Cĩ 2 loại hệ thống hỏi đáp:
- Hệ thống hỏi đáp lĩnh vực hẹp (Closed-domain Question Answering): hệ
thống này liên quan đến các câu hỏi trong một lĩnh vực cụ thể, chẳng hạn như
lĩnh vực y học, du lịch, kinh tế, thể thao, v.v.
- Hệ thống hỏi đáp lĩnh vực rộng (Open-domain Question Answering): hệ
thống này liên quan đến các câu hỏi gần như là về tất cả mọi thứ.
Cĩ nhiều phương pháp được đề xuất để xây dựng hệ thống hỏi đáp. Năm 1997,
hệ thống trực tuyến START sử dụng một cơ sở dữ liệu để phân tích câu hỏi và đưa ra
câu trả lời [4]. Hầu hết các hệ thống QA hiện đại sử dụng kĩ thuật trích xuất mối quan
hệ ngữ nghĩa. Ví dụ, năm 2002 Ravichandran và Hovy đề xuất trích mối quan hệ ngữ
nghĩa sử dụng máy tìm kiếm [5]. Năm 2009, Fahmi tăng độ bao phủ của các mối quan
hệ bằng cách sử dụng học nửa giám sát để tự động tạo ra các mối quan hệ từ một tập
lớn dữ liệu [1].
GVHD: TS. Ngơ Xuân Bách 4 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 1: Giới thiệu
Kiến trúc hệ thống hỏi đáp:
Hình 1-1: Kiến trúc hệ thống hỏi đáp [12].
- Giao diện ngƣời dùng: cung cấp giao diện cho phép người dùng nhập câu
hỏi vào. Các câu hỏi sau đĩ được gửi đi, hệ thống sẽ xử lý và trả về cho người
dùng một câu trả lời dưới định dạng tương tự.
- Phân tích câu hỏi: câu hỏi được phân tích và xử lý để trích lọc càng nhiều
thơng tin càng tốt mà cĩ thể được sử dụng sau này trong giai đoạn tìm kiếm
dữ liệu.
- Tìm kiếm dữ liệu: một số thơng tin đã được trích xuất trong giai đoạn phân
tích câu hỏi sẽ được sử dụng để tìm kiếm thơng tin trong cơ sở tri thức.
- Rút trích câu trả lời: rút trích câu trả lời thuộc lĩnh vực rút trích thơng tin.
Thơng tin đã được trả về trong giai đoạn này cĩ thể là các tài liệu hoặc các
văn bản từ việc truy vấn cơ sở dữ liệu.
- Xếp hạng: nếu các kết quả của giai đoạn rút trích câu trả lời cĩ nhiều hơn
một câu trả lời thì các câu trả lời sẽ được xếp hạng dựa trên mức độ liên quan
về mặt ngơn ngữ với câu hỏi của người dùng.
- Xác minh câu trả lời: một số hệ thống QA cải thiện tính chính xác bằng cách
phân tích các câu trả lời thu được, qua việc sử dụng phương pháp xử lý ngơn
ngữ tự nhiên bằng cách phân tích sâu hơn để xác minh lại câu hỏi. Các câu
hỏi và câu trả lời được phân tích cú pháp và chuyển đổi sang cùng một hình
GVHD: TS. Ngơ Xuân Bách 5 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 1: Giới thiệu
thức logic. Các câu hỏi và câu trả lời sau đĩ được so sánh với nhau để xác
minh tính hợp lý của câu trả lời.
1.2 Bài tốn phân loại câu hỏi
Phân loại câu hỏi đĩng một vai trị quan trọng trong hệ thống trả lời câu hỏi.
Trước khi tìm ra được câu trả lời cho câu hỏi, hệ thống cần phải xác định được câu hỏi
đĩ thuộc loại nào, hỏi về cái gì. Ví dụ câu hỏi “Dân số Việt Nam là bao nhiêu?” là câu
hỏi về “số lượng”, hay câu “Ai là tổng thống Mỹ?” là câu hỏi về “người”. Xác định
được loại câu hỏi sẽ giúp thu hẹp được khơng gian tìm kiếm câu trả lời.
Bài tốn phân loại câu hỏi thực chất cĩ thể xem là bài tốn phân lớp. Phân loại
câu hỏi là việc gán các nhãn phân loại cho các câu hỏi dựa trên mức độ tương tự của
câu hỏi đĩ so với các câu hỏi đã được gán nhãn trong tập huấn luyện. Nĩ ánh xạ một
câu hỏi vào một chủ đề đã biết trong một tập hữu hạn các chủ đề dựa trên các đặc
trưng của câu hỏi. Phân loại câu hỏi [15] nhận đầu vào là câu hỏi dưới dạng ngơn ngữ
tự nhiên của người dùng, đưa ra nhãn phân loại cho câu hỏi đĩ, xem câu hỏi đĩ thuộc
loại nào. Các câu hỏi cĩ thể được phân vào các loại như địa điểm, số lượng, người, mơ
tả, khoảng cách, v.v. Ví dụ câu hỏi “Hồ Chí Minh là ai?” là câu hỏi thuộc loại Người,
hay câu hỏi “Trường Học viện Cơng nghệ Bưu chính Viễn thơng nằm ở đâu?” là câu
hỏi thuộc loại Địa điểm.
Nhiều kĩ thuật máy học và khai phá dữ liệu đã được áp dụng vào bài tốn phân
loại câu hỏi như: cây quyết định (decision tree), NaiveBayes, K-láng giềng gần nhất
(KNN), mạng nơron (neural network), v.v. Phân loại câu hỏi [14] thường gồm 2 giai
đoạn: giai đoạn huấn luyện và giai đoạn phân lớp:
Giai đoạn huấn luyện:
Ngữ liệu
Tiền xử lý Vector hĩa
huấn luyện
Mơ hình Thuật tốn Trích chọn
phân loại huấn luyện đặc trưng
Hình 1-2: Mơ hình giai đoạn huấn luyện [14].
Giai đoạn huấn luyện nhận đầu vào là tập ngữ liệu huấn luyện gồm các câu hỏi
đã được gán nhãn, sau khi xử lý tập ngữ liệu và áp dụng các thuật tốn huấn luyện sẽ
cho ra đầu ra là một mơ hình phân loại.
GVHD: TS. Ngơ Xuân Bách 6 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 1: Giới thiệu
Giai đoạn phân lớp:
Câu hỏi Tiền xử lý Vector hĩa
Nhãn cho Sử dụng mơ Trích chọn
câu hỏi hình phân lớp đặc trưng
Hình 1-3: Mơ hình giai đoạn phân lớp [14].
Giai đoạn phân lớp nhận đầu vào là câu hỏi của người dùng dưới dạng ngơn ngữ
tự nhiên, sau quá trình xử lý và áp dụng mơ hình phân loại sẽ cho ra nhãn phân loại
của câu hỏi đầu vào.
1.3 Các nghiên cứu liên quan
Hiện nay đã cĩ một số nghiên cứu về bài tốn phân loại câu hỏi, đặc biệt là tiếng
Anh như nghiên cứu của Zhiheng Huang và các cộng sự [3]. Nghiên cứu này sử dụng
5 đặc trưng gồm wh-word, head word, wordnet semantic, n-grams, word shape và sử
dụng hai cách tiếp cận là Máy vector hỗ trợ (SVM) và Mơ hình entropy cực đại
(MEM) với kết quả đạt được lần lượt là 89.2% và 89.0%. Nghiên cứu của Dell Zhang
và Wee Sun Lee [9] sử dụng hai đặc trưng là bag-of-word và n-grams. Nghiên cứu đã
tiến hành thực nghiệm với 5 thuật tốn gồm: Support Vector Machine (SVM), K-
nearest neighbors (KNN), Nạve Bayes (NB), Decision Tree (DT), Sparse Network of
Winnows (SNoW), và các thực nghiệm được thực hiện với các kích thước dữ liệu khác
nhau. Với bộ dữ liệu 1000 câu hỏi, sử dụng đặc trưng từ vựng, độ chính xác của các
thuật tốn lần lượt là: KNN đạt được 70%, NB đạt 53.8%, DT đạt 78.8%, SnoW đạt
71.8% và SVM đạt 76.8%. Với bộ dữ liệu 3000 câu hỏi, độ chính xác của các thuật
tốn lần lượt là: KNN đạt 74.8%, NB đạt 74.2%, DT đạt 82%, SnoW đạt 74.2% và
SVM đạt 87.4%. Khi áp dụng trên đặc trưng n-grams, với bộ dữ liệu 1000 câu hỏi,
KNN đạt được độ chính xác 72%, NB đạt 73%, DT đạt 73.8%, SnoW đạt 59.8% và
SVM đạt 77.6%. Với bộ dữ liệu 3000 câu hỏi, độ chính xác của KNN, NB, DT, SnoW
và SVM lần lượt là: 79.8%, 80%, 83%, 80.6%, 84%. Hầu hết các thực nghiệm đều cho
thấy kết quả phân loại sử dụng thuật tốn SVM đạt được độ chính xác cao nhất.
Một số nghiên cứu về phân loại câu hỏi trong tiếng Việt như nghiên cứu của Trần
Vũ Mai và các cộng sự [8], nghiên cứu này đã kết hợp hệ thống SnowBall và phương
pháp trích xuất mối quan hệ ngữ nghĩa sử dụng máy tìm kiếm cho tập văn bản tiếng
Việt. Thực nghiệm ban đầu của mơ hình cho thấy hệ thống cĩ thể trả lời chính xác
được 89.1% câu hỏi của người dùng đưa vào và khả năng đưa ra câu trả lời là 91.4%.
Nghiên cứu của Trần Hải Đăng và các cộng sự [7] đã sử dụng cơng cụ Weka để chạy
các thuật tốn học máy Cây quyết định (DT), Nạve Bayes (NB), Máy véc tơ hỗ trợ
(SVM) với các đặc trưng được sử dụng là từ vựng và từ khĩa. Với 6 lớp phân loại,
GVHD: TS. Ngơ Xuân Bách 7 SVTH: Nguyễn ...ân Bách 23 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 2: Hệ thống phân loại câu hỏi tiếng Việt
Khoảng cách giữa 2 văn bản chính là độ tương tự giữa 2 văn bản đĩ, 2 văn bản
cĩ giá trị độ tương tự càng lớn thì khoảng cách càng gần nhau.
Ví dụ: Dùng cơng thức Cosine để tính độ tương tự giữa 2 văn bản:
( ) ( )
‖ ‖ ‖ ‖
Văn bản A: Tơi là học sinh.
Văn Bản B: Tơi là sinh viên.
Văn bản C: Tơi là giáo viên.
Biểu diễn văn bản theo vector:
Tơi là học sinh viên giáo
Văn bản A 1 1 1 1 0 0
Văn bản B 1 1 0 1 1 0
Văn bản C 1 1 0 0 1 1
Vector A = (1,1,1,1,0,0)
Vector B = (1,1,0,1,1,0)
Vector C = (1,1,0,0,1,1)
( ⃑ ) ( ⃑ )
√
( ) ( )
√
Điều đĩ cho thấy văn bản A tương tự văn bản B hơn so với C.
Hướng dẫn cài đặt:
Thơng thường các thuật tốn sẽ gồm 2 giai đoạn huấn luyện và phân lớp, riêng
đối với thuật tốn KNN do thuật tốn này khơng cần tạo ra mơ hình khi làm trên tập
huấn luyện các văn bản đã cĩ nhãn/lớp sẵn, nên khơng cần giai đoạn huấn luyện (giai
đoạn huấn luyện của KNN là gán nhãn cho các văn bản trong tập huấn luyện bằng
cách gom nhĩm các văn bản cĩ vector đặc trưng giống nhau thành cùng 1 nhĩm).
Mơ tả vector đặc trưng của văn bản: là vector cĩ số chiều là số đặc trưng trong
tồn tập dữ liệu, các đặc trưng này đơi một khác nhau. Nếu văn bản cĩ chứa đặc trưng
đĩ sẽ cĩ giá trị 1, ngược lại là 0.
Đầu vào:
- Vector đặc trưng của văn bản cần phân lớp.
- Các vector đặc trưng của văn bản trong tập huấn luyện (Ma trận MxN, với M
là số vector đặc trưng trong tập huấn luyện, N là số đặc trưng của vector).
- Tập nhãn/lớp cho từng vector đặc trưng của tập huấn luyện.
Đầu ra:
GVHD: TS. Ngơ Xuân Bách 24 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 2: Hệ thống phân loại câu hỏi tiếng Việt
- Nhãn/lớp của văn bản cần phân loại.
Quá trình phân lớp gồm các bước sau:
- Xác định giá trị tham số K (số láng giềng gần nhất). Tùy vào mỗi tập huấn
luyện (số lượng mẫu trong tập huấn luyện, khơng gian tập mẫu cĩ phủ hết các
trường hợp) mà việc chọn số K sẽ ảnh hưởng đến kết quả phân lớp.
- Lần lượt duyệt qua các văn bản (được đại diện bằng vector đặc trưng của văn
bản) trong tập huấn luyện và tính độ tương tự của văn bản đĩ với văn bản cần
phân lớp.
- Sau khi đã cĩ mảng các giá trị lưu độ tương tự của văn bản cần phân lớp với
các văn bản trong tập huấn luyện, ta sắp xếp độ tương tự các văn bản theo thứ
tự giảm dần (lưu ý đây là độ tương tự, độ tương tự càng lớn tức là khoảng
cách càng gần) và lấy ra k văn bản đầu tiên trong mảng (tức là k văn bản gần
với văn bản cần phân lớp nhất).
- Khởi tạo mảng A cĩ độ dài bằng số phân lớp để lưu số văn bản của mỗi lớp.
Duyệt qua k văn bản, đếm số văn bản trong từng phân lớp và lưu vào mảng.
- Duyệt qua mảng A, tìm lớp cĩ số văn bản nhiều nhất và chọn là lớp cho văn
bản mới.
GVHD: TS. Ngơ Xuân Bách 25 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
CHƢƠNG 3: THỰC NGHIỆM VÀ ĐÁNH GIÁ
Sau khi tìm hiểu các phương pháp giải quyết bài tốn, trong chương 3, đồ án
trình bày chi tiết thực nghiệm gồm cĩ quá trình thu thập và xử lý dữ liệu, các phương
pháp làm thực nghiệm, kết quả và đánh giá.
3.1 Dữ liệu thực nghiệm
3.1.1 Chuẩn bị dữ liệu
Dữ liệu chuẩn bị cho thực nghiệm gồm 3000 câu hỏi tiếng Việt thuộc 22 loại
khác nhau được thu thập từ địa chỉ web:
Mỗi câu hỏi cĩ dạng: . 3000 câu hỏi được lưu vào file cĩ tên
“questions.txt”.
Hình 3-1: File questions.txt.
Bảng 3-1: Số lượng câu hỏi của mỗi nhãn.
STT Nhãn tiếng Anh Nhãn tiếng Việt Số câu hỏi
1 Location Địa điểm 420
2 Count Số lượng 265
3 Manner Cách thức 266
4 Description Mơ tả 266
5 Reason Lý do 190
6 Food Mĩn ăn 103
7 Sport Thể thao 62
8 Definition Định nghĩa 266
9 Animal Động vật 112
GVHD: TS. Ngơ Xuân Bách 26 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
10 Human Người 268
11 Money Tiền bạc 71
12 Event Sự kiện 56
13 Date Ngày tháng 218
14 Period Giai đoạn 75
15 Vehicle Xe cộ 27
16 Product Sản phẩm 42
17 Termeq Thuật ngữ 93
18 Substance Vật chất 41
19 ABBR Viết tắt 72
20 Color Màu sắc 40
21 Distance Khoảng cách 34
22 Plant Cây cối 13
*** Total 3000
3.1.2 Tiền xử lý dữ liệu
Trước khi xử lý dữ liệu ta thực hiện tách riêng nhãn phân loại của 3000 câu hỏi
và lưu vào tệp labels.txt, và tệp questions.txt lúc này chỉ cịn chứa 3000 câu hỏi mà
khơng chứa nhãn phân loại.
Hình 3-2: File labels.txt.
GVHD: TS. Ngơ Xuân Bách 27 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
a) Tách từ
Trong đồ án, chúng tơi sử dụng cơng cụ tách từ tiếng Việt là vnTokenizer [19].
Chương trình chạy dưới dạng dịng lệnh:
- vnTokenizer.sh nếu chạy trên các hệ điều hành Linux/Unix/Mac OS
- vnTokenizer.bat nếu chạy trên các hệ điều hành MS Windows
Yêu cầu máy cần cài JRE (Java Runtime Enviroment) phiên bản 1.6
Câu lệnh tách từ cho một tệp trên hệ điều hành MS Windows như sau:
vnTokenizer.bat -i -o []
Hai tùy chọn -i và -o là bắt buộc. Ngồi ra, người dùng cĩ thể cung cấp các tùy
chọn khơng bắt buộc sau đây:
+) -xo: dùng định dạng XML để biểu diễn kết quả thay vì định dạng mặc định
là văn bản thơ.
+) -nu: khơng sử dụng dấu gạch dưới khi ghi kết quả. Nếu tùy chọn này được
sử dụng thì trong kết quả, các âm tiết khơng được nối với nhau bằng ký tự gạch dưới,
mà bằng ký tự trắng.
+) -sd: sử dụng mơ-đun tách câu trước khi thực hiện tách từ. Nếu tùy chọn này
được sử dụng thì trước tiên vnTokenizer thực hiện tách văn bản input thành một tập
các câu, sau đĩ thực hiện tách từ từng câu một.
Các tùy chọn này cĩ thể được phối hợp đồng thời với nhau để cho ra kết quả
mong muốn. Khi thực nghiệm, chúng tơi chỉ sử dụng hai tùy chọn -i và –o và kết quả
tách từ được lưu vào tệp “questions.tok” như sau:
Hình 3-3: File questions.tok.
GVHD: TS. Ngơ Xuân Bách 28 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
b) Gán nhãn từ
Để thực hiện việc gán nhãn từ loại, chúng tơi sử dụng cơng cụ gán nhãn từ tiếng
Việt là vnTagger [20]. Chương trình chạy dưới dạng dịng lệnh:
-vnTagger.sh nếu chạy trên các hệ điều hành Linux/Unix/Mac OS
-vnTagger.bat nếu chạy trên các hệ điều hành MS Windows
Yêu cầu máy cần cài JRE (Java Runtime Enviroment) phiên bản 1.6
Câu lệnh gán nhãn từ cho một tệp trên hệ điều hành MS Windows như sau:
vnTagger.bat -i -o []
Hai tùy chọn -i và -o là bắt buộc. Ngồi ra, người dùng cĩ thể cung cấp các tùy
chọn khơng bắt buộc sau đây:
+) –u: thêm gạch dưới giữa các âm tiết của một từ
+) –p: khơng dùng định dạng XML để biểu diễn kết quả
Các tùy chọn này cĩ thể được phối hợp đồng thời với nhau để cho ra kết quả
mong muốn. Khi thực nghiệm, ngồi sử dụng hai tùy chọn -i và –o, chúng tơi cịn sử
dụng cả hai tùy chọn –u và –p và kết quả gán nhãn từ được lưu vào tệp
“questions.tagger” như sau:
Hình 3-4: File questions.tagger.
Sau khi gán nhãn từ loại, chúng tơi thực hiện trích rút nhãn từ loại và lưu vào tệp
“questions.pos”.
GVHD: TS. Ngơ Xuân Bách 29 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
Hình 3-5: File questions.pos.
c) Biểu diễn cây cú pháp
Để xây dựng cây cú pháp cho câu hỏi, chúng tơi sử dụng cơng cụ VnDP toolkit
[23]. VnDP toolkit là bộ cơng cụ phân tích cú pháp phụ thuộc tiếng Việt, tích hợp bộ
phân tích cú pháp MSTParser và bộ gán nhãn từ RDRPOSTagger. Cơng cụ được viết
bằng ngơn ngữ java:
Đầu vào: tệp dữ liệu đã được tách từ
Đầu ra:
- Tệp .TAGGED biểu diễn kết quả gán nhãn từ
- Tệp .DEP.CONLL biểu diễn các câu dưới dạng cây cú pháp
GVHD: TS. Ngơ Xuân Bách 30 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
Hình 3-6: File questions.DEP.CONLL.
Sau khi đã biểu diễn các câu dưới dạng cây cú pháp, chúng tơi thực hiện trích rút
cây cú pháp, lấy các từ gốc là các từ cĩ nhãn là root, lưu vào tệp “questions.root” với
định dạng: root=”” và các từ con của từ gốc, lưu vào tệp “questions.child”
với định dạng: child=””
Hình 3-7: File questions.root.
GVHD: TS. Ngơ Xuân Bách 31 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
Hình 3-8: File questions.child.
3.2 Thiết lập thực nghiệm
3.2.1 Thực nghiệm với 3000 câu hỏi
a. SVM
Trong thực nghiệm với thuật tốn SVM, chúng tơi sử dụng cơng cụ libsvm để
phân loại câu hỏi cho thuật tốn với các đặc trưng từ vựng, âm tiết, n-gram, nhãn từ
loại và cây cú pháp.
Bước 1: Xây dựng từ điển
Sử dụng tệp “questions.txt” xây dựng ba bộ từ điển chứa các đặc trưng âm tiết
được biểu diễn theo 1 gram, 1+2 grams và 1+2+3 grams. Sử dụng tệp “questions.tok”
xây dựng ba bộ từ điển chứa các đặc trưng từ vựng được biểu diễn theo 1 gram, 1+2
grams và 1+2+3 grams. Các từ điển cĩ định dạng: :
Hình 3-9: File từ điển.
Bước 2: Chuyển đồi định dạng libsvm
Dựa vào sáu bộ từ điển đã xây dựng, chuyển đổi định dạng hai tệp
“questions.txt” và “questions.tok” về đúng định dạng của libsvm:
: : ...
Trong đĩ:
GVHD: TS. Ngơ Xuân Bách 32 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
- là nhãn phân loại, giá trị đích của tập huấn luyện. Đối với việc phân
lớp, nĩ là một số nguyên xác định một lớp. Đối với hồi qui, nĩ là một số thực
bất kỳ.
- là một số nguyên bắt đầu từ 1, trong trường hợp này nĩ là vị trí của
âm tiết hoặc từ vựng trong từ điển.
- là số lần xuất hiện của âm tiết hoặc từ vựng trong câu.
Mỗi tệp được chuyển về định dạng của libsvm theo 3 kiểu: 1 gram, 1+2 grams,
và 1+2+3 grams.
Hình 3-10: Định dạng dữ liệu cho libsvm.
Như vậy, sau khi chuyển đổi định dạng sẽ cĩ 6 tệp:
Bảng 3-2: Các tệp sau khi chuyển đổi
Dữ liệu gốc Tệp chuyển đổi
Âm tiết 1 gram
questions.txt
Âm tiết 1+2 grams
(âm tiết)
Âm tiết 1+2+3 grams
Từ vựng 1 gram
questions.tok
Từ vựng 1+2 grams
(từ vựng)
Từ vựng 1+2+3 grams
Bước 3: Tạo các bộ dữ liệu thực nghiệm
Chia ngẫu nhiên mỗi tệp làm 5 phần, mỗi phần gồm 600 câu, gọi 5 phần đĩ lần
lượt là set1, set2, set3, set4, set5. Sử dụng 4 phần (2400 câu) để tiến hành huấn luyện,
và 1 phần cịn lại (600 câu) để kiểm tra và việc này sẽ được thực hiện 5 lần. Sau tiến
hành 5 lần như trên kết quả cuối cùng sẽ được tính bằng trung bình cộng của 5 kết quả
của 5 lần tương ứng.
- Lần 1: tập train gồm phần 2+3+4+5 cịn tập test sẽ là phần 1.
- Lần 2: tập train gồm phần 1+3+4+5 cịn tập test sẽ là phần 2.
GVHD: TS. Ngơ Xuân Bách 33 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
- Lần 3: tập train gồm phần 1+2+4+5 cịn tập test sẽ là phần 3.
- Lần 4: tập train gồm phần 1+2+3+5 cịn tập test sẽ là phần 4.
- Lần 5: tập train gồm phần 1+2+3+4 cịn tập test sẽ là phần 5.
Như vậy, mỗi tệp sẽ cĩ 5 thực nghiệm khác nhau, do cĩ 6 tệp nên tổng cộng số
thực nghiệm cần phải thực hiện là 30 thực nghiệm.
Bước 4: Chạy thực nghiệm với cơng cụ libsvm
Một tập thực nghiệm sẽ cĩ hai tệp, một tệp train và một tệp test, tên của chúng là
trainN.txt và testN.txt (N=1,2,3,4,5). Mở command window để gõ lệnh, chuyển đường
dẫn lệnh về thư mục chứa svm-scale.exe:
- Scale tệp train: svm-scale –l 0 –u 1 –s rangeN trainN.txt > trainN.scale.
- Scale tệp test: svm-scale –r rangeN testN.txt > testN.scale.
- Chọn tham số C và gamma: thay đổi đường dẫn lệnh về thư mục chứa
grid.py, gõ lệnh python grid.py trainN.scale.
- Thay đổi đường dẫn lệnh về thư mục chứa svm-train.exe và svm-predict.exe.
- Huấn luyện dữ liệu: svm-train –c –g -b 1
trainN.scale.
- Dự đốn: svm-predict –b 1 testN.scale trainN.scale.model testN.predict .
Bước 5: Bổ sung đặc trưng nhãn từ loại và cây cú pháp
Sau khi cĩ được kết quả của tất cả các trường hợp, tính giá trị trung bình của 5
thực nghiệm cho mỗi tệp. Lựa chọn bộ dữ liệu thực nghiệm mà cho kết quả dự đốn
tốt nhất để bổ sung thêm các đặc trưng nhãn từ loại và cây cú pháp. Sau đĩ tiến hành
chạy lại thực nghiệm với cơng cụ libsvm.
b. Các thuật tốn khác
Sau khi sử dụng libsvm tiến hành thực nghiệm với các đặc trưng khác nhau,
chúng tơi sử dụng bộ dữ liệu đạt được kết quả tốt nhất để áp dụng các thuật tốn Nạve
Bayes, K-láng giềng gần nhất bằng cách sử dụng cơng cụ Weka [22].
GVHD: TS. Ngơ Xuân Bách 34 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
Hình 3-11: Giao diện màn hình chính của Weka.
Để cĩ thể sử dụng cơng cụ Weka, chúng ta cần chuyển đổi định dạng dữ liệu về
đúng dạng ARFF, CSV, C4.5, hoặc binary. Trong đồ án, chúng tơi chuyển định dạng
dữ liệu về dạng file ARFF.
Định dạng dữ liệu (ARFF):
- Phần khai báo
@ralation
@attribute
@attribute
- Các kiểu dữ liệu:
Numeric: dữ liệu dạng số Ví dụ: @ATTRIBUTE name numeric
Nominal: dữ liệu rời rạc Ví dụ: @ATTRIBUTE class {sport, count}
String: dữ liệu chuỗi Ví dụ: @ATTRIBUTE name string Date
Date: dữ liệu kiểu ngày Ví dụ: @ATTRIBUTE discovered date
- Phần dữ liệu:
Mỗi mẫu dữ liệu được đặt trên một dịng, giá trị của các thuộc tính được liệt kê
theo thứ tự từ trái qua phải và ngăn cách bởi dấu phẩy.
GVHD: TS. Ngơ Xuân Bách 35 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
Hình 3-12: Định dạng dữ liệu file arrff.
Sau khi chuyển đổi định dạng dữ liệu, chúng tơi tiến hành làm thực nghiệm sử
dụng Weka với các thuật tốn Nạve Bayes và K-láng giềng gần nhất.
c. Cách thức đánh giá
Sau khi đã thực nghiệm xong, việc tiếp theo là cần phải đánh giá xem kết quả
thực nghiệm cĩ tốt khơng. Để đánh giá kết quả phân loại câu hỏi, ta sử dụng một số
chỉ số đánh giá:
Recall: độ chính xác của dự đốn cho từng nhãn
Recall =
Precision: độ chính xác của mỗi lần dự đốn
Precision =
Từ thực nghiệm chúng ta cĩ 3 giá trị: Human, Model, Match
Trong đĩ:
- Human: Số câu hỏi thực tế
- Model: Số câu hỏi mà máy dự đốn
- Match: Số câu hỏi được máy dự đốn đúng
Chúng ta cĩ cơng thức:
GVHD: TS. Ngơ Xuân Bách 36 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
Rec = =
Prec = =
F1
Tiêu chí đánh giá F1 là sự kết hợp của 2 tiêu chí đánh giá Precision và Recall
F1 =
F1 là một giá trị trung bình điều hịa của các tiêu chí Precision và Recall
- F1 cĩ xu hướng lấy giá trị gần với giá trị nào nhỏ hơn giữa 2 giá trị Precision
và Recall
- F1 cĩ giá trị lớn nếu cả 2 giá trị Precision và Recall đều lớn
d. Kết quả
Kết quả chạy SVM cho đặc trưng từ vựng, âm tiết và n-grams:
Bảng 3-3: Kết quả thực nghiệm SVM sử dụng n-grams, âm tiết và từ vựng
Đặc Lần 1 Lần 2 Lần 3 Lần 4 Lần 5
n-grams TB (%)
trƣng (%) (%) (%) (%) (%)
1gram 84.50 85.00 82.83 84.00 83.83 84.03
Từ
1+2grams 82.83 85.50 81.83 83.00 83.17 83.27
vựng
1+2+3grams 83.17 83.83 82.00 81.67 82.67 82.67
1gram 83.00 83.83 83.33 81.83 81.50 82.70
1+2grams 84.83 87.67 84.67 84.00 85.33 85.30
Âm tiết
1+2+3grams 84.17 87.00 83.83 82.50 84.83 84.47
Bảng 3-4: Kết quả phân lớp cho mỗi nhãn (âm tiết 1+2grams)
STT Nhãn Human Model Match Precision (%) Recall (%) F1(%)
1 Location 420 434 370 85.25 88.10 86.65
2 Count 265 281 251 89.32 94.72 91.94
3 Manner 266 285 259 90.88 97.37 94.01
4 Description 266 297 219 73.74 82.33 77.80
5 Reason 190 183 176 96.17 92.63 94.37
6 Food 103 90 74 82.22 71.84 76.68
7 Sport 62 58 48 82.76 77.42 80.00
8 Definition 266 289 241 83.39 90.60 86.85
GVHD: TS. Ngơ Xuân Bách 37 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
9 Animal 112 99 95 95.96 84.82 90.05
10 Human 268 278 218 78.42 81.34 79.85
11 Money 71 64 58 90.63 81.69 85.93
12 Event 56 51 29 56.86 51.79 54.21
13 Date 218 211 195 92.42 89.45 90.91
14 Period 75 67 64 95.52 85.33 90.14
15 Vehicle 27 21 13 61.90 48.15 54.17
16 Product 42 42 29 69.05 69.05 69.05
17 Termeq 93 83 71 85.54 76.34 80.68
18 Substance 41 31 30 96.77 73.17 83.33
19 ABBR 72 62 52 83.87 72.22 77.61
20 Color 40 36 34 94.44 85.00 89.47
21 Distance 34 28 25 89.29 73.53 80.65
22 Plant 13 10 8 80.00 61.54 69.57
*** Total 3000 3000 2559 84.29 78.56 81.09
Recall là tiêu chí đánh giá dựa trên số lần mỗi nhãn được đốn đúng. Tuy nhiên,
mỗi một nhãn sẽ được dự đốn một số lần nào đĩ, và số lượng này cĩ thể lớn hơn hoặc
nhỏ hơn số lượng thực tế. Nếu như một nhãn được dự đốn nhiều lần hơn số lượng
thực tế thì số lần dự đốn đúng cũng sẽ tăng lên. Vì vậy nếu số câu hỏi được dự đốn
đúng tăng lên mà số lần dự đốn cũng tăng lên thì hiệu suất của thuật tốn khơng thực
sự tốt. Cho nên chúng tơi sử dụng thêm tiêu chí Precision. Tiêu chí này ngồi việc
quan tâm tới số lần dự đốn đúng, nĩ cịn quan tâm tới số lần mà mỗi nhãn được dự
đốn. Tuy nhiên cả hai tiêu chí này vẫn chưa thể hiện được hiệu suất dự đốn. Để giải
quyết vấn đề đĩ, chúng tơi sử dụng tiêu chí F1 là một sự kết hợp hài hịa của hai tiêu
chí Recall và Precision: F1 = .
GVHD: TS. Ngơ Xuân Bách 38 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
85.5 85.3
85
84.47
84.5
84.03
84
83.5 83.27
Từ vựng
83
82.7 82.67 Âm tiết
82.5
82
81.5
81
1 gram 1+2 grams 1+2+3 grams
Hình 3-13: So sánh độ chính xác giữa đặc trưng âm tiết và đặc trưng từ vựng.
Kết quả thực nghiệm cho thấy việc sử dụng đặc trưng âm tiết đạt hiệu quả cao
hơn đặc trưng từ vựng. Nguyên nhân cĩ thể là do trong một câu thì số lượng âm tiết sẽ
nhiều hơn số lượng từ vựng, do đĩ số đặc trưng âm tiết nhiều hơn sẽ giúp việc dự đốn
được tốt hơn. Kết quả cao nhất đạt được là 85.30% khi sử dụng đặc trưng âm tiết 1+2
grams. Vì vậy, bộ dữ liệu đặc trưng âm tiết 1+2grams sẽ được sử dụng để bổ sung
thêm các đặc trưng khác.
F1
100
90
80
70
60
50
40
30
20
10
0
Date
Food
Total
Plant
Color
Sport
ABBR
Event
Count
Period
Animal
Money
Human
Reason
Vehicle
Termeq
Product
Manner
Location
Distance
Definition
Substance
Description
Hình 3-14: Độ chính xác cho mỗi nhãn (âm tiết 1+2 grams).
Dựa vào bảng 3-4 và hình 3-14 ta thấy cĩ 11 nhãn đạt được độ chính xác khá
tốt, cao hơn độ chính xác trung bình đĩ là các nhãn Location, Count, Manner, Reason,
Definition, Animal, Money, Date, Period, Substance và Color. Các nhãn này cĩ giá trị
GVHD: TS. Ngơ Xuân Bách 39 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
F1, precision và recall đều cao hơn giá trị trung bình của tất cả các nhãn và sự chênh
lệch giữa precision và recall là khơng lớn. Trong khi ở các nhãn cĩ giá trị F1 nhỏ hơn
giá trị trung bình thì các giá trị precision và recall thường cĩ chênh lệch khá lớn.
Kết quả thực nghiệm SVM khi bổ sung các đặc trưng:
Bảng 3-5: Kết quả thực nghiệm khi bổ sung thêm các đặc trưng
Các đặc trƣng Độ chính xác
Âm tiết 1+2 grams 85.30%
Âm tiết 1+2 grams + nhãn từ loại 85.37% (+0.07%)
Âm tiết 1+2 grams + nhãn từ loại + root 85.53% (+0.23%)
Âm tiết 1+2 grams + nhãn từ loại + root + child 85.40% (+0.10%)
Bảng 3-6: Kết quả phân lớp cho mỗi nhãn (âm tiết 1+2grams + nhãn từ loại + root)
STT Nhãn Human Model Match Precision (%) Recall (%) F1(%)
1 Location 420 423 365 86.29 86.90 86.59
2 Count 265 279 253 90.68 95.47 93.01
3 Manner 266 281 258 91.81 96.99 94.33
4 Description 266 303 220 72.61 82.71 77.33
5 Reason 190 184 175 95.11 92.11 93.59
6 Food 103 91 71 78.02 68.93 73.19
7 Sport 62 58 48 82.76 77.42 80.00
8 Definition 266 288 245 85.07 92.11 88.45
9 Animal 112 101 94 93.07 83.93 88.26
10 Human 268 279 222 79.57 82.84 81.17
11 Money 71 66 61 92.42 85.92 89.05
12 Event 56 50 30 60.00 53.57 56.60
13 Date 218 210 194 92.38 88.99 90.65
14 Period 75 67 65 97.01 86.67 91.55
15 Vehicle 27 19 12 63.16 44.44 52.17
16 Product 42 46 30 65.22 71.43 68.18
17 Termeq 93 83 71 85.54 76.34 80.68
GVHD: TS. Ngơ Xuân Bách 40 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
18 Substance 41 31 29 93.55 70.73 80.56
19 ABBR 72 65 55 84.62 76.39 80.29
20 Color 40 37 35 94.59 87.50 90.91
21 Distance 34 29 25 86.21 73.53 79.37
22 Plant 13 10 8 80.00 61.54 69.57
*** Total 3000 3000 2566 84.08 78.93 81.16
Độ chính xác giữa các đặc trƣng
85.55
85.5
85.45
85.4
85.35
85.3
85.25
85.2
85.15
âm tiết 1+2grams âm tiết 1+2grams + âm tiết 1+2grams + âm tiết 1+2grams +
nhãn từ loại nhãn từ loại + root nhãn từ loại + root +
child
Hình 3-15: So sánh độ chính xác giữa các đặc trưng.
Kết quả tốt nhất của tất cả các thực nghiệm là 85.53% khi sử dụng thuật tốn
SVM kết hợp các đặc trưng âm tiết 1+2grams, nhãn từ loại và đặc trưng root của cây
cú pháp. Độ chính xác giữa các thực nghiệm là khơng quá lớn, sự chênh lệch lớn nhất
là 85.53% – 85.3% = 0.23%. Do đĩ, độ chênh lệch chỉ số F1 cũng khơng quá lớn:
81.16% – 81.09% = 0.07%.
Kết quả thực nghiệm với các thuật tốn khác
Bảng 3-7: Kết quả thực nghiệm của các thuật tốn khác nhau
Thuật tốn Độ chính xác
SVM 85.53%
Nạve Bayes 77.56%
K láng giềng gần nhất (k=1) 70.83%
K láng giềng gần nhất (k=5) 66.60%
GVHD: TS. Ngơ Xuân Bách 41 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
Kết quả thực nghiệm cho thấy thuật tốn SVM là lựa chọn tốt nhất cho bài tốn
phân loại câu hỏi. Độ chính xác cĩ sự chênh lệch khá lớn giữa thuật tốn SVM và các
thuật tốn khác. Chênh lệch lớn nhất là giữa thuật tốn SVM và thuật tốn K-láng
giềng gần nhất ( ), độ chênh lệch là 85.53% - 66.60% = 18.93%.
3.2.2 Thực nghiệm bổ sung câu truy vấn
a. Phƣơng pháp thực nghiệm
Kết quả truy
Question Máy tìm kiếm
vấn
Huấn luyện
Hình 3-16: Phương pháp thực nghiệm bổ sung câu truy vấn
Trong thực nghiệm bổ sung câu truy vấn, các câu hỏi trong bộ dữ liệu ban đầu sẽ
được đưa vào các hệ thống máy tìm kiếm và lấy ra các kết quả truy vấn. Sau đĩ các
câu truy vấn sẽ được bổ sung vào tập các câu hỏi ban đầu với mục đích tăng kích
thước dữ liệu huấn luyện. Khi kích thước dữ liệu huấn luyện tăng lên, chúng tơi hi
vọng sẽ cĩ thêm nhiều thơng tin cho quá trình huấn luyện, từ đĩ sẽ xây dựng được một
mơ hình huấn luyện tốt hơn, gĩp phần cải thiện kết quả phân loại. Sau khi bổ sung các
kết quả truy vấn, chúng tơi tiến hành trích xuất các đặc trưng và áp dụng các thuật tốn
học máy thống kê để tiến hành làm thực nghiệm.
b. Dữ liệu thực nghiệm
Với bộ dữ liệu 3000 câu hỏi ban đầu, chúng tơi đưa từng câu hỏi vào máy tìm
kiếm Google, tiến hành thu thập 5 kết quả đầu tiên được máy tìm kiếm trả về, lưu kết
quả vào tệp “question_and_query.txt”, mỗi dịng trong tệp cĩ dạng:
tab tab
GVHD: TS. Ngơ Xuân Bách 42 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
Hình 3-17: File question_and_query.txt.
c. Thiết lập thực nghiệm
Trong thực nghiệm bổ cung các câu truy vấn, chúng tơi chỉ tiến hành thực
nghiệm sử dụng thuật tốn SVM với bộ dữ liệu cĩ kết quả tốt nhất của thực nghiệm
3000 câu hỏi trên các đặc trưng từ vựng, âm tiết và n-grasm. Do thực nghiệm với âm
tiết 1+2grams đạt kết quả tốt nhất nên các câu truy vấn sẽ được bổ sung vào bộ dữ liệu
âm tiết 1+2grams.
- Các âm tiết trong các câu truy vấn sẽ được bổ sung vào từ điển 1+2grams,
mỗi âm tiết được viết thêm kí tự “q_” vào phía trước để phân biệt với các âm
tiết trong câu hỏi.
- Chuyển đổi định dạng các câu truy vấn về định dạng libsvm.
- Bổ sung các câu truy vấn đã được chuyển đổi định dạng vào các tệp train và
test của bộ dữ liệu âm tiết 1+2grams sao cho đúng thứ tự câu.
- Chạy thực nghiệm với cơng cụ libsvm cho bộ dữ liệu.
d. Kết quả thực nghiệm
Bảng 3-8: Kết quả thực nghiệm bổ sung câu truy vấn
Lần 1 Lần 2 Lần Lần Lần 5
Đặc trƣng TB (%)
(%) (%) 3 (%) 4 (%) (%)
Âm tiết 1+2grams 84.83 87.67 84.67 84.00 85.33 85.30
Âm tiết 1+2grams
80.67 82.50 81.83 79.50 81.33 81.17 (-4.13)
+ câu truy vấn
Như vậy thực nghiệm với việc bổ sung các câu truy vấn khơng cho kết quả tốt
hơn với việc chỉ sử dụng câu hỏi. Điều này cho thấy việc sử dụng thêm các câu truy
vấn từ máy tìm kiếm google khơng phù hợp với bài tốn phân loại câu hỏi. Các câu
truy vấn đã tạo ra nhiễu, làm cho mơ hình huấn luyện khơng đạt được kết quả tốt nhất.
Ví dụ câu hỏi: Con vật nào được đặt chân đầu tiên vào khơng gian?
GVHD: TS. Ngơ Xuân Bách 43 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP Chương 3: Thực nghiệm và đánh giá
5 kết quả tìm kiếm từ google:
Chạy đua vào khơng gian – Wikipedia tiếng Việt
Người đầu tiên đặt chân lên mặt trăng - Các bài viết - KhoaHoc.TV
Động vật đầu tiên bay vào khơng gian - Các bài viết
Ký ức của người đầu tiên đi bộ ngồi khơng gian - VnExpress
Chân Khơng Vật Chất - Nơi Vật Chất Tạo Nên Khơng Gian (Michel ...
Câu hỏi cĩ nhãn là Động vật, nhưng trong 5 kết quả tìm kiếm được trả về từ máy
tìm kiếm google lại cho ra 4 kết quả khơng liên quan tới động vật, mà chỉ cĩ một kết
quả liên quan tới động vật là câu: Động vật đầu tiên bay vào khơng gian. Điều này đã
tạo ra nhiễu cho mơ hình huấn luyện, làm cho việc huấn luyện khơng chính xác, và do
đĩ kết quả phân loại sẽ khơng được tốt. Yêu cầu đặt ra cần phải cĩ thêm các nghiên
cứu với các phương pháp khác để cĩ thể cải thiện tốt hơn độ chính xác trong việc phân
loại câu hỏi.
GVHD: TS. Ngơ Xuân Bách 44 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
KẾT LUẬN
Phân loại câu hỏi tiếng Việt vẫn là một vấn đề cịn khá mới, nhưng nĩ cĩ ý nghĩa
vơ cùng quan trọng. Từ việc giải quyết bài tốn phân loại câu hỏi tiếng Việt, giúp cho
chúng ta tiến gần hơn việc cĩ thể xây dựng được một hệ thống hỏi đáp dành riêng cho
tiếng Việt, gĩp phần đem lại sự thuận tiện hơn cho người dùng trong việc thu thập và
tìm kiếm thơng tin tiếng Việt. Ngồi ra, chúng ta cĩ thể dựa vào nghiên cứu này để
phát triển trí tuệ nhân tạo cho robot, giúp chúng cĩ thể hiểu và trả lời các câu hỏi tiếng
Việt, từ đĩ cĩ thể giải quyết được các cơng việc của con người, cĩ thể làm việc dựa
trên mệnh lệnh mà con người đưa ra.
Nhìn chung, đồ án đã đạt được một số thành tựu như:
- Trình bày một cách khái quát nhất về hệ thống hỏi đáp tự động và nêu lên ý
nghĩa, vai trị của bài tốn phân loại câu hỏi tiếng Việt.
- Khảo sát, nghiên cứu 5 loại đặc trưng tiếng Việt khác nhau cho bài tốn phân
loại câu hỏi tiếng Việt.
- Nghiên cứu và làm thực nghiệm với 3 thuật tốn học máy khác nhau.
- So sánh và phân tích các kết quả thực nghiệm và chúng tơi đã tìm ra được
trường hợp cho kết quả tốt nhất.
- Từ kết quả thực nghiệm, chúng tơi xây dựng thành cơng một ứng dụng demo
giúp phân loại câu hỏi dựa trên các đặc trưng khác nhau.
Đồ án vẫn cịn một số hạn chế như:
- Nghiên cứu vẫn cịn đơn giản.
- Kết quả thực nghiệm đạt được vẫn chưa thực sự tốt so với những nghiên cứu
trước đây. Đặc biệt với việc bổ sung các câu truy vấn đã làm cho kết quả thực
nghiệm khơng những khơng tăng lên mà cịn giảm đi.
- Phần mềm demo vẫn cịn hạn chế, tốc độ xử lý vẫn cịn chậm, đặc biệt là khi
dự đốn với đặc trưng nhãn từ loại và cây cú pháp.
Về hướng phát triển tương lai, chúng tơi sẽ tiến hành phát triển một tập dữ liệu
tiếng Việt lớn hơn và nghiên cứu sử dụng thêm nhiều đặc trưng tiếng Việt khác, gĩp
phần cải thiện tốt hơn khả năng phân loại. Ngồi ra chúng tơi cũng sẽ nghiên cứu và
thử nghiệm với một số thuật tốn khác để tìm ra thuật tốn phù hợp nhất với bài tốn
phân loại câu hỏi tiếng Việt.
GVHD: TS. Ngơ Xuân Bách 45 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
PHỤ LỤC
A. Cơng cụ sử dụng
Bảng A-1: Các cơng cụ sử dụng
Cơng cụ Trang chủ
Java SE JDK 7u21
Netbean 8.0.1 https://netbeans.org/
Notepad++
vnTokenizer
vnTagger
VnDP: A Vietnamese
dependency parsing
toolkit
libSVM https://www.csie.ntu.edu.tw/~cjlin/libsvm/
Weka
B. Chƣơng trình demo
Phần này trình bày hệ thống phân loại câu hỏi của chúng tơi. Hệ thống nhận đầu
vào là câu hỏi của người dùng dưới dạng ngơn ngữ tự nhiên và trả về nhãn phân loại
cho từng câu hỏi của người dùng.
Người dùng cĩ thể nhập câu hỏi theo 2 cách:
- Cách 1: Nhập bằng tay, người dùng tự gõ câu hỏi vào ơ question
- Cách 2: Nhập bằng file, người dùng tự gõ đường dẫn file hoặc duyệt đến file
chứa câu hỏi và click nút import để nhập tất cả câu hỏi trong file vào ơ
question.
GVHD: TS. Ngơ Xuân Bách 46 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
Hình B-1: Giao diện nhập câu hỏi bằng tay.
Hình B-2: Giao diện nhập câu hỏi bằng file.
Sau khi nhập câu hỏi, người dùng cĩ thể lựa chọn một trong ba tùy chọn trích
xuất đặc trưng:
- Syllables: chỉ sử dụng âm tiết của câu hỏi
- Syllables and pos: sử dụng âm tiết của câu hỏi và nhãn từ loại
- Syllables and pos and dependency: sử dụng âm tiết của câu hỏi, nhãn từ loại
và đặc trưng cú pháp của câu.
Bước tiếp theo người dùng click vào nút predict và chờ đợi, hệ thống sẽ xử lý câu
hỏi, trích xuất đặc trưng và đưa ra nhãn dự đốn cho câu hỏi đĩ trong ơ Label.
GVHD: TS. Ngơ Xuân Bách 47 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
Sau khi chương trình thực hiện xong, người dùng cĩ thể click vào nút Clear để
xĩa dữ liệu trong hai ơ Question và ơ Label và tiếp tục chương trình với các câu hỏi
mới.
Hình B-3: Giao diện chạy chương trình.
GVHD: TS. Ngơ Xuân Bách 48 SVTH: Nguyễn Đình Nghị – D11CNPM3
ĐỒ ÁN TỐT NGHIỆP
TÀI LIỆU THAM KHẢO
Tài liệu tiếng Anh
[1] I. Fahmi (2009). Automatic term and relation extraction for medical question
answering system. PhD Thesis, the University o
Các file đính kèm theo tài liệu này:
- do_an_cac_dac_trung_ngon_ngu_cho_bai_toan_phan_loai_cau_hoi.pdf