Kiến trúc của hệ thống CQA[1]

Một phần của tài liệu Luận văn Thạc sĩ Nghiên cứu một số bài toán trong hỏi đáp cộng đồng (Trang 29 - 38)

chọn q ít thì câu hỏi vẫn được mở và hệ thống sẽ tự động gợi ý câu trả lời tốt nhất một cách tự động (tùy hệ thống).

• Thành viên trong hệ thống CQA: Thành viên trong hệ thống bao gồm người hỏi, người trả lời và người bình chọn. Thơng tin chi tiết về người dùng được lưu vào hồ sơ người dùng. Các hoạt động của người dùng đều được module quản lý thành viên xử lý và lưu trữ.

1.2.2. So sánh hệ thống QA và CQA

Hệ thống hỏi đáp tự động và hệ thống hỏi đáp cộng đồng có những điểm khác nhau như sau:

• Sự khác nhau đầu tiên đó là loại câu hỏi. Hầu hết câu hỏi trong hệ thống hỏi đáp QA tự động là câu đơn (câu hỏi chỉ gồm 1 câu). Trong khi đó câu hỏi trong hệ thống CQA là câu phức tạp, câu hỏi gồm nhiều câu, nhiều ý hỏi. Ví dụ câu hỏi trong hệ thống hỏi đáp Yahoo!answer như sau:

"Em năm nay 16t ạ . Cao 1m6 nhưng lại có 36kg rất gầy ln ạ nên đi đâu cũng bị hỏi và chê gầy @@ điều đó làm em khó chịu và đau đầu . Mặc dù em đã sử dụng sữa bột tăng cân , sữa bí đỏ tăng cân , ăn đêm , ăn nhiều . Nhưng số cân nặng đó vẫn duy trì từ lớp 6 tới lớp 10 ln ạ :(( em tính chuyển qua dùng thuốc tăng cân thì có nên ko ? Dùng thuốc nào ? Hay có

• Điểm khác nhau thứ hai là sự khác nhau về nguồn câu trả lời. Hệ thống QA câu trả lời được lấy ra từ nguồn văn bản đối với những hệ thống QA nguồn đóng hoặc từ dữ liệu trên web với QA nguồn mở. Còn đối với hệ thống CQA câu trả lời được lấy từ kho dữ liệu CQA được đóng góp từ người dùng. Do người dùng khác nhau dẫn tới độ dài nội dung, cấu trúc và phong cách viết của mỗi người khác nhau cho nên chất lượng câu trả lời khác nhau. Đây cũng là thách thức trong hệ thống CQA khi đánh giá chất lượng câu trả lời.

• Điểm thứ ba là về chất lượng câu trả lời, liên quan tới chất lượng của hệ thống hỏi đáp. Hệ thống QA trích rút câu trả lời từ những nguồn có uy tín nên câu trả lời đáng tin cậy. Tuy nhiên trong hệ thống CQA do câu trả lời được đóng góp từ nhiều người dùng khác nhau với mức độ uy tín khác nhau. Việc xác định chất lượng câu trả lời trở thành bài toán quan trọng trong hệ thống CQA khi một câu hỏi có nhiều câu trả lời.

• Điểm khác nhau thứ tư là liên quan tới việc khai thác một số đặc trưng có sẵn trong hệ thống CQA như các bình chọn tích cực hoặc tiêu cực cho câu trả lời. Những thuộc tính này tạo ra tương tác giữa người dùng, từ đó làm giàu thêm thơng tin cho hệ thống CQA đồng thời góp phần cho việc xác định chất lượng câu hỏi. Trong khi đó hệ thống QA thơng thường khơng chứa những thuộc tính này.

• Điểm khác biệt cuối cùng đó là độ trễ khi nhận được câu trả lời của hệ thống. Đối với hệ thống QA, câu trả lời được thực hiện trích rút tự động từ văn bản nên hệ thống gần như khơng có độ trễ. Cịn trong hệ thống CQA thì thời gian nhận câu trả lời phụ thuộc vào người dùng trả lời câu hỏi. Tất cả những đặc điểm trên dẫn tới các bài tốn nghiên cứu chính của hệ thống CQA liên quan tới việc phân tích câu hỏi mà sử dụng ngôn ngữ tự nhiên trong hệ thống và liên quan tới xác định chất lượng câu trả lời. Cụ thể các bài tốn và các thách thức được trình bày trong phần tiếp theo dưới đây.

1.3. Các bài toán trong hệ thống hỏi đáp cộng đồng CQA1.3.1. Xác định chất lượng của câu trả lời 1.3.1. Xác định chất lượng của câu trả lời

Hệ thống hỏi đáp cộng đồng là hệ thống cho phép người dùng trả lời câu hỏi mà họ quan tâm và muốn chia sẻ kiến thức. Do đó, một câu hỏi khi được đăng

lên có thể có nhiều câu trả lời ứng viên. Đây là hệ thống mở, dễ dàng chia sẻ và trao đổi thông tin dẫn tới sự tăng trưởng mạnh mẽ của các loại hệ thống này. Tuy nhiên hệ thống cũng có những điểm hạn chế. Hạn chế thứ nhất đó là nội dung đa dạng về chủ đề nhưng lại thiếu cấu trúc phù hợp với từng loại. Điểm thứ hai liên quan tới những câu trả lời kém chất lượng được tạo ra bởi một số lý do như nhận thức của người dùng về một số lĩnh vực cịn hạn chế, thiếu tập trung và khơng chuẩn bị kĩ càng khi trả lời. Do là người dùng khác nhau nên các câu trả lời có sự khác biệt lớn về chất lượng, cấu trúc và phạm vi câu trả lời. Do đó, hệ thống CQA cần có phương pháp tồn diện khai thác câu trả lời để đưa ra câu trả lời tốt nhất của câu hỏi hoặc gợi ý câu trả lời tốt nhất cho câu hỏi mới.

Hệ thống CQA hiện tại có hai bài tốn giúp người dùng tổng hợp câu trả lời tốt nhất một cách tự động đó là bài tốn xếp hạng các câu trả lời ứng viên theo mức độ liên quan tới câu hỏi[16] và bài tốn tóm tắt câu trả lời giúp người dùng có câu trả lời đầy đủ nhất[17]. Hai bài tốn này góp phần đáp ứng tiêu chí giảm thời gian cho người dùng khi phải tìm và tổng hợp câu trả lời.

Bài tốn tìm câu trả lời tốt nhất trong hệ thống hỏi đáp

Forum hỏi đáp cộng đồng ngày càng phổ biến tuy nhiên những website này hầu như khơng được kiểm sốt. Do đó, hệ thống này có điểm hạn chế vì lý do bất kì ai cũng có thể đăng câu hỏi và trả lời câu hỏi. Ưu điểm của việc làm này đó là mọi người có thể tự do hỏi bất kì câu hỏi gì mà mình muốn và mong đợi rằng nhận được câu trả lời tốt và trung thực. Như vậy khi một câu hỏi được đăng lên sẽ có nhiều người dùng vào trả lời cho câu hỏi đó. Người hỏi sẽ phải rất nỗ lực và mất thời gian để đọc tất cả các câu trả lời đó (có những câu hỏi có đến hàng trăm câu trả lời do người dùng khác tham gia trả lời) và hiểu được chúng. Vì vậy việc đề xuất bài tốn tự động tìm những câu trả lời tốt nhất trong số các câu trả lời của người dùng đã trả lời cho câu hỏi đó sẽ hỗ trợ cho người dùng có thể đánh giá và tìm được câu trả lời mong muốn một cách nhanh nhất.

Bài tốn tóm tắt câu trả lời

Bài toán thứ hai nằm trong nội dung đánh giá chất lượng câu trả lời đó là bài tốn tóm tắt câu trả lời. Các forum hỏi đáp là nguồn dữ liệu giàu tri thức. Nó thường chứa những thơng tin về các chủ đề mà khó tìm qua máy tìm kiếm. Các câu trả lời có thể khơng được chuẩn bị kĩ lưỡng, chứa spam hoặc thậm chí

là những câu đùa cợt hoặc quảng cáo. Đặc biệt, một số câu hỏi dạng giải thích, quan điểm hoặc liệt kê (câu hỏi non-factoid) thì câu trả lời nhận được thường khơng đầy đủ kể cả những câu trả lời tốt nhất. Đây cũng là khó khăn cho người đọc khi phải đọc qua tất cả các câu trả lời này để tổng hợp câu trả lời tốt nhất. Vì lý do này mà bài tốn tóm tắt câu trả lời được đặt ra hỗ trợ người dùng tổng hợp câu trả lời một cách tự động.

1.3.2. Bài tốn tìm câu hỏi tương đồng

Cùng với sự phát triển của các web-forum, ngày càng có nhiều người sử dụng hệ thống này để tìm kiếm câu trả lời cho câu hỏi mà họ cần. Để hệ thống hoạt động tốt hơn và đáp ứng yêu cầu của người dùng, các hệ thống này cũng hướng tới giải quyết thách thức về độ trễ khi chờ câu trả lời từ người dùng. Thực tế cho thấy rằng có những câu hỏi khi đăng lên vài ngày sau mới nhận được câu trả lời, thậm chí là khơng có ai trả lời. Vấn đề này được giải quyết dựa vào ý tưởng sử dụng các câu trả lời đã có của các câu hỏi trước đó của hệ thống thơng qua các câu hỏi tương đồng với câu hỏi mới. Cụ thể là thơng qua việc tìm câu hỏi tương đồng của câu hỏi mới và tận dụng câu trả lời có sẵn của những câu hỏi tương đồng này để tìm ra câu trả lời cho câu hỏi mới. Điều này giúp cho hệ thống giảm thời gian chờ như đã đề cập ở phần trên.Do đó bài tốn tìm câu hỏi tương đồng được đặt ra để giải quyết[18].

1.4. Thách thức của hệ thống hỏi đáp CQA

Với các phân tích ở phần trên, thách thức lớn nhất của hệ thống hỏi đáp cộng đồng là vấn đề khoảng cách từ vựng (lexical gap) bao gồm:

• Khoảng cách từ vựng giữa các câu hỏi: đây là thách thức quan trọng trong hệ thống hỏi đáp nói chung. Nó liên quan tới sự sai khác trong cách dùng ngôn ngữ tự nhiên khi diễn tả giữa các câu hỏi khác nhau. Trong hệ thống cộng đồng có nhiều người dùng cho nên cách diễn đạt câu hỏi khác nhau (dùng từ vựng khác nhau) nhưng cùng diễn đạt một ý như nhau. Hơn nữa, đây lại là dữ liệu cộng đồng. Các câu hỏi được đặt ra trong hệ thống hỏi đáp cộng đồng sử dụng ngôn ngữ tự nhiên, chứa nhiều ý hỏi và phức tạp, trong câu chứa nhiều nội dung không liên quan trực tiếp tới câu hỏi và câu trả lời (ví dụ như lời chào hỏi, câu đùa cợt,...). Do vậy, việc xác định tính tương đồng của hai câu hỏi càng khó khăn.

• Khoảng cách từ vựng giữa câu hỏi và câu trả lời: giống như thách thức trên về ngôn ngữ giữa các câu hỏi, trong cặp câu hỏi-câu trả lời cịn có thêm sự sai khác rất lớn do thông tin của câu hỏi và câu trả lời khơng đối xứng. Ngồi tiêu chí về độ chính xác của các hệ thống dự đốn cịn có tiêu chí quan trọng khơng kém đó là tiêu chí về thời gian phản hồi thơng tin của người dùng. Khi tập dữ liệu CQA ngày càng lớn thì việc xác định độ tương đồng ngữ nghĩa của câu hỏi mới với các câu hỏi trong kho dữ liệu CQA gặp thách thức về mặt thời gian. Vì vậy việc nghiên cứu bài tốn tìm câu hỏi tương đồng càng có ý nghĩa.

Tóm lại, luận án giải quyết hai thách thức lớn nhất là thách thức về khoảng cách từ vựng giữa câu hỏi với câu hỏi và câu hỏi với câu trả lời. Đồng thời luận án cũng đề cập tới giải quyết thách thức về thời gian tìm kiếm trong bài tốn tìm câu hỏi tương đồng. Qua đó với việc giải quyết bài tốn tìm câu hỏi tương đồng cũng khắc phục độ trễ của hệ thống hỏi đáp cộng đồng như đã đề cập ở trên. Để giải quyết các thách thức trên các mơ hình học sâu kết hợp với cơ chế chú ý được đề xuất để nâng cao hiệu quả của các mơ hình dự đốn. Các mơ hình học sâu là mơ hình end-to-end mà từ dữ liệu thơ đầu vào đi qua các các lớp ẩn trong mạng nơ ron và đưa ra kết quả đầu ra. Trong mơ hình này, việc học đặc trưng ngữ nghĩa của văn bản và lớp dữ đốn được tích hợp và học một cách đồng thời thay vì thực hiện một cách tuần tự. Các mơ hình này đã được chứng minh phù hợp với dữ liệu cộng đồng trong các bài toán hỏi của hệ thống hỏi đáp CQA.

1.5. Tập dữ liệu hỏi đáp

Để đánh giá các mơ hình đề xuất, các nhà nghiên cứu đã sử dụng các tập dữ liệu phổ biến sau:

• Yahoo!webscope: Dữ liệu được thu thập từ trang hỏi đáp Yahoo!answer với đa dạng các thể loại. Đây là tập dữ liệu rất giàu thông tin chưa được gán nhãn bao gồm 87.390 câu hỏi và 314.446 câu trả lời. Tập dữ liệu này chứa rất nhiều thơng tin hữu ích cho việc nghiên cứu trên các bài tốn của CQA ví dụ như các thơng tin về chủ đề câu hỏi, nội dung câu hỏi, mô tả chi tiết (giải thích) của câu hỏi, câu trả lời tốt nhất do người hỏi chọn và các câu trả lời khác cho câu hỏi đó. Các thơng tin khác liên quan tới người hỏi, thời gian hỏi và trả lời, ngày bình chọn cho câu trả lời.

• Trec-QA: Tập TREC-QA bao gồm 1409 cặp câu hỏi-câu trả lời được chia thành 1229, 80 và 100 cặp câu tương ứng với ba tập: tập huấn luyện, tập phát triển và tập kiểm thử [19]. Tập này chứa các cặp câu hỏi dạng factoid và một câu trả lời của nó. Câu hỏi factoid là câu hỏi ngắn gọn và thường

chứa từ để hỏi như what, where, when, who. Trong tập này mỗi câu hỏi

chỉ có một câu trả lời và được gán nhãn POS, NER và phân tích câu phụ thuộc.

• Quora: Đây là tập dữ liệu được công bố trong cuộc thi Kaggle6. Tập dữ liệu này được thu thập từ trang hỏi đáp Quora.com bao gồm các lĩnh vực trong cuộc sống hay công việc hàng ngày. Tập dữ liệu này chứa các câu hỏi được gán nhãn duplicate (1) và non-duplicate (0) phục vụ cho bài tốn tìm câu hỏi tương đồng. Trong 404.351 cặp câu hỏi có 149.306 cặp câu có nhãn 1 và 255.045 cặp câu có nhãn 0.

• SemEval: Tập này được thu thập từ forum hỏi đáp chia sẻ mọi thứ liên quan tới công việc và cuộc sống ở Qatar7. Chủ đề ở đây cũng rất phong phú và đa dạng với nhiều lĩnh vực. Đây là tập dữ liệu được công bố trong Workshop đánh giá về ngữ nghĩa8 [16, 20, 21]. Từ khía cạnh ngơn ngữ, tập dữ liệu này rất có giá trị và thách thức. Tập dữ liệu này chứa lượng lớn đặc trưng của văn bản web như URLs, biểu tượng cảm xúc, địa chỉ email, lỗi sai chính tả, kí hiệu viết tắt. Forum sử dụng ngôn ngữ tiếng Anh và là nơi trao đổi, cung cấp mọi thông tin về Qatar cho mọi người mới sống và có ý định tới sống ở đây. Do khơng phải là người bản ngữ dùng tiếng Anh nên câu có nhiều lỗi về mặt ngữ pháp, nhiều từ không phổ biến hoặc những từ không tồn tại.

Workshop được tổ chức hàng năm với sự tham gia của nhiều đội tuyển. Tập dữ liệu cụ thể công bố đến năm 2017. Tập dữ liệu này cũng được chia là ba tập huấn luyện, tập phát triển và tập kiểm thử chứa các câu hỏi và các câu trả lời của nó. Với mỗi câu hỏi gốc có 10 câu hỏi liên quan (được đưa qua máy tìm kiếm) và được gán ba nhãn: Perfect match, Relevant và Irrelevant. Với mỗi câu hỏi liên quan có 10 câu trả lời được gán ba nhãn Good, Bad và Potentially useful. Mỗi câu hỏi liên quan lại có 10 câu trả lời cũng được gán ba nhãn như trên. 6https://www.kaggle.com/c/quora-question-pairs/data 7 https://www.qatarliving.com/forum 8 http://alt.qcri.org/semeval2017/task3/index.php?id=data-and-tools

Bảng 1.1: Thống kê một số tập dữ liệu CQA được các nhà khoa học dùng để đánh giá các mơ hình đề xuất.

Train Dev Test Tổng

Yahoo!answer 87.390 câu hỏi và 414.446 câu trả lời Trec-QA 1229 80 100 1409 cặp câu hỏi-câu trả lời

Quora 404.289 cặp câu hỏi

SemEval 2017 267 50 88 405 câu hỏi gốc và 4050 câu trả lời

Các tập dữ liệu trên được thống kê tại bảng 1.1. Khác biệt lớn nhất giữa tập Trec-QA và các tập dữ liệu cịn lại đó là về đặc trưng ngơn ngữ: tập dữ liệu TREC-QA là tập dữ liệu với ngôn ngữ tiếng Anh chuẩn. Các câu hỏi chủ yếu là câu hỏi factoid và các câu hỏi thường ngắn gọn không mô tả được hết những thách thức của hệ thống hỏi đáp cộng đồng. Trong khi đó tập dữ liệu khác như Yahoo!answer, Quora, SemEval ngơn ngữ dùng là ngơn ngữ nói. Đặc biệt hơn, tập SemEval đơi khi người dùng cịn dùng ngôn ngữ khác không phải tiếng Anh. Ngoài ra các tập dữ liệu như Yahoo!answer và Quora lại không chia thành các

Một phần của tài liệu Luận văn Thạc sĩ Nghiên cứu một số bài toán trong hỏi đáp cộng đồng (Trang 29 - 38)

Tải bản đầy đủ (PDF)

(128 trang)