intTypePromotion=1

LUẬN VĂN:PHÂN TÍCH CÂU HỎI TRONG HỆ THỐNG HỎI ĐÁP TIẾNG VIỆT

Chia sẻ: Lan Lan | Ngày: | Loại File: PDF | Số trang:71

0
177
lượt xem
61
download

LUẬN VĂN:PHÂN TÍCH CÂU HỎI TRONG HỆ THỐNG HỎI ĐÁP TIẾNG VIỆT

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Trong mười 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, Microsoft, IBM…), 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à đã đạ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 nhiều hạn chế. Khóa luận Phân tích câu hỏi trong hệ thống hỏi đáp tiếng Việt tập trung vào khảo sát các phương pháp được áp...

Chủ đề:
Lưu

Nội dung Text: LUẬN VĂN:PHÂN TÍCH CÂU HỎI TRONG HỆ THỐNG HỎI ĐÁP TIẾNG VIỆT

  1. ĐẠI HỌC QUỐC GIA HÀ NỘI Figure TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Nguyễn Đức Vinh PHÂN TÍCH CÂU HỎI TRONG HỆ THỐNG HỎI ĐÁP TIẾNG VIỆT KHOÁ 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
  2. ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Nguyễn Đức Vinh PHÂN TÍCH CÂU HỎI TRONG HỆ THỐNG HỎI ĐÁP TIẾNG VIỆT KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin Cán bộ hướng dẫn: ThS. Trần Thị Oanh Cán bộ đồng hướng dẫn: ThS. Nguyễn Cẩm Tú HÀ NỘI - 2009
  3. Lời cảm ơn Trước tiên, tôi xin gửi lời cảm ơn và lòng biết ơn sâu sắc nhất tới Phó Giáo sư Tiến sĩ Hà Quang Thụy, Thạc sĩ Trần Thị Oanh, Thạc sĩ Nguyễn Cẩm Tú và Cử nhân Trần Mai Vũ – những người đã tận tình chỉ bảo và hướng dẫn tôi trong quá trình thực hiện khoá luận tốt nghiệp. Tôi chân thành cảm ơn các thầy, cô và cán bộ của trường Đại Học Công Nghệ đã tạo cho tôi những điều kiện thuận lợi để học tập và nghiên cứu. Tôi xin gửi lời cảm ơn chân thành tới cử nhân Nguyễn Minh Tuấn đã tận tình hỗ trợ về kiến thức chuyên môn, giúp đỡ tôi hoàn thành khóa luận. Tôi cũng xin gửi lời cảm ơn tới các anh chị và các bạn sinh viên trong phòng thí nghiệm Sislab đã giúp tôi rất nhiều trong việc thu thập và xử lý dữ liệu. Cuối cùng, tôi muốn gửi lời cảm ơn tới gia đình và bạn bè, những người thân yêu luôn bên cạnh, động viên tôi trong suốt quá trình thực hiện khóa luận tốt nghiệp. Tôi xin chân thành cảm ơn ! Sinh viên Nguyễn Đức Vinh i
  4. Tóm tắt Trong mười 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, Microsoft, IBM…), 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à đã đạ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 nhiều hạn chế. Khóa luận Phân tích câu hỏi trong hệ thống hỏi đáp tiếng Việt tập trung vào khảo sát các phương pháp được áp dụng cho xây dựng hệ thống hỏi đáp trên thế giới, đặc biệt tập trung nghiên cứu pha phân tích câu hỏi – pha đầu tiên trong hệ thống hỏi đáp, có ý nghĩa đặc biệt quan trọng với hoạt động của cả hệ thống. Trên cơ sở các nghiên cứu đó và điều kiện thực tế của các công cụ xử lý ngôn ngữ tiếng Việt, khóa luận tiến hành thực nghiệm việc phân tích câu hỏi tiếng Việt sử dụng phương pháp học máy thống kê và trích rút mẫu quan hệ. Các kết quả ban đầu đạt được khá khả quan. Bộ phân lớp câu hỏi cho hệ thống hỏi đáp miền mở đạt độ chính xác 81.49% khi sử dụng thuật toán SVM, 81.14 % với mô hình Entropy cực đại. Module phân tích câu hỏi sử dụng mẫu quan hệ cho hệ thống hỏi đáp trên miền du lịch đạt độ chính xác 89.7 %. ii
  5. Mục lục Tóm tắt..................................................................................................................................i Mục lục .............................................................................................................................. iii Danh sách các bảng ............................................................................................................v Danh sách các hình ............................................................................................................vi Lời mở đầu ..........................................................................................................................1 Chương 1. Giới thiệu về hệ thống hỏi đáp tự động .........................................................3 1.1. Hệ thống hỏi đáp tự động ..........................................................................................3 1.2. Phân loại hệ thống hỏi đáp tự động ...........................................................................5 1.2.1. Phân loại theo miền ứng dụng (domain).............................................................5 1.2.2. Phân loại theo khả năng trả lời câu hỏi...............................................................6 1.2.3. Phân loại theo hướng tiếp cận:............................................................................7 1.3. Các bước chung của hệ thống hỏi đáp tự động..........................................................7 Chương 2. Phân tích câu hỏi ...........................................................................................10 2.1. Nội dung của phân tích câu hỏi ...............................................................................10 2.2. Khó khăn của phân tích câu hỏi...............................................................................10 2.3. Một số nội dung của xử lý ngôn ngữ tự nhiên trong phân tích câu hỏi...................11 2.4. Taxonomy câu hỏi ...................................................................................................14 2.4.1. Khái niệm về taxonomy ....................................................................................14 2.4.2. Taxonomy câu hỏi.............................................................................................15 2.5. Khảo sát các phương pháp phân tích câu hỏi cho các loại câu hỏi khác nhau ........19 2.5.1. Câu hỏi đơn giản (factual-base) ........................................................................19 2.5.2. Câu hỏi định nghĩa (definition question) ..........................................................21 2.5.3. Câu hỏi phức tạp, có ràng buộc về thời gian.....................................................22 iii
  6. Chương 3. Các phương pháp xác định loại câu hỏi ......................................................24 3.1. Phương pháp phân lớp sử dụng học máy thống kê..................................................24 3.1.2. Các thuật toán học máy thống kê cho việc phân lớp ........................................28 3.1.3. Xây dựng bộ phân lớp câu hỏi theo học máy thống kê.....................................37 3.2. Phương pháp xác định loại câu hỏi sử dụng kĩ thuật xử lý ngôn ngữ tự nhiên .......42 3.3. Phương pháp xác định loại câu hỏi sử dụng mẫu quan hệ ......................................45 Chương 4. Thực nghiệm phân tích câu hỏi tiếng Việt ..................................................47 4.1. Thực nghiệm với phân lớp câu hỏi sử dụng học máy thống kê...............................47 4.1.1. Dữ liệu và công cụ cho thực nghiệm ................................................................47 4.1.2. Kết quả bộ phân lớp sử dụng SVM và MEM ...................................................49 4.2. Thực nghiệm với xác định loại câu hỏi sử dụng mẫu quan hệ ................................51 4.2.1. Mô hình thực nghiệm phân tích câu hỏi sử dụng mẫu quan hệ ........................51 4.2.2. Kết quả phân tích câu hỏi sử dụng mẫu quan hệ ..............................................55 Kết luận .............................................................................................................................58 Tài liệu tham khảo............................................................................................................60 iv
  7. Danh sách các bảng Bảng 1. Taxonomy câu hỏi do Li và Roth đưa ra ..............................................................17 Bảng 2. Biểu diễn của TP, TN, FP, FN trong đánh giá phân lớp.......................................27 Bảng 3. Số lượng câu hỏi theo từng lớp cha ......................................................................48 Bảng 4. Kết quả bộ phân lớp MEM khi sử dụng unigram .................................................49 Bảng 5. Kết quả bộ phân lớp MEM khi sử dụng tách từ ....................................................49 Bảng 6. Kết quả bộ phân lớp SVM sử dụng các đặc trưng khác nhau...............................50 Bảng 7. Danh sách các từ hỏi .............................................................................................50 Bảng 8. Tập seed tìm được cùng với mối quan hệ tương ứng ...........................................53 Bảng 9. Tập quan hệ cùng các mẫu tương ứng ..................................................................54 Bảng 10. Các quan hệ được thực nghiệm trong hệ thống ..................................................55 Bảng 11. Các công cụ sử dụng ...........................................................................................55 Bảng 12. Các thành phần chính của hệ thống Q&A trên miền du lịch ..............................56 Bảng 13. Kết quả phân tích câu hỏi trong hệ thống hỏi đáp trên miền du lịch ..................56 v
  8. Danh sách các hình Hình 1. Xu hướng trong nghiên cứu về Q&A......................................................................6 Hình 2. Các bước chung của hệ thống Q&A........................................................................8 Hình 3. Kiến trúc cho xử lý các câu hỏi factual-base.........................................................19 Hình 4. Mối quan hệ giữa các siêu phẳng phân cách .........................................................30 Hình 5. Siêu phẳng tối ưu và biên. .....................................................................................31 Hình 6. Biến nới lỏng cho soft margin ...............................................................................33 Hình 7. Mô hình bộ phân lớp đa cấp của Li và Roth .........................................................39 Hình 8. Xác định loại câu hỏi sử dụng kĩ thuật xử lý ngôn ngữ tự nhiên ..........................43 Hình 9. Ánh xạ từ trọng tâm vào Wordnet.........................................................................44 Hình 10. Mô hình Snowball ...............................................................................................46 Hình 11. Mô hình hệ thống hỏi đáp tiếng Việt sử dụng trích xuất mẫu quan hệ ...............52 Hình 12. Mô hình xử lý cho pha phân tích câu hỏi và trích xuất câu trả lời......................53 vi
  9. Lời mở đầu Nghiên cứu về hệ thống hỏi đáp tự động (Q&A) đã đượ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 (Wordnet [28], ontology [30]…). Phân tích câu hỏi 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ậy phân tích 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 toàn bộ hệ thống. Nếu phân tích câu hỏi không tốt thì sẽ không thể tìm ra được câu trả lời. Khóa luận Phân tích câu hỏi trong hệ thống hỏi đáp 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 tích câu hỏi đang được quan tâm hiện nay, từ đó đưa ra phương pháp phân tích câu hỏi phù hợp nhất (trên cơ sở các nguồn tài nguyên ngôn ngữ sẵn có) cho hệ thống hỏi đáp tiếng Việt. Những nghiên cứu trong khóa luậ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 hoàn thiện cho tiếng Việt. Khóa luận được trình bày thành bốn chương, nội dung được trình bày sơ bộ như dưới dây: Chương 1. Giới thiệu về hệ thống hỏi đáp tự động trình bày những nội dụng cơ bản nhất về hệ thống hỏi đáp và đặt vấn đề cho phân tích câu hỏi. Chương 2. Phân tích câu hỏi trình bày một cách tổng quan các vấn đề xung quanh việc phân tích câu hỏi như: nội dung của phân tích câu hỏi, những khó khăn của phân tích 1
  10. câu hỏi, các nội dung của xử lý ngôn ngữ tự nhiên trong phân tích câu hỏi, đồng thời khảo sát các phương pháp phân tích câu hỏi cho một số loại câu hỏi khác nhau. Trong chương này cũng chỉ ra tầm quan trọng của xác định loại câu hỏi trong phân tích câu hỏi. Chương 3. Các phương pháp xác định loại câu hỏi trình bày ba phương pháp để xác định loại câu hỏi, phân tích và chọn lựa hai phương pháp sẽ sử dụng cho phân tích câu hỏi tiếng Việt. Chương 4. Thực nghiệm phân tích câu hỏi tiếng Việt áp dụng các nghiên cứu trong chương 3 để phân tích câu hỏi trong hệ thống hỏi đáp tiếng Việt. Phần kết luận tổng kết, tóm lược nội dung và kết quả đạt được của khóa luận. 2
  11. Chương 1. Giới thiệu về hệ thống hỏi đáp tự động 1.1. Hệ thống hỏi đáp tự động Hệ thống hỏi đáp tự động có thể coi như một lựa chọn thứ hai bên cạnh hệ thống trích chọn thông tin khi người dùng muốn tìm kiếm thông tin họ cần. Hệ thống trích chọn thông tin nhận đầu vào là các từ khóa và trả về tập các tài liệu liên quan (có chứa các từ khóa đó). Kết quả mà hệ thống trích chọn thông tin (máy tìm kiếm) trả lại cho người dùng là rất lớn, có thể lên đến hàng nghìn trang web mà phần nhiều không chứa thông tin người dùng mong muốn. Trong khi đó, 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, trả lại các đoạn văn bản ngắn (các snippet) chứa câu trả lời trực tiếp cho câu hỏi [38]. Nghiên cứu về hệ thống hỏi đáp tự động 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ư TREC1, CLEF2… Bài toán xây dựng hệ thống hỏi đáp là một bài toán khó thuộc lĩnh vực xử lý ngôn ngữ tự nhiên. Chúng ta biết rằng 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. Ví dụ câu hỏi “Ai là tác giả Nhật ký trong tù ?” Câu trả lời: “ 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.” 1 TREC: Text REtrieval Conference. http://trec.nist.gov/ 2 CLEF: The Cross-Language Evaluation Forum. http://www.clef-campaign.org/ 3
  12. “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ỉ….) tương ứng với từng loại câu hỏi. Các hệ thống Q&A 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à các tài nguyên ngôn ngữ như Wordnet [28], ontology [30] để phân tích câu hỏi và trích xuất câu trả lời. Năm 2000, Carbonell và các đồng nghiệp trong bài báo The Vision Statement to Guide Research in Question Answering and Text Summarization [13] đã đưa ra các tư tưởng chung cho việc nghiên cứu Q&A. Theo đó một hệ thống hỏi đáp được người dùng đánh giá là hữu ích nếu đáp ứng được các tiêu chuẩn: Tính hợp lý về thời gian (Timeliness): Câu trả lời phải được đưa ra trong thời gian ngắn, ngay cả khi có hàng ngàn người dùng cùng truy nhập hệ thống một lúc. Các nguồn dữ liệu mới cần phải được tích hợp vào hệ thống ngay khi chúng sẵn sàng để có thế cung cấp cho người dùng câu trả lời cho những câu hỏi về các sự kiện có tính thời sự. Tính chính xác: Tính chính xác của hệ thống hỏi đáp tự động là cực kì quan trọng bởi việc đưa ra câu trả lời sai còn tai hại hơn nhiều là không đưa ra câu trả lời. Nghiên cứu về Q&A cần tập trung vào việc đánh giá tính đúng đắn của câu trả lời đưa ra, bao gồm cả phương thức để phát hiện các trường hợp mà dữ liệu hiện thời không chứa câu trả lời cho câu hỏi. Các thông tin mâu thuẫn trong dữ liệu cũng cần được tìm ra và các thông tin này cần được xử lý theo một cách phù hợp, nhất quán. Để đạt được sự chính xác, hệ thống Q&A cần được tích hợp các nguồn tri thức (world knowledge ) và cơ chế “bắt chước” việc suy luận thông thường (việc bắt chước có thể hiểu như là một quá trình học). Tính khả dụng: Hệ thống Q&A cần đáp ứng được các yêu cầu cụ thể của một người dùng. Các ontology trên từng miền cụ thể và ontology trên miền mở cần được tích hợp trong hệ thống. Hệ thống Q&A cần có khả năng khai phá câu trả lời 4
  13. từ bất kì dạng dữ liệu gì (văn bản, web, cơ sở dữ liệu, …) và đưa ra câu trả lời dưới định dạng mà người dùng mong muốn, cho phép người dùng miêu tả ngữ cảnh của câu hỏi và cung cấp các thông tin giải thích, trích dẫn nguồn cho câu trả lời. Tính hoàn chỉnh: Câu trả lời hoàn chỉnh cho câu hỏi của người dùng là điều mà các hệ thống Q&A hướng tới. Trong nhiều trường hợp (câu hỏi về danh sách, nguyên nhân, cách thức…), các phần của câu trả lời nằm rải rác trong một văn bản, thậm chí trong nhiều văn bản. Vì vậy cần phải hợp nhất các phần này dựa trên các thông tin liên kết để tạo ra câu trả lời hoàn chỉnh. Tính thích hợp của câu trả lời: Trong ngôn ngữ tự nhiên, câu hỏi đưa ra luôn gắn với ngữ cảnh nào đó và câu trả lời cũng nằm trong một ngữ cảnh nhất định. Câu trả lời mà hệ thống Q&A đưa ra phải phù hợp ngữ cảnh với câu hỏi. Một hệ thống Q&A có khả năng giao tiếp (interactive Q&A) là cần thiết trong nhiều trường hợp bởi chuỗi các câu hỏi liên quan đến một vấn đề sẽ giúp làm sáng tỏ thông tin mà người dùng đang hỏi. Việc đánh giá một hệ thống Q&A cần hướng người dùng bởi ý kiến người dùng là đánh giá tốt nhất cho tính thích hợp của câu trả lời. Các tiêu chuẩn trên được đặt ra với mong muốn xây dựng được một hệ thống Q&A hoàn chỉnh. Tuy nhiên, không phải hệ thống nào cũng có khả năng thông minh và hoàn thiện như thế. Các nghiên cứu về Q&A hiện nay đang tập trung vào xây dựng hệ thống hỏi đáp có tính chính xác cao và có khả năng sử dụng nguồn dữ liệu web khổng lồ trên Internet. 1.2. Phân loại hệ thống hỏi đáp tự động Có nhiều cách phân loại hệ thống hỏi đáp dựa trên các tiêu chí khác nhau như: phân loại theo miền ứng dụng, theo khả năng trả lời câu hỏi, theo cách tiếp cận giải quyết bài toán… 1.2.1. Phân loại theo miền ứng dụng (domain) Hệ thống hỏi đáp miền mở (open domain Question answering): Hệ thống trả lời bất kỳ câu hỏi nào được đưa vào. Khó khăn cho hệ thống miền mở đó chính là việc xây dựng các tri thức nên cho việc trả lời cũng như phân tích câu hỏi, các phương pháp hiện nay thường sử dụng một số các ontology khái quát hay các mạng tri thức như: wikipedia, bách khoa từ điển... Tuy nhiên, dữ liệu cho việc trích rút câu trả lời là phong phú, dễ thu thập. 5
  14. Hệ thống hỏi đáp miền đóng (close domain Question answering): Hệ thống tập trung vào trả lời các câu hỏi liên quan đến một miền cụ thể (giáo dục, y tế, thể thao...). Xây dựng hệ thống hỏi đáp miền đóng được coi là bài toán dễ hơn so với xây dựng hệ thống hỏi đáp miền mở vì có thể sử dụng các tri thức miền (thường là ontology của miền cụ thể). Hệ thống hỏi đáp Miền mở Miền đóng Dữ liệu có cấu trúc Dữ liệu phi cấu trúc (text) Một văn bản đơn Web Tập dữ liệu lớn Hình 1. Xu hướng trong nghiên cứu về Q&A Các nghiên cứu hiện nay về Q&A đang tập trung vào xây dựng hệ thống hỏi đáp trên miền mở, sử dụng nguồn dữ liệu phi cấu trúc (kho văn bản lớn hay dữ liệu web) để tìm câu trả lời. Các nghiên cứu mới và cải tiến những phương pháp cũ để có thể áp dụng cho nguồn dữ liệu web vốn đa dạng, nhiều “nhiễu” và trùng lặp đang rất được quan tâm [27] (Hình 1). 1.2.2. Phân loại theo khả năng trả lời câu hỏi Hệ thống có khả năng trả lời các câu hỏi liên quan đến sự vật, hiện tượng,... dựa trên việc trích ra câu trả lời có sẵn trong tập tài liệu. Câu trả lời là các chuỗi ký tự trong một tài liệu. Kỹ thuật chính được sử dụng là xử lý chuỗi và từ khóa. 6
  15. Hệ thống có cơ chế lập luận đơn giản: Trích xuất các câu trả lời có sẵn trong tập tài liệu sau đó sử dụng các suy luận để tìm mối liên kết giữa câu trả lời và câu hỏi. Hệ thống sử dụng các nguồn tri thức như ontology về từng miền cụ thể và ontology chung. Hệ thống trả lời các câu hỏi yêu cầu khả năng tổng hợp: Các phần của câu trả lời được trích rút từ nhiều tài liệu sau đó được tổng hợp lại thành câu trả lời hoàn chỉnh. Câu hỏi thường là về danh sách, về cách thức, nguyên nhân... Hệ thống có khả năng giao tiếp với người dùng: Trả lời chuỗi các câu hỏi của người dùng về cùng một vấn đề. Ví dụ các câu hỏi của người dùng như: “Giáo sư A sinh năm nào? Ở đâu? Ông ấy đang công tác ở đâu?”. Hệ thống có khả năng lập luận tương tự: Có thể trả lời các câu hỏi có tính chất suy đoán, câu trả lời ẩn trong tập tài liệu. Hệ thống cần trích ra các luận chứng và sử dụng lập luận tương tự để tìm ra câu trả lời [19]. 1.2.3. Phân loại theo hướng tiếp cận: Hướng tiếp cận nông (shalow): Nhiều phương pháp sử dụng trong Q&A dùng các kĩ thuật dựa trên từ khóa để định vị các câu, đọan văn có khả năng chứa câu trả lời từ các văn bản được trích chọn về. Sau đó giữ lại các câu, đoạn văn có chứa chuỗi ký tự cùng loại với loại câu trả lời mong muốn (ví dụ các câu hỏi về tên người, địa danh, số lượng…). Hướng tiếp cận sâu (deep): Trong những trường hợp khi mà hướng tiếp cận bề mặt không thể tìm ra câu trả lời, những quá trình xử lý về ngữ pháp, ngữ nghĩa và ngữ cảnh là cần thiết để trích xuất hoặc tạo ra câu trả lời. Các kĩ thuật thường dùng như nhận dạng thực thể (named-entity recognition), trích xuất mối quan hệ, loại bỏ nhập nhằng ngữ nghĩa,… Hệ thống thường sử dụng các nguồn tri thức như Wordnet, ontology để làm giàu thêm khả năng lập luận thông qua các định nghĩa và mối liên hệ ngữ nghĩa. Các hệ thống hỏi đáp dựa theo mô hình ngôn ngữ thống kê cũng đang ngày càng phổ biến. 1.3. Các bước chung của hệ thống hỏi đáp tự động Một hệ thống hỏi đáp tự động thường gồm 3 bước chung sau: Bước1-Phân tích câu hỏi: Bước phân tích câu hỏi tạo truy vấn cho bước trích chọn tài liệu liên quan và tìm ra những thông tin hữu ích cho bước trích xuất câu trả lời 7
  16. Bước2-Trích chọn tài liệu liên quan: Bước này sử dụng câu truy vấn được tạo ra ở bước phân tích câu hỏi để tìm các tài liệu liên quan đến câu hỏi. Bước3-Trích xuất câu trả lời: Bước này phân tích tập tài liệu trả về từ bước 2 và sử dụng các thông tin hữu ích do bước phân tích câu hỏi cung cấp để đưa ra câu trả lời chính xác nhất. Câu hỏi Phân tích câu hỏi Trích chọn tài liệu liên Trích xuất câu trả lời Câu trả lời Hình 2. Các bước chung của hệ thống Q&A Các hệ thống hỏi đáp tự động hiện nay có kiến trúc rất đa dạng, tuy nhiên chúng đều bao gồm ba phần cơ bản như trên [15,18,27]. Sự khác nhau chính giữa các hệ thống là ở quá trình xử lý trong từng bước, đặc biệt là ở cách tiếp cận trong việc xác định câu trả lời. Cách tiếp cận theo trích chọn thông tin thuần túy (pure IR) là: chia nhỏ một tài liệu trong tập dữ liệu thành chuỗi các tài liệu con, trích chọn các tài liệu con có độ tương đồng lớn nhất với câu truy vấn (do bước phân tích câu hỏi tạo ra) và trả lại chúng cho người dùng.Thách thức lớn nhất ở đây là làm sao chia nhỏ được tài liệu thành các phần với kích cỡ tương ứng với kích cỡ của câu trả lời mà vẫn đủ lớn để có thể đánh chỉ mục được (nếu chia quá nhỏ thì số lượng tài liệu để đánh chỉ mục sẽ rất lớn, gây gánh nặng cho hệ thống trích chọn thông tin). 8
  17. Cách tiếp cận theo xử lý ngôn ngữ tự nhiên (pure NLP) là: so khớp giữa biểu diễn ngữ pháp và (hoặc) biểu diễn ngữ nghĩa của câu hỏi với dạng biểu diễn ngữ pháp, ngữ nghĩa của các câu trong các tài liệu liên quan trả về. Khó khăn của cách tiếp cận này là hệ thống phải thực hiện việc phân tích ngữ pháp, ngữ nghĩa và so khớp đủ nhanh để đưa ra câu trả lời trong thời gian chấp nhận được, bởi số lượng các tài liệu cần xử lý là rất lớn trong khi các bước phân tích trên lại phức tạp và tốn nhiều thời gian. Sự khác nhau trong cách trích xuất câu trả lời dẫn đến việc phân tích câu hỏi cũng trở nên đa dạng. Trong hướng tiếp cận theo trích xuất thông tin thuần túy, phân tích câu hỏi chỉ cần làm tốt việc tạo truy vấn, trong khi với hướng tiếp cận theo xử lý ngôn ngữ tự nhiên, câu hỏi cần được phân tích ngữ pháp, ngữ nghĩa một cách chính xác. Các hệ thống hiện nay thường là sự kết hợp giữa hai hướng tiếp cận, sử dụng hệ thống trích chọn thông tin để thu hẹp không gian tìm kiếm câu trả lời, đồng thời phân tích câu hỏi để tìm ra các thông tin về ngữ pháp, ngữ nghĩa nhằm tìm ra câu trả lời chính xác nhất. Kết quả của bước phân tích câu hỏi là đầu vào cho cả hai bước trích chọn tài liệu liên quan và trích xuất câu trả lời. Bước phân tích câu hỏi có ý nghĩa rất quan trọng, bởi nó ảnh hưởng đến hoạt động của các bước sau và do đó quyết định đến hiệu quả của toàn hệ thống. Chương 2 trình bày chi tiết các nội dung liên quan đến phân tích câu hỏi. 9
  18. Chương 2. Phân tích câu hỏi 2.1. Nội dung của phân tích câu hỏi Bài toán phân tích câu hỏi: Phân tích câu 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 câu truy vấn cho bước trích chọn tài liệu liên quan và các thông tin cần thiết cho bước trích rút câu trả lời. Câu truy vấn là dạng tổ hợp của các từ khóa quan trọng trong câu hỏi (và các từ khóa mở rộng) với các phép toán tập hợp AND, OR. Các kĩ thuật biến đổi câu hỏi thành câu truy vấn được trình bày trong phần 2.5.1. Các thông tin cần thiết để trích xuất câu trả lời là rất đa dạng, tùy phuộc vào phương pháp trích xuất câu trả lời. Thông thường các thông tin đó là mục đích của câu hỏi (ví dụ mục đích hỏi để khẳng định một điều, để so sánh hay để tìm kiếm thông tin, để hỏi về định nghĩa, cách thức…), loại câu trả lời mong đợi (question target hay answer type). Ví dụ câu hỏi “Dân số Việt Nam là bao nhiêu”, câu trả lời được mong đợi là một “con số” hay câu hỏi “Ai là tổng thống Mỹ” thì loại câu trả lời là một “tên người”. Một số thông tin hữu ích cho trích xuất câu trả lời khác như định dạng của câu trả lời (người hỏi muốn câu trả lời là một dạng ngắn gọn như con số, tên người, địa chỉ hay là một đoạn văn bản dài về định nghĩa, mô tả, nguyên nhân, …), dạng biểu diễn ngữ pháp, ngữ nghĩa của câu hỏi để so khớp (matching) và xếp hạng (ranking) các câu trả lời. 2.2. Khó khăn của phân tích câu hỏi Câu hỏi đầu vào của hệ thống hỏi đáp tự động là câu hỏi dưới dạng ngôn ngữ tự nhiên của người dùng. Vì vậy việc phân tích câu hỏi cũng gặp những khó khăn của xử lý ngôn ngữ tự nhiên. Theo Hồ Tú Bảo và Lương Chi Mai [1], cái khó nằm ở chỗ làm sao cho máy tính được hiểu ngôn ngữ con người, từ việc hiểu nghĩa từng từ trong mỗi hoàn cảnh cụ thể, đến việc hiểu nghĩa của cả câu hỏi, hiểu câu hỏi đang hỏi về cái gì và người hỏi mong muốn cái gì. Mấu chốt ở đây là bản chất phức tạp của ngôn ngữ của con người, đặc biệt là sự đa nghĩa và nhập nhằng ngữ nghĩa của ngôn ngữ. Thêm nữa, có một khác biệt sâu sắc là con người ngầm hiểu và dùng quá nhiều lẽ thường (common sense) trong ngôn ngữ, như khi hỏi về “thời tiết” thì tức là hỏi về “nhiệt độ, độ ẩm, mưa, nắng …”, hay 10
  19. biết “sợi dây” thì dùng để kéo chứ không dùng để đẩy hay khều các vật, trong khi rất khó làm cho máy hiểu các lẽ thường này. Cùng hỏi về một thông tin nhưng câu hỏi có thể được diễn đạt theo nhiều cách khác nhau, sử dụng từ ngữ, cấu trúc câu khác nhau, lúc ở dạng nghi vấn, lúc lại ở dạng khẳng định. Vì vậy cần thiết phải có một mô hình ngữ nghĩa để hiểu và xử lý câu hỏi, có khả năng nhận diện được các câu hỏi tương đương bất kể nó ở dạng khẳng định, nghi vấn hay các từ ngữ và quan hệ ngữ pháp giữa chúng khác nhau hoặc các dạng thành ngữ, tu từ. Mô hình này cũng cần có khả năng chuyển đổi các câu hỏi phức tạp thành chuỗi các câu hỏi đơn giản hơn, có thể xác định được các nhập nhằng và xử lý chúng theo ngữ cảnh hoặc sử dụng cách thức giao tiếp với người dùng để làm rõ ngữ nghĩa. Xử lý câu hỏi cũng cần phải có cơ chế để xử lý các câu hỏi tiếp sau liên quan đến cùng một vấn đề của câu hỏi trước, sử dụng các thông tin thu được ở câu hỏi trước để làm sáng tỏ câu hỏi tiếp sau, cao hơn nữa là có thể đối thoại với người dùng theo chuỗi các câu hỏi và câu trả lời. 2.3. Một số nội dung của xử lý ngôn ngữ tự nhiên trong phân tích câu hỏi Đầu vào của pha phân tích câu hỏi là câu hỏi dạng ngôn ngữ tự nghiên, do đó phân tích câu hỏi có liên quan đến một số nội dung của xử lý ngôn ngữ tự nhiên. Theo [1] việc xử lý ngôn ngữ tự nhiên thường bao gồm các bước (tầng, layer) cơ bản sau: Tầng hình thái (morphological layer): Nghiên cứu về các thành phần có nghĩa của từ (word), như từ được tạo ra bởi các hình vị (morphemes) và từ được tách ra trong một câu thế nào. Thí dụ, từ “tiếng Việt” tạo thành từ “t-iế-ng V-iệ-t”, còn ngữ (phrase) “xử lý tiếng Việt” tạo thành gồm hai từ “xử lý” và “tiếng Việt”. Trong tiếng Việt, một bài toán quan trọng là phân tách từ (word segmentation). Một thí dụ quen thuộc là câu “Ông già đi nhanh quá” có thể phân tách thành (Ông già) (đi) (nhanh quá) hoặc (Ông) (già đi) (nhanh quá) hoặc những cách khác nữa. Tầng ngữ pháp (syntactic layer): Nghiên cứu các quan hệ cấu trúc giữa các từ, xem các từ đi với nhau thế nào để tạo ra câu đúng. Quá trình này thường được cụ thể trong các bước cơ bản sau: 11
  20. o Xác định từ loại (POS tagging): Xem mỗi từ trong câu là loại gì (danh từ, động từ, giới từ, …). Trong thí dụ trên, có thể “Ông già” là danh từ, “đi” là động từ, “nhanh” là trạng từ, và “quá” là thán từ. o Xác định cụm từ (chunking): Thí dụ “Ông già” là cụm danh từ, “đi” là cụm động từ, “nhanh quá” là cụm trạng từ. Như vậy câu trên có hai phân tích (Ông già) (đi) (nhanh quá) hoặc (Ông) (già đi) (nhanh quá). o Xác định quan hệ ngữ pháp(parsing): (Ông già) (đi) (nhanh quá) là quan hệ chủ ngữ-vị ngữ-trạng ngữ. Tầng ngữ nghĩa (semantic layer): Nghiên cứu xác định nghĩa của từng từ và tổ hợp của chúng để tạo nghĩa của câu. Thí dụ trong phân tích (Ông già) (đi) (nhanh quá), động từ “đi” có thể có nghĩa “bước đi”, hay “chết” hay “điều khiển” (khi đánh cờ), … và tương ứng ta có các nghĩa khác nhau của câu. Tầng ngữ dụng (pragmatic layer): Nghiên cứu mối quan hệ giữa ngôn ngữ và ngữ cảnh sử dụng ngôn ngữ (context-of-use). Ngữ dụng nghiên cứu việc ngôn ngữ được dùng để nói về người và vật như thế nào. Việc phân tích câu hỏi ở các tầng từ tầng hình thái đến tầng ngữ pháp gọi là phân tích sơ bộ (shallow parsing). Nếu phân tích thêm cả tầng ngữ nghĩa ta sẽ có phân tích đầy đủ (fully parsing). Phân tích câu hỏi đến tầng nào cũng tùy thuộc vào từng hệ thống, vào phương pháp trích xuất câu trả lời và các công cụ hỗ trợ phân tích ngôn ngữ đến đâu. Hệ thống AskMSR [8,12] đưa ra phương pháp phân tích câu hỏi và trích xuất câu trả lời rất đơn giản, chỉ phân tích câu hỏi ở tầng hình thái, sử dụng các từ vựng trong câu hỏi để tìm ra các câu trả lời ứng viên. Theo Michele Banko [8] thì đối với nhiều câu hỏi dạng đơn giản, hỏi về các sự vật, hiện tượng, … (factual-base question) thì dạng của câu hỏi và câu trả lời khá tương đồng nhau. Ví dụ với câu hỏi: “Where is the Louvre Museum located ?” câu trả lời thường có dạng “…Louvre Museum is located at/in/near …” Hay câu hỏi: “What is search engine ?” thì câu trả lời có dạng: “…search engine is …”. 12
ADSENSE
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2