Thông tin tài liệu
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Quốc Đại
PHƢƠNG PHÁP XÂY DỰNG
HỆ THỐNG HỎI ĐÁP TIẾNG VIỆT
DỰA TRÊN ONTOLOGY
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
HÀ NỘI – 2009
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Quốc Đại
PHƢƠNG PHÁP XÂY DỰNG
HỆ THỐNG HỎI ĐÁP TIẾNG VIỆT
DỰA TRÊN ONTOLOGY
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
Giảng viên hƣớng dẫn: TS. Phạm Bảo Sơn
HÀ NỘI – 2009
To My Family
Phương pháp xây dựng hệ thống hỏi đáp tiếng Việt dựa trên Ontology Nguyễn Quốc Đại
i
Lời cảm ơn
Đầu tiên, em xin gửi lời cám ơn chân thành nhất tới TS. Phạm Bảo Sơn. Thầy đã
hướng dẫn, chỉ bảo và truyền đạt những kinh nghiệm giúp em hoàn thành khóa luận.
Em cũng xin gửi lời cám ơn tới TS. Bùi Thế Duy. Thầy đã tạo điều kiện thuận lợi
và có những ý kiến đóng góp cho em.
Tôi xin cám ơn các bạn Nguyễn Quốc Đạt, Nguyễn Bá Đạt, Trần Bình Giang,
Phạm Đức Đăng. Các bạn đã giúp đỡ, cũng như chia sẻ những nghiên cứu để tôi có thể
áp dụng trong khóa luận.
Tôi cũng xin cám ơn các bạn Ngô Thị Thảo, Tạ Thị Bích Hiền, Nguyễn Hà
Phương đã giúp đỡ tôi khi khó khăn.
Cuối cùng, con xin gửi lời cám ơn sâu sắc nhất tới bố mẹ. Bố mẹ đã sinh thành,
nuôi dưỡng, quan tâm và chăm sóc cho con. Con xin cám ơn bố mẹ!
Hà Nội, 24-5-2009
Nguyễn Quốc Đại
Phương pháp xây dựng hệ thống hỏi đáp tiếng Việt dựa trên Ontology Nguyễn Quốc Đại
ii
Tóm tắt
Hỏi đáp (question answering) là nhiệm vụ tự động trả lời câu hỏi dưới dạng ngôn
ngữ tự nhiên. Nghiên cứu các hệ thống hỏi đáp đang nhận được nhiều quan tâm trên
thế giới. Các nghiên cứu hiện nay sử dụng nhiều phương pháp xử lý ngôn ngữ tự nhiên
cùng với Ontology được sử dụng làm cơ sở tri thức. Nhu cầu tìm kiếm thông tin tiếng
Việt dưới dạng hỏi đáp là rất lớn nhưng các hệ thống hỏi đáp cho tiếng Việt còn chưa
có nhiều nghiên cứu ứng dụng cụ thể.
Chúng tôi giới thiệu một hệ thống hỏi đáp tiếng Việt dựa trên Ontology. Hệ thống
này có thể áp dụng đối với nhiều miền ứng dụng cụ thể. Chúng tôi thiết kế một
Ontology thử nghiệm. Sử dụng Ontology này, chúng tôi đưa ra cách trích rút câu trả
lời cho hệ thống hỏi đáp này. Các đánh giá cho thấy hệ thống làm việc tốt khi trả lời
các câu hỏi được đưa ra.
Keywords: hỏi đáp, ánh xạ Ontology, trích chọn câu trả lời.
Phương pháp xây dựng hệ thống hỏi đáp tiếng Việt dựa trên Ontology Nguyễn Quốc Đại
iii
Mục lục
Lời cảm ơn i
Tóm tắt ii
Mục lục iii
Danh sách từ viết tắt vi
Danh sách hình vẽ vii
Danh sách bảng ix
Chƣơng 1. Giới thiệu 1
Chƣơng 2. Tổng quan về hỏi đáp 3
2.1 Tổng quan về hệ thống hỏi đáp dựa trên Ontology 3
2.2 Khái niệm về hỏi đáp (Question Answering – QA) 6
2.2.1 Khái niệm hỏi đáp 6
2.2.2 Kiến trúc hỏi đáp 6
2.2.3 Các phương pháp hỏi đáp 7
2.3 Giao diện ngôn ngữ tự nhiên miền đóng 9
2.4 Các hệ thống QA miền mở 10
2.5 Ontologies trong QA 12
Chƣơng 3. Ontology – Sesame 14
3.1 Khái niệm về Ontology 14
3.1.1 Khái niệm 14
3.1.2 Tổng quan về Ontology 14
3.1.2.1 Các thành phần của Ontology 15
3.1.2.2 Các thực thể 15
3.1.2.3 Các lớp 16
3.1.2.4 Thuộc tính 17
Phương pháp xây dựng hệ thống hỏi đáp tiếng Việt dựa trên Ontology Nguyễn Quốc Đại
iv
3.1.2.5 Các mối quan hệ 17
3.2 Ngôn ngữ Web Ontology (Web Ontology Language) 19
3.2.1 OWL Ontology 19
3.2.2 Mối quan hệ logic mô tả (Description logics – DLs) 20
3.2.3 Các dạng OWL 20
3.3 Sesame 21
3.3.1 Khái niệm về Sesame 21
3.3.1.1 Sesame Server 21
3.3.1.2 Kho dữ liệu và suy luận (Repositories and Inferencing) 22
3.3.1.3 Tổng quan kiến trúc Sesame 22
3.3.2 Cài đặt Sesame 23
3.3.2.1 Cài đặt thư viện Sesame 23
3.3.2.2 Cài đặt máy chủ Sesame 24
3.3.2.3 Quản trị máy chủ 25
3.3.3 Giao diện web của Sesame 27
3.3.3.1 Đăng nhập 27
3.3.3.2 Thêm dữ liệu vào một kho dữ 28
Chƣơng 4. Hệ thống hỏi đáp tiếng Việt dựa trên Ontology 29
4.1 Kiến trúc tổng quan của hệ thống 29
4.2 Xử lý câu hỏi ngôn ngữ tự nhiên 32
4.3 Thiết kế Ontology bằng Protege 34
4.3.1 Thiết kế các lớp trong Ontology 35
4.3.2 Thiết kế thuộc tính trong Ontology 36
4.4 Ánh xạ Ontology 38
4.4.1 Ánh xạ Ontology cho câu hỏi đơn giản 39
4.4.1.1 Ánh xạ Ontology đối với loại câu hỏi NORMAL 42
4.4.1.2 Ánh xạ Ontology đối với loại câu hỏi UNKN_REL 43
4.4.1.3 Ánh xạ Ontology đối với loại câu hỏi UNKN_TERM 44
4.4.1.4 Ánh xạ Ontology đối với loại câu hỏi AFFIRM_NEG 46
4.4.2 Ánh xạ Ontology đối với loại câu hỏi ―THREETERM‖ 47
4.5 Trích chọn câu trả lời 51
Phương pháp xây dựng hệ thống hỏi đáp tiếng Việt dựa trên Ontology Nguyễn Quốc Đại
v
4.5.1 Trích chọn câu trả lời cho loại câu hỏi ―NORMAL‖, ―UNKN_REL‖ 52
4.5.2 Trích chọn câu trả lời cho loại câu hỏi ―UNKN_TERM‖ 54
4.5.3 Trích chọn câu trả lời cho loại câu hỏi ―AFFIRM_NEG‖ 56
4.5.4 Trích chọn câu trả lời cho loại câu hỏi ―THREETERM‖ 57
Chƣơng 5. Kết quả thực nghiệm và thảo luận 59
5.1 Kết quả thực nghiệm 59
5.2 Thảo luận 61
Chƣơng 6. Kết luận 62
Phụ lục A 63
Tài liệu tham khảo 66
Phương pháp xây dựng hệ thống hỏi đáp tiếng Việt dựa trên Ontology Nguyễn Quốc Đại
vi
Danh sách từ viết tắt
STT
Kí hiệu
Từ tiếng Anh
Ngữ nghĩa
1
NLP
Natural Language Processing
Xử lý ngôn ngữ tự nhiên
2
QA
Question Answering
Hỏi đáp
3
API
Application program interface
Giao diện chương trình ứng dụng
Phương pháp xây dựng hệ thống hỏi đáp tiếng Việt dựa trên Ontology Nguyễn Quốc Đại
vii
Danh sách hình vẽ
Hình 2.1. Tổng quan về hệ thống hỏi đáp dựa trên Ontologies [2] 4
Hình 3.1. Ví dụ về lớp trong Ontology [58] 16
Hình 3.2. Ví dụ về lớp ô tô 18
Hình 3.3. Sesame server [59] 21
Hình 3.4. Kiến trúc của Sesame [59] 22
Hình 3.5. Cấu hình Sesame 25
Hình 3.6. Cấu hình kho dữ liệu có sẵn trong Sesame 26
Hình 3.7. Giao diện web của Sesame 28
Hình 4.1. Kiến trúc tổng quan của hệ thống hỏi đáp tiếng Việt dựa trên Ontology 29
Hình 4.2. Kiến trúc của thành phần tìm kiếm câu trả lời 30
Hình 4.3. Các lớp trong Ontology về trường đại học 36
Hình 4.4. Các thuộc tính trong Ontology về trường đại học 37
Hình 4.5. Tổng quan về ánh xạ Ontology đối với câu hỏi đơn giản 40
Hình 4.6. Ví dụ hỏi đáp đối với loại câu hỏi ―NORMAL‖ 42
Hình 4.7. Ánh xạ Ontology tương tác với người dùng đối với loại câu hỏi
―UNKN_REL‖ 43
Hình 4.8. Ví dụ hỏi đáp đối với loại câu hỏi ―UNKN_TERM‖ 44
Hình 4.9. Ví dụ hỏi đáp đối với loại câu hỏi ―UNKN_TERM‖ 45
Hình 4.10. Ví dụ hỏi đáp đối với loại câu hỏi AFFIRM_NEG 46
Hình 4.11. Tổng quan ánh xạ Ontology với loại câu hỏi ―THREETERM‖ 47
Hình 4.12. Ví dụ hỏi đáp đối với câu hỏi về số lượng 51
Hình 4.13. Trích chọn câu trả lời đối với loại câu hỏi ―NORMAL‖, ―UNKN_REL‖ 52
Hình 4.14. Ví dụ hỏi đáp đối với loại câu hỏi ―NORMAL‖, ―UNKN_REL‖ 53
Hình 4.15. Thành phần trích chọn câu trả lời đối với loại câu hỏi ―UNKN_TERM‖ 54
Hình 4.16. Ví dụ hỏi đáp đối với loại câu hỏi ―UNKN_TERM‖ 55
Hình 4.17. Ví dụ hỏi đáp đối với loại câu hỏi ―UNKN_TERM‖ 55
Hình 4.18. Thành phần trích chọn câu trả lời đối với loại câu hỏi ―AFFIRM_NEG‖ 56
[...].. .Phương pháp xây dựng hệ thống hỏi đáp tiếng Việt dựa trên Ontology Nguyễn Quốc Đại Hình 4.19 Ví dụ hỏi đáp đối với loại câu hỏi ―AFFIRM_NEG‖ 56 Hình 4.20 Thành phần trích chọn câu trả lời đối với loại câu hỏi ―THREETERM‖ 57 Hình 4.21 Ví dụ hỏi đáp đối với loại câu hỏi ―THREETERM‖ 58 viii Phương pháp xây dựng hệ thống hỏi đáp tiếng Việt dựa trên Ontology Nguyễn Quốc Đại... chúng tôi đề xuất ―Phƣơng pháp xây dựng hệ thống hỏi đáp tiếng Việt dựa trên Ontology Phương pháp của chúng tôi có thể áp dụng cho nhiều miền tri thức Dựa vào phương pháp của mình, chúng tôi xây dựng một hệ thống thử nghiệm trên miền tri thức trường đại học, mà cụ thể là miền tri thức về Đại học Công Nghệ Chúng tôi thiết kế một Ontology thử nghiệm cho miền tri thức này Các câu hỏi liên quan đến miền... luận, và những kết quả mà hệ thống hỏi đáp tiếng Việt dựa trên Ontology đã đạt được 2 Chương 3 Ontology – Sesame Nguyễn Quốc Đại Chƣơng 2 Tổng quan về hỏi đáp 2.1 Tổng quan về hệ thống hỏi đáp dựa trên Ontology Trong tìm kiếm thông tin, hỏi đáp (Question Answering – QA) là nhiệm vụ tự động trả lời câu hỏi dưới dạng ngôn ngữ tự nhiên Để tìm câu trả lời cho một câu hỏi, một chương trình máy tính có thể... Aqualog tìm kiếm các mối quan hệ giữa các thuật ngữ, hoặc giữa một thuật ngữ với giá trị của nó AquaLog dùng một bộ ba cho một mối quan hệ giữa các thuật ngữ, cho dù mối quan hệ này không rõ ràng Chúng tôi tin tưởng vào các ưu điểm chính của một hệ thống hỏi đáp dựa trên Ontology trong Web ngữ nghĩa Khi đã so sánh các loại hệ thống hỏi đáp khác nhau, hệ thống hỏi đáp dựa trên Ontology có thể sử dụng miền... thiệu vài hệ thống hỏi đáp có sử dụng Ontology Chúng tôi mô tả qua một số ưu nhược điểm của các hệ thống đó, đồng thời cũng giới thiệu qua các phương pháp mà các hệ thống này sử dụng để tìm kiếm câu trả lời cho câu hỏi 8 Chương 3 Ontology – Sesame Nguyễn Quốc Đại 2.3 Giao diện ngôn ngữ tự nhiên miền đóng Giao diện ngôn tự nhiên (Natural Language Interface) miền đóng là các hệ thống hỏi đáp dựa trên cơ... mục 2.3, chúng tôi đưa ra tổng quan một số hệ thống hỏi đáp được phân loại dựa trên miền đóng và miền mở 2.2.2 Kiến trúc hỏi đáp Hệ thống QA đầu tiên phát triển vào những năm 1960 [64] Các hệ thống này về cơ bản là các giao diện ngôn ngữ tự nhiên đối với các hệ chuyên gia - những hệ thống được xây dựng riêng cho từng miền ứng dụng cụ thể Nguợc lại, các hệ thống QA ngày nay lại sử dụng các tài liệu... việc xây dựng một hệ trống QA dựa vào Ontology trong ngữ cảnh của một web ngữ nghĩa Các tác giả đã nghiên cứu phương pháp này trên ngữ cảnh một dự án mang tên MOSES, với mục tiêu phát triển một phuơng pháp luận dựa vào Ontology để tìm kiếm, tổ chức, bảo trì và thích hợp với những nội dung Web có cấu trúc về ngữ nghĩa Basili et al [9] nghiên cứu xem phương pháp dựa trên Ontology này có thể hỗ trợ cho hỏi. .. không đáp ứng được, thì hệ thống dùng các xử lý phức tạp như phân tích cú pháp, phân tích ngữ nghĩa và ngữ cảnh của câu hỏi Dựa vào đó, hệ thống tách ra hoặc cấu tạo nên câu trả lời Những kỹ thuật này có thể bao gồm kỹ thuật nhận dạng thực thể có tên, phương pháp nhận biết mối quan hệ, phân tích từ đồng nghĩa, các kỹ thuật biến đổi cú pháp, phương pháp loại bỏ nhập nhằng về nghĩa của từ, phương pháp. .. xử lý các loại câu hỏi: sự kiện, danh sách, định nghĩa, các câu hỏi như thế nào, tại sao, các câu hỏi mang tính giả thuyết, các câu hỏi hạn chế về ngữ nghĩa và câu hỏi sử dụng đa ngôn ngữ Có hai khái niệm trong hỏi đáp là hỏi đáp miền đóng và hỏi đáp miền mở Hỏi đáp miền đóng (closed-domain) xử lý các câu hỏi trong một miền cụ thể, và có thể xem như một nhiệm vụ đơn giản vì các hệ thống xử lý ngôn ngữ... nhiều phương pháp NLP để nhận ra được nội dung văn bản Hỏi đáp (QA) thống kê giới thiệu các module xử lý câu hỏi dựa vào thống kê và trích chọn ra câu trả lời Nhiều công cụ NLP như kỹ thuật nhận dạng thực thể có tên, phân tích cú pháp, gán nhãn từ loại, nhận dạng ranh giới câu và phục hồi tài liệu có thể sử dụng như là các ứng dụng thống kê Mục dưới đây, chúng tôi tìm hiểu một số hệ thống hỏi đáp dựa . ―Phƣơng pháp xây dựng hệ thống hỏi
đáp tiếng Việt dựa trên Ontology . Phương pháp của chúng tôi có thể áp dụng cho
nhiều miền tri thức. Dựa vào phương pháp. câu hỏi ―AFFIRM_NEG‖ 56
Phương pháp xây dựng hệ thống hỏi đáp tiếng Việt dựa trên Ontology Nguyễn Quốc Đại
viii
Hình 4.19. Ví dụ hỏi đáp đối
Ngày đăng: 18/02/2014, 00:08
Xem thêm: phương pháp xây dựng hệ thống hỏi đáp tiếng việt dựa trên ontology, phương pháp xây dựng hệ thống hỏi đáp tiếng việt dựa trên ontology