Báo cáo Xây dựng hệ thống hỏi ðáp tự ðộng dựa trên ánh xạ câu hỏi (Phần 1)
Bạn đang xem 20 trang mẫu của tài liệu "Báo cáo Xây dựng hệ thống hỏi ðáp tự ðộng dựa trên ánh xạ câu hỏi (Phần 1)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bao_cao_xay_dung_he_thong_hoi_ap_tu_ong_dua_tren_anh_xa_cau.pdf
Nội dung text: Báo cáo Xây dựng hệ thống hỏi ðáp tự ðộng dựa trên ánh xạ câu hỏi (Phần 1)
- BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH CƠNG TRÌNH NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG XÂY DỰNG HỆ THỐNG HỎI ÐÁP TỰ ÐỘNG DỰA TRÊN ÁNH XẠ CÂU HỎI MÃ SỐ:T2013 – 21TÐ S K C0 0 5 4 6 7 Tp. Hồ Chí Minh, 2013
- BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH BÁO CÁO TỔNG KẾT ĐỀ TÀI KH&CN CẤP TRƢỜNG TRỌNG ĐIỂM XÂY DỰNG HỆ THỐNG HỎI ĐÁP TỰ ĐỘNG DỰA TRÊN ÁNH XẠ CÂU HỎI Mã số: T2013 – 21TĐ Chủ nhiệm đề tài: TS. Đặng Trƣờng Sơn TP. HCM, 11/2013
- TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH KHOA CƠNG NGHỆ THƠNG TIN BÁO CÁO TỔNG KẾT ĐỀ TÀI KH&CN CẤP TRƢỜNG TRỌNG ĐIỂM XÂY DỰNG HỆ THỐNG HỎI ĐÁP TỰ ĐỘNG DỰA TRÊN ÁNH XẠ CÂU HỎI Mã số: T2013 – 21TĐ Chủ nhiệm đề tài: TS. Đặng Trƣờng Sơn Thành viên đề tài: ThS. Đào Tiến Dũng TP. HCM, 11/2013 2
- DANH SÁCH NHỮNG THÀNH VIÊN THAM GIA NGHIÊN CỨU ĐỀ TÀI VÀ ĐƠN VỊ PHỐI HỢP CHÍNH 1. TS. Đặng Trƣờng Sơn 2. ThS. Đào Tiến Dũng 3
- MỤC LỤC MỤC LỤC 4 DANH MỤC BẢNG BIỂU, HÌNH VẼ 5 DANH MỤC CÁC CHỮ VIẾT TẮT 6 THƠNG TIN KẾT QUẢ NGHIÊN CỨU 7 MỞ ĐẦU 9 1. TÌNH HÌNH NGHIÊN CỨU TRONG VÀ NGỒI NƢỚC 9 2. MỤC TIÊU, CÁCH TIẾP CẬN 15 3. PHƢƠNG PHÁP, ĐỐI TƢỢNG VÀ PHẠM VI NGHIÊN CỨU 15 4. NỘI DUNG NGHIÊN CỨU 15 CHƢƠNG 1: CÁC KIẾN THỨC LIÊN QUAN 16 1.1. Xử lý ngơn ngữ tự nhiên (Natural Language Processing) 16 1.2. Mơ hình ngơn ngữ (language model) 20 1.3. Truy vấn thơng tin (Information Retrieval) 25 CHƢƠNG 2: XÂY DỰNG HỆ THỐNG 30 2.1. Mơ hình xử lý 30 2.2. Phân tích câu hỏi 37 2.3. Truy vấn thơng tin 42 CHƢƠNG 3: KẾT QUẢ THỰC NGHIỆM VÀ ĐÁNH GIÁ 48 3.1. Hiện thực hệ thống 48 3.2. Thực nghiệm 53 3.3. Kết quả - Đánh giá 55 KẾT LUẬN VÀ KIẾN NGHỊ 59 TÀI LIỆU THAM KHẢO 61 PHỤ LỤC 64 4
- DANH MỤC BẢNG BIỂU, HÌNH VẼ Bảng 1.1 : Tần suất của các từ trong 1 tài liệu 20 Bảng 1.2 : Tần suất của các từ trong các tài liệu khác nhau 21 Bảng 1.3 : Ví dụ về chỉ mục tài liệu 26 Bảng 1.4 : Chỉ số idf của một số từ trong tập Reuters gồm 806,791 tài liệu 29 Bảng 2.1 : Một số từ thƣờng xuất hiện nhƣng khơng cĩ ý nghĩa 32 Bảng 2.2 : Một số thuộc tính của mơ hình ngơn ngữ trong hệ thống 35 Bảng 2.3 : Bảng từ loại trong JVnTagger 38 Bảng 2.4 : Trọng số của các loại từ trong câu 42 Bảng 3.1 : Ví dụ độ đo MRR 54 Bảng 3.2 : Hiệu quả phân loại 55 Bảng 3.3 : Hiệu quả gom nhĩm + phân loại 55 Bảng 3.4 : Kết quả thay đổi ngƣỡng sT và pT 56 Bảng 3.5 : Hiệu quả tìm kiếm 57 Hình 1.1 : Kiến trúc hệ thống hỏi-đáp 11 Hình 2.1 : Lƣợc đồ quá trình hỏi – đáp tự động 31 Hình 2.2 : Thơng tin về một mẫu trong kho dữ liệu của hệ thống 31 Hình 2.3 : Các bƣớc tiền xử lý 34 Hình 2.5 : Các bƣớc phân tích truy vấn 37 Hình 2.6 : Một số bƣớc của quá trình mở rộng và cắt tỉa. 41 Hình 2.7 : Các bƣớc truy vấn thơng tin 43 Hình 3.1 : Giao diện chính 48 Hình 3.2 : Giao diện chính trên web 49 Hình 3.3 : Giao diện tìm kiếm 50 Hình 3.4 : Giao diện tìm kiếm trên web – câu trả lời 50 Hình 3.5 : Giao diện tìm kiếm trên web – câu hỏi khác 51 Hình 3.6 : Đánh giá kết quả thử nghiệm 52 5
- DANH MỤC CÁC CHỮ VIẾT TẮT AI Artificial Intelligence IE Information Extraction IR Information Retrieval MRR Mean Reciprocal Rank NLP Natural Language Processing QA Question Answering Tf-idf term frequency - inverse document frequency . 6
- TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT CỘNG HỒ XÃ HỘI CHỦ NGHĨA VIỆT NAM THÀNH PHỐ HỒ CHÍ MINH Độc lập - Tự do - Hạnh phúc KHOA CƠNG NGHỆ THƠNG TIN Tp. HCM, Ngày 25 tháng 11 năm 2013 THƠNG TIN KẾT QUẢ NGHIÊN CỨU 1. Thơng tin chung: Tên đề tài: Xây dựng hệ thống hỏi đáp tự động dựa trên ánh xạ câu hỏi Mã số: T2013-21TĐ Chủ nhiệm: TS. Đặng Trƣờng Sơn Cơ quan chủ trì: Trƣờng ĐH Sƣ Phạm Kỹ Thuật TP. HCM Thời gian thực hiện: 1/2013 – 12/2013 2. Mục tiêu: Nghiên cứu các vấn đề liên quan đến việc xây dựng hệ thống hỏi đáp. Xây dựng thử nghiệm một hệ thống hỏi đáp làm minh hoạ. 3. Tính mới và sáng tạo: Đề xuất hƣớng tiếp cận ánh xạ câu hỏi trong xây dựng các hệ thống hỏi đáp và xây dựng một hệ thống thử nghiệm làm minh chứng. 4. Kết quả nghiên cứu: Phân tích chi tiết việc sử dụng phƣơng pháp ánh xạ câu hỏi trong xây dựng hệ thống hỏi đáp trên nền tiếng Việt. 5. Sản phẩm: Báo cáo tổng kết phân tích phƣơng pháp đề xuất; mơ hình hệ thống và chƣơng trình mơ phỏng hệ thống hỏi đáp. Cĩ một bài báo khoa học đã đƣợc đăng. 6. Hiệu quả, phƣơng thức chuyển giao kết quả nghiên cứu và khả năng áp dụng: Cĩ thể làm tài liệu tham khảo cho sinh viên ngành CNTT và những cán bộ nghiên cứu liên quan. Trƣởng Đơn vị Chủ nhiệm đề tài (ký, họ và tên) (ký, họ và tên) 7
- INFORMATION ON RESEARCH RESULTS 1. General information: Project title: Developing QA Systems based on mapping questions approach Code number: T2013-21TĐ Coordinator: Dr. Dang Truong Son Implementing institution: University of Technical Education Ho Chi Minh City Duration: from January 2013 to December 2013 2. Objective(s): Research issues related to creating question answering systems. Develop an experimental question answering system. 3. Creativeness and innovativeness: Propose a mapping questions approach on building question answering systems and create a question-answering system for testing. 4. Research results: A detailed analysis of the mapping question method used in the construction of a Vietnamese question-answering system. 5. Products: A report on analysing the proposed method; a model of a question-answering system and a demo program for the system. There is a scientific paper was published. 6. Effects, transfer alternatives of reserach results and applicability: The results may be useful for IT students and related researchers. 8
- MỞ ĐẦU Trả lời câu hỏi tự động (Question Answering – QA) là một lĩnh vực nghiên cứu thú vị và đang phát triển hiện nay. Khơng nhƣ các hệ thống truy vấn thơng tin (Information Retrieval System – IR Sys) thực hiện việc tìm kiếm tài liệu, QA System tìm câu trả lời cho câu hỏi ngƣời dùng. Điều này cĩ nghĩa là hệ thống trả lời câu hỏi cĩ thể là thế hệ tiếp theo của các cơng cụ tìm kiếm (search engine). Do vậy địi hỏi câu trả lời đƣợc đƣa ra bởi QA System phải cĩ độ chính xác cao hơn. Nội dung đề tài liên quan đến một hƣớng tiếp cận dựa vào việc ánh xạ câu hỏi. Hƣớng tiếp cận này bao gồm việc chuyển đổi câu truy vấn bằng cách mở rộng câu với các từ đồng nghĩa và cắt tỉa danh sách câu mở rộng bằng mơ hình ngơn ngữ, từ đĩ, chuyển câu hỏi ngƣời dùng cho phù hợp với kho dữ liệu câu hỏi đã cĩ. Quá trình xử lý để trả về câu trả lời tƣơng ứng với câu hỏi liên quan nhất sẽ đƣợc thực hiện bằng sự kết hợp các kỹ thuật của xử lý ngơn ngữ tự nhiên và truy vấn thơng tin. Những nghiên cứu của đề tài cĩ thể xem nhƣ những bƣớc ban đầu cho các nghiên cứu sâu hơn để xây dựng hồn chỉnh hệ thống hỏi đáp tiếng Việt. 1. TÌNH HÌNH NGHIÊN CỨU TRONG VÀ NGỒI NƢỚC Vấn đề mà các hệ thống QA xem xét đĩ là tìm trong tập tài liệu cho trƣớc câu trả lời đúng nhất cho câu hỏi của ngƣời dùng. Thơng thƣờng, nhiệm vụ này thƣờng đƣợc thực hiện bởi con ngƣời bằng cách lập chỉ mục cho tập tài liệu với một hệ thống IR. Một hệ thống IR tiêu chuẩn thƣờng yêu cầu ngƣời dùng nhập vào từ khĩa để làm đầu vào cho các search engine. Tuy nhiên, sẽ là tự nhiên và đầy đủ hơn nếu cho phép ngƣời dùng trực tiếp nhập câu hỏi của mình. Các hệ thống IR này thành cơng trong việc xuất ra kết quả từ tập các tài liệu dựa trên một truy vấn. Sau đĩ, khi một câu hỏi cần phải đƣợc trả lời, một truy vấn sẽ đƣợc tạo ra để lấy các tài liệu cĩ liên quan đến câu hỏi. Cuối cùng, các tài liệu lấy đƣợc sẽ đƣợc ngƣời dùng đọc cho đến khi tìm thấy câu trả lời cho câu hỏi, hoặc cĩ thể khơng tìm thấy câu trả lời sau khi tất cả các tài liệu đã 9
- đƣợc đọc. Phƣơng pháp này khá tốn thời gian và lãng phí bởi vì câu trả lời cĩ thể khơng tồn tại trong tập tài liệu trả về. Hơn nữa, câu trả lời chính xác cĩ thể dễ dàng bị bỏ qua do ngƣời đọc bất cẩn hoặc do truy vấn khơng đúng. Một hệ thống QA thơng thƣờng cho phép ngƣời dùng nhập vào một câu hỏi dƣới dạng ngơn ngữ tự nhiên sau đĩ hệ thống sẽ sử dụng ngữ cảnh của câu hỏi để tìm câu trả lời phù hợp nhất. Điều này tốt hơn nhiều so với chỉ đơn giản là liệt kê các tài liệu liên quan đến một từ khĩa đƣợc ngƣời dùng nhập vào. Nhiều trang web chẳng hạn nhƣ AskJeeves [1] đã cố gắng trả về các tài liệu trả lời câu hỏi nhập vào. Tuy nhiên, vẫn yêu cầu ngƣời dùng đọc duyệt các tài liệu. Các hệ thống QA sẽ xử lý việc tạo câu truy vấn và tìm kiếm các thực thể chính xác là câu trả lời. Ví dụ, nếu muốn biết ai đã ám sát Abraham Lincoln, trƣờng hợp khơng cĩ hệ thống QA, ngƣời dùng trƣớc tiên sẽ tìm kiếm trên một tập các tài liệu liên quan (chẳng hạn nhƣ Internet) với một search engine: anh ta tạo một truy vấn nhƣ dạng: “Abraham Lincoln shot” để lấy các tài liệu liên quan từ search engine. Tiếp đến, anh ta sẽ đọc qua các tài liệu này, và nếu khơng hài lịng với các tài liệu liên quan đƣợc trả về, anh ta cĩ thể điều chỉnh lại câu truy vấn và thử tìm kiếm một lần nữa. Với một hệ thống QA, anh ta chỉ cần nhập câu hỏi “Who shot Abraham Lincoln?”, và hệ thống sẽ trả về câu trả lời cĩ khả năng nhất. Mơ hình dƣới đây mơ tả một kiến trúc chung cho các hệ thống QA: 10
- Tài liệu weweb,internb,intern et Cơ sở Tài liệu dữ liệu Văn bản Câu Phân tích Tìm kiếm hỏi câu hỏi thơng tin Câu trả Xếp hạng lời Rút trích câu trả lời Hình 1.1 : Kiến trúc hệ thống hỏi-đáp Hệ thống QA sử dụng IR để tìm các tài liệu liên quan cho câu hỏi và sau đĩ sử dụng các kỹ thuật rút trích thơng tin để rút trích câu trả lời từ các tài liệu đĩ. Một hệ thống QA phải phân tích câu hỏi, rút trích câu trả lời từ tập tài liệu và sau đĩ chọn câu trả lời cho câu hỏi. Các hệ thống QA đang đƣợc nghiên cứu và phát triển thơng thƣờng nằm trong những loại sau: Knowledge Base Systems: Các QA thuộc nhĩm này đƣợc xây dựng dựa trên những cơ sở tri thức. MAYA [2], tạo ra một cơ sở dữ liệu câu trả lời trƣớc khi bất kỳ câu hỏi nào đƣợc yêu cầu. Chỉ cĩ mƣời lăm kiểu thực thể mà hệ thống này xem xét nhƣ những câu trả lời. Mỗi đoạn văn cĩ thể chứa câu trả lời đƣợc giữ lại, và khi câu hỏi đƣợc yêu cầu, câu trả lời chứa trong đoạn văn liên quan nhất đến câu hỏi đƣợc đƣa ra nhƣ là câu trả lời. Katz [3] phát triển một phƣơng thức tƣơng tự sử dụng cơ sở tri thức để biên dịch dữ kiện của mỗi chủ đề trƣớc khi bất kỳ câu hỏi định nghĩa nào đƣợc yêu cầu. Clifton và Teahan [4] xây dựng một cơ sở tri thức của câu hỏi từ tập tài liệu. Họ sử dụng trạm tri thức [5] dựa trên lƣới tri thức đƣợc đề xuất bởi Cannataro và Talia [6]. Các trạm này sẽ duyệt qua các tài 11
- liệu và hình thành các câu hỏi xoay quanh các thực thể họ tìm thấy. Ví dụ, từ câu "John Lennon died on December 8th, 1980 during a public dramatic interpretation of J.D. Salinger's Catcher in the Rye.", hệ thống sẽ hình thành cặp câu hỏi-trả lời "When did John Lennon die?" và "December 8th, 1980". Khi một câu hỏi đƣợc yêu cầu, hệ thống sẽ kiểm tra cĩ hay khơng câu trả lời cho câu hỏi bằng cách xác định câu hỏi nào khớp với câu hỏi đầu vào. Logical Form Representation Systems Các hệ thống này sẽ cố gắng hình thành các cấu trúc logic chuẩn (Logical Representation - LR) của câu hỏi và các câu cĩ thể chứa câu trả lời. Các cấu trúc này sẽ giúp xác định xem cấu trúc của câu trả lời cĩ khớp với của câu hỏi. PowerAnswer 2 [7] là một dạng hệ thống nhƣ thế. Trong hệ thống các danh từ đƣợc xác định nhƣ là các thực thể. Những thực thể này sau đĩ đƣợc bổ sung bởi các động từ, tính từ và các loại ngữ nghĩa đƣợc dùng để trả lời câu hỏi. Multi Corpus Systems Hệ thống tìm câu trả lời cho câu hỏi bên trong một tập tài liệu chính, cũng đƣợc gọi là ngữ liệu. Một số hệ thống cũng sử dụng một tập tài liệu thứ hai, thêm vào tập chính trong đĩ câu trả lời đƣợc tìm thấy [8]. QA liên quan đến việc tìm câu trả lời trong tập tài liệu chính, vì thế bất kỳ câu trả lời nào đƣợc tìm thấy bên ngồi các tài liệu này chỉ cĩ thể bổ sung cho câu trả lời từ tập chính. Ngữ liệu phổ biến nhất đƣợc sử dụng để cố gắng cải tiến việc tìm kiếm là Internet. Hệ thống BBN [9], đầu tiên sử dụng ngữ liệu gốc để tìm kiếm câu trả lời cĩ thể cĩ. Sau đĩ thực hiện tìm kiếm với Google. Khi một câu truy vấn đƣợc nhập vào, Google sẽ trả ra các tài liệu đã đƣợc xếp hạng, mỗi tài liệu cĩ một bản tĩm tắt cĩ chứa từ khĩa từ các truy vấn đƣợc tạo ra. Hệ thống của họ sẽ xếp hạng câu trả lời bằng số lần câu trả lời cĩ trong phần tĩm tắt của top 100 tài liệu từ truy vấn Google. Tƣơng tự nhƣ phƣơng pháp web-proofing của Wu [10] , hệ thống sẽ tạo một truy vấn cho Google và xếp hạng các câu trả lời tiềm năng bằng số lần chúng xuất hiện so với các câu trả lời tiềm năng khác. Lin [11] và Wu [12] đề xuất một hƣớng tiếp 12
- cận ngƣợc lại, thay vì sử dụng ngữ liệu gốc để khám phá câu trả lời, họ chỉ sử dụng Internet. Sau đĩ họ cố gằng tìm kiếm câu trả lời trong các tài liệu gốc. Hệ thống EagleQA [13] rút trích câu trả lời từ cả hai nguồn. Từ web sử dụng các tĩm tắt của Google và từ ngữ liệu gốc bằng các truy vấn. Câu trả lời từ Google sẽ đƣợc sử dụng sau để xếp hạng các câu trả lời đƣợc rút trích từ ngữ liệu gốc. Hybrid Systems Cĩ nhiều hệ thống QA cĩ một kiến trúc liên tiếp, chẳng hạn nhƣ AnswerFinder [14]. Các hệ thống này bao gồm các module, và mỗi cái đƣợc thiết kế để thực hiện một nhiệm vụ cụ thể. Dữ liệu sẽ đƣợc chuyển từ module này sang module khác. Hệ thống Hybrid sử dụng nhiều hơn một module xếp hạng câu trả lời. Các câu trả lời khác nhau cĩ thể đƣợc tìm thấy tốt hơn bởi các phƣơng pháp khác nhau và các hệ thống này tận dụng lợi thế của tính năng này. Hệ thống hybrid cũng cĩ thể tận dụng lợi thế của phƣơng pháp đa ngữ liệu, ví dụ nhƣ PIQUANT II [15] sử dụng đa phƣơng pháp của việc tìm kiếm câu trả lời. Họ đã phát triển hệ thống của họ để mà cĩ thể sử dụng bất kỳ phƣơng pháp xếp hạng và rút trích các câu trả lời và cĩ thể tìm thấy câu trả lời trong ngữ liệu bất kỳ. Đối với mỗi phƣơng pháp, nĩ sẽ trả về các câu trả lời đã đƣợc xếp hạng cho hệ thống. Hệ thống của họ đảm bảo các câu trả lời ở trong các tài liệu gốc, và nếu tìm thấy, câu trả lời đƣợc trả lại cho ngƣời dùng. TextMap [16] sử dụng ba phƣơng pháp rút trích và xếp hạng các câu trả lời khác nhau, dựa trên tri thức, mơ hình và thống kê. Họ sử dụng những phƣơng pháp này trên ngữ liệu gốc cũng nhƣ trên các trang web, thơng qua một tìm kiếm Google. Sau đĩ, nếu câu trả lời đƣợc tìm thấy trên web, nĩ tìm kiếm danh sách các câu trả lời từ các ngữ liệu gốc, và nếu tìm thấy, nĩ sẽ trả về câu trả lời và tài liệu chứa câu trả lời. Nếu câu trả lời khơng tìm thấy, hệ thống sẽ trả về nĩ khơng thể tìm thấy câu trả lời trong ngữ liệu gốc. Qua thực tiễn khảo sát các hệ thống QA hiện cĩ ta thấy một số vấn đề cần quan tâm trƣớc trong khi xây dựng hệ thống: 13
- Dữ liệu về câu hỏi và trả lời xuất hiện rất nhiều đặc biệt là trên mạng. Ví dụ nhƣ là các câu hỏi thƣờng gặp (FAQs), cung cấp các câu hỏi và trả lời phổ biến. Các search engine nhƣ Google, Yahoo, đƣợc sử dụng phổ biến để giải đáp thắc mắc cho ngƣời dùng. Các hệ thống này hoạt động dựa trên tìm kiếm theo từ khĩa và đơi khi kết quả trả về cĩ thể khơng liên quan đến vấn đề cần hỏi của ngƣời dùng mặc dù chúng cĩ thể chứa các từ khĩa để hỏi. Ngữ nghĩa của câu hỏi thƣờng khĩ để nắm bắt. Với cùng một ý hỏi, ngƣời ta cĩ thể sử dụng nhiều câu hỏi khác nhau. Các câu hỏi này về từ vựng cĩ thể khác nhau hồn tồn hoặc một phần. Các search engine thƣờng khơng trả về kết quả theo ngữ nghĩa, do đĩ các câu hỏi tƣơng tự hầu nhƣ khơng xất hiện trong các kết quả trả về Trên thực tế các câu hỏi mà ngƣời dùng đặt ra rất đa dạng. Chúng cĩ thể là các câu hỏi ngắn gọn Yes/No, về thời gian, nơi chốn, đến các câu hỏi phức tạp cần phối hợp nhiều câu trả lời. Hệ thống càng linh hoạt khi trả lời đƣợc càng nhiều loại câu hỏi. Ta nhận thấy hầu hết các hệ thống trả lời câu hỏi điển hình cố gắng truy xuất câu trả lời từ tập các tài liệu hay tạo ra câu trả lời từ nguồn dữ liệu. Hệ thống sử dụng cơng cụ truy vấn thơng tin để tìm kiếm các tài liệu liên quan (nhƣ SMART - System for the Mechanical Analysis and Retrieval of Text [17], Google search, ), và từ trong những tài liệu đĩ họ sẽ tìm kiếm câu tƣơng tự nhất với câu hỏi để làm câu trả lời (YorkQA system [18]) hay tạo ra câu trả lời dựa trên cấu trúc của câu hỏi đã đƣợc phân tích (câu hỏi sau phân tích gồm các thành phần cấu tạo liên kết với nhau và hệ thống sẽ dựa trên các tài liệu để tìm kiếm các thành phần thỏa cấu trúc này rồi liên kết lại thành câu trả lời). Một trong những kỹ thuật phân tích cấu trúc câu hỏi là xác định loại câu hỏi hay phân tích cú pháp của câu hỏi. 14
- 2. MỤC TIÊU, CÁCH TIẾP CẬN Mục tiêu của đề tài là đề xuất một cách tiếp cận khác so với các hệ thống QA truyền thống. Bỏ qua quá trình tìm rút trích câu trả lời, chúng tơi sẽ tận dụng lợi thế của số lƣợng lớn dữ liệu cĩ sẵn, chẳng hạn nhƣ tập hợp các câu hỏi đã đƣợc trả lời trên web để đạt đƣợc mục tiêu. Khơng trực tiếp trả lời câu hỏi ngƣời dùng, hệ thống sẽ tiến hành tìm kiếm và trả về câu hỏi tƣơng tự với câu hỏi ngƣời dùng kèm theo câu trả lời tƣơng ứng cĩ sẵn, và hi vọng câu trả lời này sẽ đáp ứng đƣợc yêu cầu của ngƣời dùng. Trên cơ sở cách tiếp cận mới đề xuất, chúng tơi tiến hành xây dựng thử nghiệm một hệ thống QA để minh hoạ và sau đĩ phân tích những ƣu khuyết điểm của hệ thống thử nghiệm. 3. PHƢƠNG PHÁP, ĐỐI TƢỢNG VÀ PHẠM VI NGHIÊN CỨU Phƣơng pháp nghiên cứu của đề tài sử dụng các phƣơng pháp và cơng cụ của xử lý ngơn ngữ tự nhiên, mơ hình ngơn ngữ và truy vấn thơng tin. Hệ thống QA minh họa cho hƣớng tiếp cận đề xuất đƣợc xây dựng với việc sử dụng nguồn dữ liệu trong lĩnh vực “Máy tính và Intenet”. Mặc dù hệ thống cĩ thể mở rộng cho bất kỳ nguồn dữ liệu nào ứng với các lĩnh vực tri thức và các nguồn khác nhau. Ví dụ, dữ liệu này cĩ thể là các câu hỏi thƣờng gặp (FAQ), từ Yahoo Answers, Google Answers, các dịch vụ hay diễn đàn tƣ vấn chuyên mơn hoặc từ nhiều nguồn khác. 4. NỘI DUNG NGHIÊN CỨU Nội dung nghiên cứu của đề tài bao gồm những phần nhƣ sau: Phần mở đầu giới thiệu tổng quan hệ thống trả lời tự động liên quan đến QA và hƣớng nghiên cứu đề xuất trong việc xây dựng một hệ thống QA. Chƣơng 1 trình bày kiến thức liên quan đƣợc sử dụng trong xây dựng hệ thống QA. Chƣơng 2 trình bày cụ thể các bƣớc trong việc xây dựng một hệ thống QA dựa trên tiếp cận ánh xạ câu hỏi. Chƣơng 3 nêu kết quả thực nghiệm và đánh giá. Phần kết luận và kiến nghị tổng kết những cơng việc đã hồn thành và đề xuất dự kiến phát triển trong tƣơng lai. 15
- CHƢƠNG 1: CÁC KIẾN THỨC LIÊN QUAN 1.1. Xử lý ngơn ngữ tự nhiên (Natural Language Processing) 1.1.1. Gom nhĩm văn bản (text clustering) Gom nhĩm văn bản (hay gom nhĩm tài liệu) liên quan đến khái niệm gom nhĩm dữ liệu. Các tài liệu cùng chung một hay vài đặc điểm nào đĩ sẽ đƣợc tập hợp lại với nhau thành một nhĩm. Tùy thuộc vào mục đích và dữ liệu mà mỗi hệ thống sẽ sử dụng các đặc điểm khác nhau. Hai thuật tốn phổ biến sử dụng trong gom nhĩm là K-means algorithm và Hierarchical based algorithm [19-20]. 1.1.2. Phân loại văn bản (text classification) Phân loại văn bản là một nhiệm vụ thuộc lĩnh vực xử lý ngơn ngữ tự nhiên trong đĩ chúng ta phân các tài liệu vào trong các lớp đã đƣợc xác định trƣớc dựa trên nội dung của chúng. Trong hệ thống QA, các kỹ thuật phân loại cũng đƣợc sử dụng nhƣng khơng cho văn bản hay tài liệu mà là cho các câu hỏi. Cĩ hai hƣớng tiếp cận đƣợc sử dụng rộng rãi trong phân lớp, đĩ là hƣớng tiếp cận dựa trên luật (rule-based approach) và hƣớng tiếp cận dựa trên xác suất thống kê (statistics-based approach). Hướng tiếp cận dựa trên luật: Hƣớng tiếp cận này yêu cầu phải cĩ các chuyên gia ngơn ngữ cung cấp các luật, các biểu thức chính quy (regural expression), các từ khĩa cho từng lớp để hệ thống hoạt động. Các hạn chế của hƣớng tiếp cận này gồm cĩ: Xây dựng mơ hình cho phƣơng pháp này rất tốn thời gian và cơng sức, cần cĩ sự cộng tác của những chuyên gia trong lĩnh vực ngơn ngữ học khi xây dựng các mẫu câu và văn phạm cho từng loại. Các luật ngữ pháp viết tay và văn phạm của từng loại rất cứng nhắc, khơng linh động. Khi một dạng câu mới xuất hiện, mơ hình theo hƣớng này khơng thể xử lý. Muốn xử lý đƣợc mơ hình cần phải đƣợc cung cấp những luật mới. 16
- Vấn đề nhập nhằng của các văn phạm ngữ pháp rất khĩ xử lý, kiểm sốt và phụ thuộc vào đặc điểm của từng ngơn ngữ. Khi tập dữ liệu đƣợc mở rộng hoặc thay đổi kéo theo việc phải viết lại hồn tồn các luật trƣớc đĩ nên hệ thống rất khĩ mở rộng. Một số hệ thống hỏi đáp sử dụng luật để phân lớp câu hỏi nhƣ Webclopedia [21] Hướng tiếp cận dựa trên xác suất thống kê: Đƣợc Jonathan Brown tổng hợp lại bao gồm hai cách tiếp cận chính đĩ là: Phương pháp máy học: Sử dụng một tập đủ lớn các câu đã đƣợc gán nhãn lớp để huấn luyện một mơ hình cĩ thể tự động nắm bắt đƣợc các mẫu cĩ ích trong việc phân lớp. Cụ thể hơn, các thuật tốn của hƣớng tiếp cận này sẽ tính tốn xác suất phân lớp cho câu dựa trên những đặc trƣng hay những mối quan hệ của các từ trong câu đƣa vào. Các thuật tốn thƣờng đƣợc sử dụng là Support Vector Machines (SVM), láng giềng gần nhất (Near Neighbors – kNN), Nạve Bayes (NB), Entropy cực đại, Ngồi ra, các phƣơng pháp học máy bán giám sát [22] cũng đƣợc đƣa ra để sử dụng các câu chƣa đƣợc gán nhãn làm tăng cƣờng thêm độ chính xác cho phân lớp. Phương pháp sử dụng mơ hình ngơn ngữ: Xây dựng một mơ hình ngơn ngữ thống kê để ƣớc lƣợng đƣợc phân phối của ngơn ngữ tự nhiên chính xác nhất cĩ thể. Cụ thể với bài tốn phân lớp câu hỏi là việc ƣớc lƣợng xác suất cĩ điều kiện p(a|b) của “loại câu hỏi” a xuất hiện trong “ngữ cảnh” câu hỏi tự nhiên b. Bài tốn đặt ra là chúng ta phải tìm một phƣơng pháp ƣớc lƣợng (cĩ thể tin tƣởng đƣợc) mơ hình xác suất cĩ điều kiện p(a|b). Hƣớng tiếp cận dựa trên học máy thống kê hiện đang đƣợc rất nhiều nhà nghiên cứu quan tâm vì nĩ khơng chỉ tốn ít cơng sức của con ngƣời hơn (so với phƣơng pháp dựa trên luật) mà cịn cĩ tính khả chuyển cao, dễ dàng áp dụng cho nhiều miền ứng dụng khác nhau. Tuy nhiên hƣớng tiếp cận này cũng gặp khĩ khăn khi số lƣợng lớp câu hỏi lớn. 17
- 1.1.3. Tokenization và tách câu (sentence splitting) Trƣớc khi xử lý, văn bản chỉ đƣợc xem nhƣ là một chuỗi các ký tự. Tokenization là việc phân chia một chuỗi các ký tự thành các yếu tố từ vựng nhƣ các từ và các dấu câu. Tách câu là phân chia các từ và dấu câu vào trong từng câu, mỗi câu đƣợc phân tách bởi các dấu chấm câu. Điều này cĩ liên quan đến một hệ thống các xác suất xác định xem một dấu chấm câu cĩ thực sự dùng để kết thúc một câu hay khơng. Ví dụ nhƣ dấu „.‟ cĩ thể dùng trong một từ viết tắt hay dùng để kết thúc một câu hay phức tạp hơn là cả hai. Đây cĩ thể xem nhƣ là bƣớc đầu tiên trƣớc khi xử lý sâu hơn các văn bản tài liệu. 1.1.4. Tách từ (word segmenting) Trong ngơn ngữ học, từ là một đơn vị cơ bản. Mỗi một chuỗi các từ dƣới dạng ngơn ngữ viết đƣợc phân chia thành các thành phần từ mang ý nghĩa. Do đĩ một trong những cơng việc đầu tiên và quan trọng trƣớc khi xử lý ngơn ngữ là xác định ranh giới giữa các từ. Trong tiếng Anh và các ngơn ngữ sử dụng bảng chữ cái Latinh, dấu cách (khoảng trắng) là một dấu phân cách từ khá hiệu quả. Tuy nhiên khơng phải tất cả đều cĩ dấu cách hay ký tự tƣơng đƣơng nhƣ thế. Trong ngơn ngữ tiếng Việt cũng thế, dấu cách khơng hẳn đƣợc dùng để xác định ranh giới từ. Mặc dù vậy, tách từ là khơng thể thiếu cho các ứng dụng khác nhau nhƣ: Search engines, Word processors, Spelling Checkers, Voice Processing, Tùy theo đặc điểm của từng loại hình ngơn ngữ mà cĩ các hệ thống xử lý cụ thể. Nĩi chung các chiến lƣợc giải quyết các vấn đề trong tách từ đƣợc chia thành hai hƣớng cơ bản: dictionary-based và statistical-based. Dictionary-based hay cịn gọi là rule-based thƣờng sử dụng một số phƣơng pháp dựa trên việc so khớp chuỗi. Phƣơng pháp phổ biến nhất là Maximal Matching Statistical-based sử dụng xác suất thống kê trên tập ngữ liệu. Các hƣớng tiếp cận sau này thƣờng là sự kết hợp 2 hƣớng trên và đƣợc gọi là statistics-aided. Điều này cĩ nghĩa là ta sẽ chọn một trƣờng hợp tách từ tốt nhất trong số các trƣờng hợp cĩ thể cĩ bằng các mơ hình xác suất với một từ điển. 18
- Ví dụ : Học sinh học sinh học Sau khi tách từ ta sẽ đƣợc : Học_sinh học sinh_học Một trong những hƣớng tiếp cận này dùng trong tách từ tiếng Việt là [23], sự kết hợp giữa WFST (Weight Finite State Transducer) và Neural Network sử dụng từ điển Tiếng Việt hay nhƣ [24] với CRFs (Conditional Random Fields) và SVMs (Support VectorMachines). 1.1.5. Nhãn từ loại (Part Of Speech) Mỗi từ trong câu đƣợc phân loại tùy thuộc vào cách mà từ đĩ đƣợc dùng trong câu. Ví dụ trong tiếng Anh từ fax cĩ thể dùng nhƣ một danh từ (Did you receive that fax I sent you?) hay một động từ (Could you fax me that report?) hay trong tiếng Việt từ đá cũng vừa là danh từ (cánh cửa bằng đá) hay động từ (cầu thủ đá trái bĩng). Việc gắn các nhãn từ bằng thủ cơng cho tập tài liệu hay đơn giản chỉ cho một tài liệu cũng sẽ tốn nhiều thời gian. Cĩ nhiều hệ thống đƣợc xây dụng để cĩ thể gán nhãn tự động cho tài liệu với độ chính xác khá cao. Ví dụ: A fractal is a pattern that is irregular, but self-similar at all size scales; for example, a small patch of ground may have the same general appearance as a larger patch or even a huge area seen from high above. Sau khi đƣợc gán nhãn từ loại : A/DT fractal/NN is/VBZ a/DT pattern/NN that/WDT is/VBZ irregular/JJ ,/, but/CC self-similar/JJ at/IN all/DT size/NN scales/NNS ;/: for/IN example/NN ,/,a/DT small/JJ patch/NN of/IN ground/NN may/MD have/VB the/DT same/JJ general/JJ appearance/NN as/IN a/DT larger/JJR patch/NN or/CC even/RB a/DT huge/JJ area/NN seen/VBN from/IN high/JJ PP above/IN./. 19
- Một trong số các cơng cụ gán nhãn phổ biến là Maximum entropy tagger hay Brill tagger. Maximum entropy tagger (maxent) sử dụng xác suất để gắn nhãn từ cho tài liệu cĩ nhiều khả năng đúng nhất. Xác suất này đƣợc học thơng qua kỹ thuật máy học cĩ giám sát. Trong học cĩ giám sát, hệ thống đƣợc đƣa vào các dữ liệu chính xác, hệ thống hình thành những luật hay xác suất để đƣa ra quyết định từ những qui tắc này. Sử dụng cây quyết định để xem xét tất cả các nhãn từ cĩ khả năng cho một câu và tìm cái cĩ thể nhất. Brill tagger, đƣợc biết đến nhƣ là cơng cụ gắn nhãn từ dựa trên chuyển đổi, cũng sử dụng máy học cĩ giám sát nhƣng nĩ học các luật thay cho xác xuất. Đầu tiên nĩ gắn nhãn cho mỗi từ với các nhãn cĩ thể nhất cho từ đĩ, sau đĩ qua từng đoạn, nĩ áp dụng tập các luật cho các tình huống cĩ thể xảy ra nhất. 1.2. Mơ hình ngơn ngữ (language model) Một mơ hình ngơn ngữ thống kê (statistical language model) gán một xác suất cho một chuỗi m từ P(w1,w2, ,wn) bằng một phân bố xác suất. 1.2.1. Unigram model Mơ hình unigram thƣờng đƣợc sử dụng trong IR. Puni(t1t2t3) = P(t1)P(t2)P(t3). Mỗi mơ hình đƣợc liên kết với một tài liệu trong tập tài liệu. Trong mơ hình này, mỗi từ trong tài liệu đƣợc tính tần suất xuất hiện trong tài liệu. Do đĩ tổng các tần suất của tất cả các từ trong tài liệu bằng 1. Ví dụ: Bảng 1.1 : Tần suất của các từ trong 1 tài liệu Terms Probability in document a 0.1 word 0.2 likes 0.05 20