Chương này cũng chỉ ra các phương pháp để phân câu hỏi vào các lớp cụ thể trong hệ thống, các giải pháp đánh giá độ tương đồng giữa các tài liệu.. Tìm kiếm dữ liệu Data Retrieval: Một số
Trang 1-
HÀ THỊ MINH LỘC CHUYÊN NGÀNH : TRUYỀN DỮ LIỆU VÀ MẠNG MÁY TÍNH
MÃ SỐ: 60.48.15 XÂY DỰNG MÔ HÌNH HỆ THỐNG HỎI ĐÁP TỰ ĐỘNG HỖ TRỢ ĐÀO TẠO TRỰC TUYẾN
TÓM TẮT LUẬN VĂN THẠC SĨ
HÀ NỘI – 2012
Trang 2Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Người hướng dẫn khoa học: TS Hoàng Xuân Dậu
Phản biện 1: ………
Phản biện 2: ………
Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông
Vào lúc: giờ ngày tháng năm
Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông
Trang 3MỞ ĐẦU
Mục tiêu của luận văn là xây dựng thử nghiệm mô hình hệ thống hỏi-đáp tự động tiếng Việt cho một miền cụ thể là hỗ trợ việc đào tạo trực tuyến hiện nay Những nghiên cứu này làm cơ sở lý thuyết cũng như thực nghiệm cho việc xây dựng các hệ thống hỏi - đáp tiếng Việt có hiệu quả trong tương lai
Luận văn được trình bày với các nội dung chính như sau:
Chương 1: Những vấn đề khái quát, lịch sử phát triển và kiến trúc cơ bản của hệ thống hỏi đáp nói chung, các vấn đề cần quan tâm và những yêu cầu khi xây dựng hệ thống hỏi đáp
Chương 2: Các cơ sở lý thuyết, các thuật toán, phương pháp xử lý dữ liệu ban đầu Chương này cũng chỉ
ra các phương pháp để phân câu hỏi vào các lớp cụ thể trong hệ thống, các giải pháp đánh giá độ tương đồng giữa các tài liệu
Chương 3: Xây dựng mô hình hệ thống, phân tích từng giai đoạn của quá trình xây dựng, lựa chọn phương pháp và thuật toán cụ thể cho mỗi giai đoạn
Trang 4Chương 1 TỔNG QUAN 1.1 Khái quát về hệ thống hỏi đáp tự động
Có hai loại hệ thống hỏi – đáp:
Hệ thống không tập chung: Các câu hỏi được gửi đến một nơi Các câu trả lời có thể xuất phát từ
nhiều nơi, từ nhiều người dùng (diễn đàn )
Hệ thống tập chung: Các câu hỏi được gửi đến một nơi, câu trả lời được xuất phát, tập chung ở một nơi
duy nhất, tập chung(Email ) Giới hạn quyền truy xuất, không phải ai cũng có thể thấy được
1.2 Sơ lược lịch sử phát triển
Một số hệ thống đầu tiên đã được ra đời từ những năm 1960 và đã 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
1.3 Kiến trúc chung của hệ thống hỏi – đáp
Trang 5Hình 1.1 Hệ thống tìm kiếm thông tin (IR)
Hình 1.2: Kiến trúc chung hệ thống hỏi – đáp
Trang 61.3.1 Giao diện người dùng (User Interface): Từ một giao diện Web, người dùng có thể nhập vào câu hỏi.Sau
khi câu hỏi đượ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ự
1.3.2 Phân tích câu hỏi (Question Analyzer): Câu hỏi được phân tích và xử lý để trích lọc thông tin nhằm sử
dụng trong giai đoạn tìm kiếm sau này Câu hỏi đặt ra là làm thế nào để phân lớp và chuẩn hóa các câu hỏi một cách tốt nhất Tùy vào việc phân tích câu hỏi nông hay sau mà bước này sẽ cho ra các kết quả khác nhau
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 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
1.3.4 Rút trích câu trả lời (Answer Extraction): 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 Khi mục đích câu hỏi đã được làm rõ Hệ thống xử lý và chọn ra một tập các câu trả lời có liên quan đến nội dung hỏi (lĩnh vực hỏ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
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
Trang 7sâ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 thiết kế hệ thống hỏi - đáp
Loại câu hỏi
Xử lý câu hỏi
Ngữ cảnh và hệ thống hỏi đáp
Nguồn dữ liệu cho hệ thống hỏi đáp
Trích xuất câu trả lời
1.5 Các yêu cầu của hệ thống hỏi - đáp
Trang 81.6 Kết luận
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, học viên muốni xây dựng một mô hình 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à hỗ trợ đào tạo trực tuyến
Trang 9Chương 2 TIỀN XỬ LÝ VÀ PHÂN LOẠI CÂU HỎI 2.1 Tiền xử lý dữ liệu
2.1.1 Phân tích câu hỏi
2.1.1.1 Các phương pháp phân tích câu hỏi
Phương pháp nông (Shallow Method): Dựa trên từ khóa để xác định vị trí các đoạn và các câu từ các tài
liệu được trả về trong giai đoạn tìm kiếm, sau đó lọc ra câu trả lời dựa trên sự hiện diện của loại câu trả lời trong văn bản được trả về đó
Phương pháp sâu (Deep Method): Là phương pháp sử dụng các kỹ thuật xử lý cú pháp, ngữ nghĩa và ngữ
cảnh phức tạp hơn để trích xuất hoặc xây dựng các câu trả lời
2.1.1.2 Phân tích câu hỏi trong ngôn ngữ tiếng Việt
Khi phân tích câu hỏi tiếng Việt, khác với các câu hỏi tiếng Anh, chúng ta phải giải quyết:
- Xác định ranh giới giữa các từ trong câu
- 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 khác nhau
Trang 10- Có quá nhiều từ có mật độ xuất hiện cao nhưng không mang ý nghĩa cụ thể nào
- Chính tả tiếng Việt còn một số điểm chưa thống nhất
- Tồn tại nhiều bảng mã tiếng Việt đòi hỏi khả năng xử lý tài liệu ở các bảng mã khác nhau
Tuỳ vào mục đích bộ phân loại mà chúng ta sẽ có những phương pháp tiền xử lý văn bản khác nhau
2.1.2 Tách từ
2.1.2.1 Các hướng tiếp cận dựa trên từ
Hướng tiếp cận này có thể chia ra theo 3 hướng: dựa trên thống kê (statistics - based), dựa trên từ điển (dictionary – based) và hydrid (kết hợp nhiều phương pháp với hy vọng đạt được những ưu điểm của các phương pháp này)
2.1.2.2 Các hướng tiếp cận dựa trên kí tự
Hướng tiếp cận này đơn thuần rút trích ra một số lượng nhất định các tiếng trong văn bản như rút trích từ 1 ký
tự (unigram) hay nhiều ký tự (n-gram) và cũng mang lại một số kết qủa nhất định được minh chứng thông qua một số công trình nghiên cứu đã được công bố, như của tác giả Lê An Hà [2003] xây dựng tập ngữ liệu thô 10MB bằng cách sử dụng phương pháp qui hoạch động để cựa đại hóa xác suất xuất hiện của các ngữ Rồi công trình nghiên cứu của H Nguyễn et al [2005] Đây là phương pháp tách tách từ tiếng Việt dựa trên thống kê từ Internet và thuật giải di truyền – IGATEC (Internet and Genetics Algorithm based Text Categorization for
Trang 11Documents in Vietnamese) do H Nguyễn et al đề xuất năm 2005 Trong hướng tiếp cận này, tác giả kết hợp giữa thuật toán di truyền với dữ liệu thống kê được lấy từ Internet
2.1.3 Biểu diễn văn bản
Để phân loại đươc văn bản phục vụ việc tìm kiếm thông tin có hiệu quả, các tài liệu thường được chuyển đổi thành các cách biểu diễn tài liệu thích hợp Có rất nhiều phương pháp khác nhau được đề xuất, được tổng hợp như sau:
Hình 2.1: Toàn cảnh của hệ thống IGATEC
Trang 122.1.3.1 Các mô hình lý thuyết tập hợp: Các phương pháp này biểu diễn các tài liệu thành một tập hợp các từ
và các cụm từ Tính tương tự giữa các tài liệu được rút ra từ tập hợp các toán tử của lý thuyết tập hợp trên các tập hợp này
2.1.3.2 Các mô hình xác suất: Mô hình này coi việc tìm kiếm tài liệu như là một suy luận có tính xác suất
Tính tương tự được xem như là xác suất mà một tài liệu liên quan đến một truy vấn đã cho
2.1.3.3 Các mô hình đại số: Các phương pháp này biểu diễn các tài liệu và truy vấn thành các vector, ma trận
hoặc các bộ dữ liệu Tính tương tự giữa vector truy vấn và vector tài liệu được biểu diễn như một đại lượng vô hướng
2.2 Phân loại câu hỏi
2.2.1 Rút trích đặc trưng văn bản
2.2.1.1 Loại bỏ các stop word: Sau khi đã tiến hành tách từ trong văn bản, chúng ta sẽ tiến hành loại bỏ các từ
stopword ra khỏi văn bản
2.2.1.2 Trích chọn đặc trưng văn bản: Các phương pháp rút trích thông tin cổ điển coi mỗi một văn bản như là
tập các từ khóa và gọi tập các từ khóa này là tập các term Một phần tử trong tập term đơn giản là một từ, mà ngữ nghĩa của từ này giúp tạo thành nên nội dung của văn bản.Vì vậy, tập term được sử dụng để tạo các chỉ mục
và tóm lược nội dung của văn bản
Trang 132.2.1.3 Các phương pháp rút trích đặc trưng văn bản
2.2.1.3.1 Phương pháp truyền thống: Một văn bản D được biểu diễn bằng một vector đặc trưng có dạng (d1,
d2,…, dn), trong đó di là trọng số của đặc trưng thứ i và n là số lượng các đặc trưng Mỗi một đặc trưng tương
ứng với một từ xuất hiện trong tập huấn luyện sau khi loại bỏ các stopword ra khỏi các văn bản
2.2.1.3.2 Rút trích dựa trên công nghệ tác nhân thông minh: Tác nhân (agent) máy tính là những chương trình
phần mềm có sự sống, có những đặc tính và hành động giống như hoạt động của con người
2.2.1.3.3 Công cụ rút trích đặc trưng tự động
Thuật toán 1 – Thuật toán rút trích đặc trưng văn bản
B0: Chọn tất cả các từ một từ có xuất hiện trong n văn bản, trong đó n>= ngưỡng đưa vào từ tập Words B1: Tìm các cụm từ (kết hợp từ 2 từ trở lên) đưa vào Associated Words
B2: Tập các từ và cụm từ được chọn là Words Associated Words
B3: Tiến hành lọc từ và cụm từ dựa trên công thức độ tốt của một từ trong một lớp Độ tốt của từ và cụm từ
được tính theo công thức:
Trang 1412Trong đó:
G(w): Độ tốt của từ w
Fclust: Mô tả mối liên hệ của w với các từ khác trong cùng lớp j
Fcoll: Mô tả mối liên hệ của w với toàn tập văn bản
Fj(w): là số lần w xuất hiện trong lớp văn bản j
Dựa trên độ tốt G, tiến hành loại bỏ các từ, cụm từ có độ tốt > 0 ở hai lớp trở lên
Trong đó:
Fij : Là tần số của từ hoặc cụm từ i trong văn bản j
N: Số văn bản trong tập
Ni: Là số văn bản chứa từ hoặc cụm từ i
Dựa trên Wij ta có thể lọc các từ, cụm từ dựa trên giá trị này bằng cách đưa ra một ngưỡng cho Wij.
Thuật toán 2 – Thuật toán tìm cụm từ
- Đầu vào: Danh sách các từ một từ được chọn theo ngưỡng
Trang 15- Đầu ra: Danh sách các từ liên kết (2 từ trở lên)
ngưỡng thì chọn Ngược lại, không chọn từ ghép
vớ danh sách 2 = danh sách 3 Nếu rỗng thì dừng
2.2.2 Phân loại câu hỏi tiếng Việt
- Bước 1 : Rút trích đặc trưng câu hỏi và biểu diễn câu hỏi bằng mô hình vector
- Bước 2 : Áp dụng thuật toán phân loại văn bản để phân loại câu hỏi
2.2.2.1 Các phương pháp phân loại và phân phối câu hỏi
2.2.2.1.1 Phương pháp SVM – Support Vector Machine
Cho trước một tập huấn luyện được biểu diễn trong không gian vector, trong đó mỗi một văn bản được xem như một điểm trong không gian này Phương pháp này tìm ra một siêu mặt phẳng h quyết định tốt nhất có thể chia các điểm trên không gian này thành hai lớp riêng biệt tương ứng, tạm gọi là lớp + ( cộng ) và lớp – ( trừ) Chất lượng của siêu mặt phẳng này được quyết định bởi một khoảng cách (được gọi là biên) của điểm dữ liệu
Trang 1614gần nhất của mỗi lớp đến mặt phẳng này Khoảng cách biên càng lớn thì càng cĩ sự phân chia tốt các điểm ra thành hai lớp, nghĩa là sẽ đạt được kết qủa phân loại tốt Mục tiêu của thuật tốn SVM là tìm được khoảng cách biên lớn nhất để tạo kết qủa phân loại tốt
2.2.2.1.2 Phương pháp Nạve Bayes (NB)
Ý tưởng cơ bản của cách tiếp cận này là sử dụng xác suất cĩ điều kiện giữa từ hoặc cụm từ và chủ đề để dự đốn xác suất chủ đề của một văn bản cần phân loại
2.2.2.1.3 Phương pháp K – Nearest Neighbor ( kNN)
Ý tưởng của phương pháp này là khi cần phân loại một văn bản mới, thuật tốn sẽ xác định khoảng cách (cĩ thể áp dụng các cơng thức về khoảng cách như Euclide, Cosine, Manhattan, …) của tất cả các văn bản trong tập huấn luyện đến văn bản này để tìm ra k văn bản gần nhất, gọi là k nearest neighbor – k láng giềng gần nhất sau
đĩ dùng các khoảng cách này đánh trọng số cho tất cả các chủ đề Khi đĩ, trọng số của một chủ đề chính là tổng tất cả các khoảng cách ở trên của các văn bản trong k láng giềng cĩ cùng chủ đề, chủ đề nào khơng xuất hiện trong k láng giềng sẽ cĩ trọng số bằng 0 Sau đĩ các chủ đề sẽ được sắp xếp theo giá trị trọng số giảm dần và các chủ đề cĩ trọng số cao sẽ được chọn làm chủ đề của văn bản cần phân loại
2.2.2.1.4 Phương pháp Linear Least Square Fit – LLSF
Ý tưởng của LLSF là sử dụng phương pháp hồi quy để học từ tập huấn luyện và các chủ đề cĩ sẵn
Trang 172.2.2.1.5 Phân loại dựa theo công nghệ tác nhân thông minh
Đây là modul được xây dựng theo công nghệ tác nhân thông minh Tác nhân phân loại có nhiệm vụ kiểm tra khi hệ thống có các câu hỏi mới đến (cảm nhận được sự thay đổi của hệ thống), tiến hành phân loại câu hỏi (đưa
ra hành động thích hợp) Tác nhân phân loại là một chương trình nhỏ được xây dựng như một serviece trên hệ điều hành
2.2.2.1.7 Kết luận
Thuật toán sử dụng để phân loại phải có thời gian xử lý hợp lý , thời gian này bao gồm: thời gian học, thời gian phân loại văn bản, ngoài ra thuật toán này phải có tính tăng cường (incremental function) nghĩa là không phân loại lại toàn bộ tập văn bản khi thêm một số văn bản mới vào tập dữ liệu mà chỉ phân loại các văn bản mới, khi đó thuật toán phải có khả năng giảm độ nhiễu (noise) khi phân loại văn bản
2.2.3 Đánh giá độ tương đồng giữa các tài liệu
2.2.3.1 Mô hình vector
2.2.3.2.Phương pháp trọng số tf-idf
2.2.3.3 Hệ số Cosine
Trang 18Chương 3 XÂY DỰNG MƠ HÌNH HỆ THỐNG 3.1 Lựa chọn mơ hình và thuật tốn
3.1.1 Lựa chọn thuật tốn tách từ: Phương pháp do tác giả H.Nguyễn cĩ ưu điểm là khơng cần sử dụng bất cứ
tập huấn luyện hoặc từ điển nào, do đĩ khơng mất thời gian để huấn luyện Phương pháp tách từ cũng khơng phức tạp Do đĩ, trong đồ án này, việc tách từ được lựa chọn theo cơng trình của H Nguyễn
3.1.2 Lựa chọn phương pháp biểu diễn văn bản: Hiện nay, phương pháp phổ biến nhất là biểu diễn văn bản
bằng mơ hình khơng gian vector Trong mơ hình này, đồ án xin lựa chọn theo mơ hình này
3.1.3 Lựa chọn phương pháp rút trích đặc trưng: Ta sẽ sử dụng phương pháp truyền thống
3.3.4 Lựa chọn phương pháp phân lớp câu hỏi: Trong đồ án này sẽ chọn Nạve Bayes để phân loại văn bản
Tuy nhiên việc ứng dụng ở đây cĩ một số cải tiến
Trang 193.2 Mô hình kiến trúc hệ thống
Phân tích
Phân loại câu hỏi Unknown
Thư ký
So khớp câu hỏi
So khớp câu trả lời
Chuyên gia
Không thành công
Thành công
Có câu hỏi tương
tự
Không có câu hỏi tương tự
Câu trả lời
Phân phối bằng
phối
tự động
Hình 3.1: Mô hình hoạt động của hệ thống