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 toà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.
                
              
                                            
                                
            
 
            
                 11 trang
11 trang | 
Chia sẻ: vietpd | Lượt xem: 4909 | Lượt tải: 1 
              
            Bạn đang xem nội dung tài liệu Tổng quan về hệ thống hỏi-Đáp tự động, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Trang 4 
Chương 1. 
TỔNG QUAN VỀ 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 
toà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. 
Chương này sẽ trình bày các vấn đề sau: 
9 Giới thiệu về hệ thống hỏi-đáp tự động (QA) 
9 Sơ lược lịch sử phát triển 
9 Kiến trúc hệ thống hỏi-đáp 
9 Một số vấn đề quan tâm khi xây dựng hệ thống hỏi-đáp 
9 Hệ thống hỏi-đáp tiếng Việt 
1.1 Hệ thống hỏi-đáp tự động. 
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. 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 
(Natural Language Processing), tìm kiếm thông tin (Information Retrieval) và rút 
trích thông tin (Information Extraction). 
Trang 5 
Hình 1-1: Lĩnh vực hỏi-đáp tự động 
Có hai 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. 
• 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ứ. 
1.2 Sơ lược lịch sử phát triển 
Thiết kế một hệ thống hỏi-đáp không phải là khái niệm mới. Một số hệ thống 
đầu tiên đã được ra đời từ những năm 1960. Một ví dụ của một hệ thống như vậy là 
hệ thống BASEBALL được phát triển năm 1961 do nhóm tác giả Green, Chomsky, 
và Laughery [9]. Hệ thống này được thiết kế để cung cấp các thông tin về các số 
liệu thống kê của liên đoàn bóng chày Mỹ. Một hệ thống khác tương tự như 
BASEBALL đã được phát triển bởi Woods (1973) [32] và được đặt tên LUNAR. 
LUNAR có thể trả lời các câu hỏi liên quan đến các mẫu đá trở về từ tàu thăm dò 
mặt trăng Apollo. Hệ thống này dịch các câu hỏi thành một hay nhiều truy vấn cơ 
Trang 6 
sở dữ liệu. Hệ thống TEAM được phát triển bởi Grosz (1983) [10] đã có những đặc 
điểm cơ bản như một chuỗi các biểu diễn ngữ nghĩa và một lược đồ phiên dịch làm 
cho nó tốt hơn 2 hệ thống trước. Điểm tương đồng giữa cả ba hệ thống là tất cả đều 
sử dụng cơ sở dữ liệu để lưu trữ cơ sở tri thức. Việc thiết kế của cơ sở dữ liệu này 
và các dữ liệu có cấu trúc được xây dựng một cách thủ công bởi tất cả các chuyên 
gia trong các lĩnh vực tương ứng. 
Xử lý ngôn ngữ tự nhiên trong quá trình thực hiện đã nhận được rất nhiều sự 
quan tâm trong những năm 1970. Một trong những hệ thống như thế là Margie 
(Schank, Goldman, Riesbeck, & Rieger, 1975) [25]. Hệ thống này đã có thể xử lý 
các tài liệu mà sau này có thể trả lời các câu hỏi cơ bản. Điều này được thực hiện 
bằng cách phân tích và tổ chức tài liệu của thông tin trong một mô hình tương tự 
như bộ nhớ của con người. Điều này đã được cải thiện hơn bởi Lenhert, Dyer, 
Johnson, Yang, và Harley (1983) [17] trong hệ thống Boris. Boris và Margie là các 
hệ thống gần giống nhất với hệ thống hỏi-đáp lĩnh vực rộng (open-domain) hoạt 
động ngày nay. 
Hệ thống hỏi-đáp nhận được rất nhiều mối quan tâm của cộng đồng các nhà 
nghiên cứu. Điều này bắt nguồn từ việc một lượng tài liệu lớn có gắn chỉ mục sẵn 
có trên Internet, cùng với các thành tựu trong lĩnh vực rút trích thông tin và sự gia 
tăng nhu cầu thương mại cho các sản phẩm QA trên toàn cầu. Một lợi thế nữa, dễ 
dàng cho việc phát triển các hệ thống QA phức tạp hơn, là các nguồn tài nguyên 
như là WordNet (Fellbaum, 1998) [8] và OpenCyc (Curtis, Matthews, & Baxter, 
2005) [4]. WordNet cung cấp sự truy cập tới các thông tin ngữ nghĩa và các mối 
liên hệ ngữ nghĩa giữa các cụm từ. OpenCyC cung cấp sự truy cập tới thông tin 
ontology và tri thức thông dụng. Cả 2 hệ thống này đều được cung cấp miễn phí. 
Hội thảo TREC (Text Retrieval and Evaluation Conference) [29] về lĩnh vực 
QA năm 1999 đã đóng góp một phần to lớn cho sự phát triển của lĩnh vực QA với 
20 thành viên tham gia. Sự kiện này đã thúc đẩy các nhà nghiên cứu chia sẻ kinh 
nghiệm và so sánh kết quả của họ sử dụng một độ đo chung. 
Trang 7 
Rất nhiều phương pháp tiếp cận khác nhau được sử dụng trong các hệ thống 
hỏi-đáp gần đây như phương pháp thống kê, phương pháp dựa trên luật, và các 
phương pháp tổng hợp. Hầu hết các hệ thống hỏi-đáp ngày càng trở nên phức tạp, 
thường sử dụng rất nhiều các mô-đun khác nhau, chẳng hạn như tìm kiếm thông tin, 
phân tích cú pháp câu, phân tích loại câu hỏi, phân tích ngữ nghĩa, và thậm chí dùng 
phương pháp suy luận (Moldovan et al., 2002) [21] để đánh giá, và xếp hạng câu trả 
lời. Với sự gia tăng tính phức tạp của hệ thống hỏi-đáp, sẽ rất khó khăn để xác định 
hiệu quả của hệ thống đến từ hiệu quả của giai đoạn nào. 
1.3 Kiến trúc hệ thống hỏi-đáp 
Hệ thống hỏi-đáp phát triển từ lĩnh vực tìm kiếm thông tin (IR). IR truyền 
thống thực hiện tìm kiếm thông tin dựa trên từ khóa của các câu truy vấn. Trong quá 
trình tìm kiếm, các từ khóa sẽ được so khớp (matching) với một chỉ mục tài liệu 
tham khảo cho các tài liệu khác nhau. Mô hình cơ bản của một hệ thống IR [20] có 
kiến trúc như sau: 
Trang 8 
 Tập tài liệu 
Giao diện 
Viết lại 
truy vấn 
Tìm ki ếm Xếp hạng Lập chỉ mục 
truy vấn
Lập chỉ mục 
tài liệu 
Tài liệu 
văn bản 
Tài liệu 
Các tài 
liệu đã 
xếp hạng 
Từ khóa của truy vấn 
Truy vấn đã tinh chế 
Tài liệu Từ khóa 
Yêu cầu 
Cơ sở dữ liệu 
Hình 1-2: Hệ thống tìm kiếm thông tin 
Các hệ thống IR thường không giúp được người sử dụng tìm ra chính xác 
thông tin mà người dùng cần, nó chỉ có thể tổng hợp các thông tin tồn tại trong hệ 
thống và tìm các văn bản có liên quan đến yêu cầu của người sử dụng. Tính năng 
này là một bước tiến gần hơn để xây dựng một hệ thống hỏi-đáp. 
Kiến trúc chung của các hệ thống hỏi-đáp [20] thường có dạng như sau: 
Trang 9 
Dữ liệu dưới dạng văn bản 
Xác minh câu trả 
lời 
Giao diện người 
dùng
Phân tích câu hỏi 
Câu hỏi bằng ngôn 
ngữ tự nhiên 
Tìm kiếm dữ liệu 
Câu trả lời bằng 
ngôn ngữ tự nhiên
Câu trả lời đã 
xếp hạng 
Hình 1-3: Kiến trúc hệ thống hỏi-đáp [20]
1.3.1 Giao diện người dùng (User Interface) 
Hầu hết các hệ thống hỏi-đáp đã được triển khai thực hiện trong thời gian 
gần đây cung cấp cho người dùng một giao diện web mà người dùng có thể nhập 
câu hỏi vào ([1],[26],[27]…). 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ự. Giao diện người 
dùng là một phần quan trọng của hệ thống hỏi-đáp nhưng không có nhiều nghiên 
cứu dành cho nó. Nhiều giao diện mô phỏng giao diện của một máy tìm kiếm. Hệ 
thống không những chỉ đưa ra câu trả lời đúng mà còn đưa ra các câu trả lời khác 
gần đúng với nội dung câu hỏi do người dùng nhập vào. 
1.3.2 Phân tích câu hỏi (Question Analyzer) 
Phân tích câu hỏi đóng vai trò quan trọng trong bất kỳ loại hình hệ thống hỏi-
đáp nào. Trong giai đoạn này, 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. Kết quả của bước này khác nhau tùy theo việc phân tích câu hỏi nông hay 
Truy vấn đã tinh chế 
Xếp hạng 
Rút trích câu trả 
lời 
Tài 
nguyên 
hỏi-đáp 
Các tài liệu 
Web Internet 
Cơ sở dữ 
liệu 
Các tài liệu 
văn bản 
Truy vấn
Câu trả lời 
Cơ sở tri thức 
Trang 10 
sâu. Ví dụ, việc phân tích có thể tách những từ vựng trong câu hỏi và sử dụng tất cả 
mọi thứ hay là loại bỏ các hư từ (stopword) để nhằm phân tích cú pháp của câu 
[26]. Hư từ trong tiếng Anh có thể là các từ như là is, he, which,… Trong các hệ 
thống mở, thông thường một phần của câu hỏi sẽ thường được nhắc lại trong câu trả 
lời. Ví dụ: 
• Tháp Eiffel nằm ở đâu? (câu hỏi ban đầu) 
• Tháp Eiffel nằm (một phần của câu trả lời) 
• Tháp Eiffel nằm gần (một phần của câu trả lời) 
• Tháp Eiffel có thể được tìm thấy tại (một phần của câu trả lời) 
Bằng cách đó một vài phần của câu trả lời có thể được sử dụng khi tìm kiếm 
thông qua các tập tài liệu. Mở rộng câu hỏi là một cách khác làm tăng khả năng tìm 
thấy các tài liệu có chứa các câu trả lời. Từ để hỏi cũng có thể được mở rộng với 
nhiều cụm từ khác nhau bằng cách sử dụng từ đồng nghĩa [16]. Các đặc trưng khác 
của câu hỏi cũng có thể được sử dụng đến, ví dụ như loại câu hỏi [3]. 
1.3.3 Tìm kiếm dữ liệu (Data Retrieval) 
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. Điều này có thể được thực hiện 
bằng nhiều phương pháp khác nhau. Một hệ thống hỏi-đáp lĩnh vực rộng (open-
domain) sẽ sử dụng một máy tìm kiếm (search engine) để tìm kiếm các tài liệu được 
phân phối qua internet. Một hệ thống lĩnh vực hẹp (closed-domain) có thể tìm kiếm 
trong các nguồn dữ liệu không có cấu trúc, bán cấu trúc, hoặc có cấu trúc ví dụ như 
một cơ sở dữ liệu. Trong phần này, thông tin được tiền xử lý nhiều lần để tăng hiệu 
quả của hệ thống. Tìm kiếm dữ liệu trong một hệ thống hỏi-đáp tương tự với giai 
đoạn tìm kiếm dữ liệu trong hệ thống IR, sử dụng các phương pháp tìm kiếm như là 
phương pháp tìm kiếm từ khóa dạng Boolean hoặc phương pháp đánh trọng số từ 
khóa [16]. Trong giai đoạn tìm kiếm dữ liệu của hệ thống hỏi-đáp, điều quan trọng 
là lấy càng nhiều thông tin có liên quan đến câu hỏi càng tốt. Chất lượng của việc 
tìm kiếm tài liệu sẽ ít quan trọng hơn bởi vì kết quả sẽ không cần thiết phải được 
Trang 11 
hiển thị ra giao diện cho người dùng. Điều quan trọng là những thông tin do người 
dùng yêu cầu sẽ được tìm thấy. 
1.3.4 Rút trích câu trả lời (Answer Extraction) 
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. Những thông tin này được sử dụng để rút trích các đoạn (passage) có liên 
quan ngữ nghĩa đến câu hỏi mà người dùng đưa ra. Có rất nhiều phương pháp được 
đưa ra trong việc rút trích các đoạn văn bản chứa câu trả lời, ví dụ như phương pháp 
phân đoạn tài liệu dựa trên chủ đề và so khớp với câu hỏi do người dùng đưa vào để 
chọn ra các phân đoạn tài liệu tương tự với câu hỏi người dùng đưa vào [13]… Một 
hệ thống QA lĩnh vực rộng có thể khác một một hệ thống QA lĩnh vực hẹp trong 
bước này. Một hệ thống lĩnh vực rộng sẽ luôn luôn có một tập các tài liệu hoặc một 
tập hợp các đoạn văn bản tóm tắt được trả về từ máy tìm kiếm. Phương pháp cơ bản 
nhất để phát sinh ra một câu trả lời là rút trích những phần thông tin có liên quan 
ngữ nghĩa nhất với câu hỏi. Các phần thông tin này được tổng hợp để tạo thành một 
câu trả lời hoặc nhiều câu trả lời. 
1.3.5 Chiến lược xếp hạng (Ranking) 
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. Có rất nhiều cách tiếp cận khác nhau để xác định mức 
độ liên quan của các câu trả lời và điều này liên quan mật thiết với cách xác định 
câu trả lời trong giai đoạn rút trích thông tin từ các tài liệu ở bước trước. Ví dụ như 
trong [3], tác giả đề xuất một chiến lược xếp hạng nhiều pha dựa trên sự kết hợp các 
độ đo tương tự giữa câu hỏi do người dùng đưa vào với câu hỏi và câu trả lời trong 
kho dữ liệu xác định từ giai đoạn trước. Trong [16] tác giả cũng đề xuất chiến lược 
xếp hạng dựa trên độ đo tương tự là sự kết hợp giữa độ đo tương tự từ khóa miền 
(domain keywords semilarity) và độ đo tương tự ngữ nghĩa từ phổ biến (common 
words semantic similarity). 
Trang 12 
1.3.6 Xác minh câu trả lời (Answer Verification) 
Một số hệ thống QA cải thiện thêm 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 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ác câu trả lời. 
1.4 Một số vấn đề quan tâm khi xây dựng hệ thống hỏi đáp 
Năm 2002, một nhóm các nhà nghiên cứu đã đưa ra một số vấn đề cần quan tâm 
như sau [2]: 
• Loại câu hỏi: Câu hỏi trong ngôn ngữ tự nhiên rất đa dạng, ẩn ý, nhập nhằng 
và phụ thuộc vào ngữ cảnh. Một số loại câu hỏi đang được quan tâm trong hệ 
thống hỏi đáp như câu hỏi về sự vật, sự kiện, định nghĩa, danh sách, quá 
trình, cách thức, lý do… Mỗi loại câu hỏi có những đặc trưng và khó khăn 
riêng, đòi hỏi phải có các chiến lược riêng để trả lời chúng. 
• Xử lý câu hỏi: Cùng một loại câu hỏi có thể được diễn đạt qua nhiều cách 
khác nhau. Một mô hình ngữ nghĩa cần xây dựng có khả năng xác định được 
các câu hỏi tương tự, các quan hệ ngữ pháp, đồng thời có thể chuyển một câu 
hỏi phức tạp thành chuỗi các câu hỏi đơn giản hơn. 
• Ngữ cảnh và hệ thống hỏi đáp: Câu hỏi thường được gắn với ngữ cảnh và 
câu trả lời cũng được đưa ra trong một ngữ cảnh xác định. Việc sử dụng các 
thông tin về ngữ cảnh giúp hệ thống hỏi đáp hiểu câu hỏi một cách rõ ràng, 
loại bỏ được các nhập nhằng và tăng tính chính xác của câu trả lời tìm được 
khi người dùng hỏi một loạt các câu hỏi liên quan đến cùng một ngữ cảnh. 
• Nguồn dữ liệu cho hệ thống hỏi đáp: Nguồn dữ liệu cho hệ thống hỏi đáp có 
thể là tập nhỏ các tài liệu của tổ chức, dữ liệu thu thập từ các nguồn như 
sách, báo chí hay các trang web. Tuy nhiên cần đảm bảo nguồn dữ liệu có độ 
tin cậy cao. 
Trang 13 
• Trích xuất câu trả lời: Việc trích xuất câu trả lời phụ thuộc vào nhiều yếu tố: 
độ phức tạp của câu hỏi, loại câu hỏi có được từ quá trình xử lý câu hỏi, dữ 
liệu chứa câu trả lời, phương pháp tìm kiếm và ngữ cảnh,… nhưng đảm bảo 
yêu cầu câu trả lời cho người dùng phải chính xác. 
1.5 Hệ thống hỏi-đáp tiếng Việt 
Lĩnh vực hỏi-đáp tiếng Việt còn khá mới mẻ và mới được quan tâm trong một 
vài năm gần đây. 
Trong luận văn [30] năm 2001, tác giả luận văn đề cập đến vấn đề hỏi-đáp tự 
động, tuy nhiên tác giả chỉ xây dựng hệ hỗ trợ cho hệ thống hỏi-đáp, hoàn toàn chưa 
đúng nghĩa là một hệ thống hỏi-đáp tự động. Ý tưởng của luận văn là các câu hỏi 
gởi lên diễn đàn sẽ được phân loại và phân phối tự động đến các chuyên gia có 
chuyên môn tương ứng. Quá trình phân loại dựa trên các luật phân lớp được rút 
trích tự động từ tập dữ liệu học là các câu hỏi đã gán nhãn. Các câu hỏi này vẫn sẽ 
được trả lời thủ công bởi các chuyên gia. 
Nhóm nghiên cứu khác thuộc trường Đại học Khoa học tự nhiên Tp HCM [24] 
đã nghiên cứu xây dựng hệ thống hỏi-đáp tiếng Việt dựa trên kỹ thuật rút trích quan 
hệ không giám sát. Ý tưởng chính của nghiên cứu này là sử dụng phương pháp học 
mẫu rút trích không giám sát Snowball [6] vào hệ thống hỏi-đáp tiếng Việt trả lời 
cho các câu hỏi hỏi về thủ đô của một quốc gia. Ngoài ra, nhóm nghiên cứu xử lý 
ngôn ngữ tự nhiên trường Đại học công nghệ, Đại học quốc gia Hà Nội [23] cũng 
nghiên cứu xây dựng hệ thống hỏi-đáp tiếng Việt sử dụng kỹ thuật rút trích quan hệ 
hai ngôi bằng cách kết hợp giữa hai phương pháp rút trích mẫu Snowball [6] và 
phương pháp sử dụng máy tìm kiếm của Ravichandran, Hovy [5]. Hai nghiên cứu 
này đều tập trung vào việc ứng dụng kỹ thuật rút trích quan hệ nhằm xây dựng hệ 
thống hỏi-đáp có thể áp dụng cho tiếng Việt. 
Trang 14 
Kết luận 
Trong chương này, chúng tôi đã trình bày tổng quan về hệ thống hỏi-đáp và 
hiện trạng hệ thống hỏi-đáp tiếng Việt cùng với một số vấn đề cần quan tâm khi xây 
dựng hệ thống hỏi-đáp. Hệ thống hỏi-đáp tự động là một công cụ hữu hiệu phục vụ 
cho nhu cầu tìm kiếm thông tin ngày càng cao của con người, nhưng hệ thống hỏi-
đáp tiếng Việt lại mới chỉ được quan tâm trong vài năm gần đây. Như vậy, việc xây 
dựng một hệ thống hỏi-đáp tiếng Việt là một nhu cầu cần thiết. Hướng tới mục tiêu 
này, chúng tôi xây dựng một hệ thống hỏi-đáp tự động tiếng Việt nhằm phục vụ cho 
một lĩnh vực cụ thể là diễn dàn tư vấn ghi danh trực tuyến.