Thực nghiệm cho thấy mô hình Skip-gram cho kết quả vượt trội so với CBOW. Hàm mất mát của mô hình Skip-gram như sau:
−X t∈V X −m<=j<=m,j6=0 logP(w(t+j)|w(t)). (1.21) Glove
Glove là phương pháp được đưa ra bởi Pennington và cộng sự năm 2014 [31]. Đây là mô hình cải tiến của word2vec. Mô hình này học bằng cách xây dựng ma trận đồng xuất hiện. Glove mang tính toàn cục vì nó tính xác suất xuất hiện của một từ trong toàn bộ tập dữ liệu. Hơn nữa Glove cũng có độ ổn định trung bình tốt hơn qua các lần chạy so với Word2vec.
Chi phí để mô hình đưa ra dự đoán tại công thức (1.21) gồm phép lấy tổng qua toàn bộ các từ trong từ điển. Điều này có thể dẫn tới tổng chi phí tính toán trở nên quá lớn. Mặt khác, thông thường sẽ có nhiều từ hiếm trong từ điển. Các từ hiếm này ít khi xuất hiện trong tập dữ liệu. Trong hàm mất mát cross-entropy, dự đoán cuối cùng của phân phối xác suất có điều kiện trên một lượng lớn các từ hiếm gặp rất có thể sẽ không được chính xác. Vì vậy, mô hình Glove ra đời để khắc phục nhược điểm này của mô hình Skip-gram.
fastText
Word2vec không sử dụng trực tiếp thông tin về hình thái của từ. Các từ khác nhau sẽ có véc tơ biểu diễn khác nhau (ví dụ từ ’cat’ và ’cats’ không thể hiện được mối quan hệ với nhau trong mô hình). Mô hình fastText [35] đã được đề xuất để đưa thông tin về hình thái từ vào mô hình Skip-gram của Word2vec. Mỗi từ w là tập hợp của các từ con từ 3-gram đến 6-gram và các từ con đặc biệt. Khi đó từ w sẽ được tổng hợp bằng cách lấy tổng của các từ con đó.
BERT
Các từ nhúng (Word2vec, Glove hay fastText) được tạo ra ở bước tiền huấn luyện là một ma trận. Trong đó, mỗi hàng là một véc tơ biểu diễn của từ trong bộ từ vựng được định nghĩa trước. Khi một từ trong bất kì ngữ cảnh nào cũng sẽ được gán một véc tơ giống nhau. Một từ viết giống nhau nhưng trong ngữ cảnh khác nhau chúng có nghĩa khác nhau nên nó cũng phải được biểu diễn khác nhau. Chính vì vậy mà biểu diễn từ từ ngữ cảnh được đề xuất gần đây như ELMO [36], BERT [5]. Trong đó mô hình BERT mang lại hiệu quả nổi bật trong những năm gần đây trong các bài toán NLP như hỏi đáp, đọc hiểu, phân tích cảm xúc, phân loại văn bản. BERT (Bidirectional Encoder Representations from Transformers) là biểu diễn mã hóa hai chiều từ Transformer. Chi tiết về mô hình BERT được trình bày và sử dụng tại chương 4.
1.7. Kết luận chương 1
Tóm lại trong chương này, các bài toán nghiên cứu trong hệ thống CQA và các mô hình cơ bản được trình bày. Các mô hình học sâu được trình bày trong chương này được vận dụng để giải quyết các bài toán đặt ra. Cụ thể luận án tập trung vào trình bày các bài toán trên hệ thống hỏi đáp cộng đồng. Trước hết là bài toán đánh giá câu trả lời của câu hỏi. Bài toán này thực hiện đánh giá các câu trả lời của người dùng đã trả lời cho câu hỏi được đăng lên hệ thống CQA. Do các câu trả lời nhận được từ người dùng khác nhau dẫn tới chất lượng câu hỏi khác nhau. Hơn nữa số lượng câu trả lời của một câu hỏi lớn. Việc tự động đưa ra công cụ tìm câu trả lời tốt nhất cũng như tóm tắt câu trả lời là cần thiết hỗ trợ người hỏi hoặc người dùng khác khi muốn đọc để chọn cho mình câu trả lời tốt nhất (giải pháp của hai bài toán này được trình bày trong chương 2 và chương 3 của luận án). Tiếp theo là bài toán hỗ trợ cho câu hỏi mới được đăng lên hệ thống để gợi ý cho người hỏi câu trả lời một cách tự động từ những câu
trả lời đã có. Để giải quyết bài toán này, bài toán tìm câu hỏi tương đồng được đặt ra với mục đích tận dụng những câu trả lời của câu hỏi tương đồng để tìm câu trả lời cho câu hỏi mới (giải pháp cho bài toán tìm câu hỏi tương đồng được trình bày tại chương 4). Thách thức lớn nhất của các bài toán này là thách thức về khoảng cách từ vựng. Đây chính là cơ sở để nghiên cứu sinh đề xuất ra các mô hình để giải quyết thách thức này. Trong đó, một số mô hình ngôn ngữ đã được đề xuất để giải quyết các bài toán NLP nói chung và bài toán hỏi đáp nói riêng. Đặc biệt, cơ chế chú ý được kết hợp vào các mô hình học sâu giúp cho việc học biểu diễn câu tốt hơn. Các nội dung được trình bày trong chương 1 là tiền đề cho các nghiên cứu về một số mô hình được đề xuất trong các chương tiếp theo. Một phần kiến thức liên quan trong chương 1 được trình bày trong bài báo "Towards Event Timeline Generation from Vietnamese News" đăng trên kỷ yếu của hội thảo quốc tế 19th International Conference on Computational Linguistics and Intelligent Text Processing, Cicling, 2018.
Chương 2
BÀI TOÁN LỰA CHỌN CÂU TRẢ LỜI ĐÚNG TRONG HỆ THỐNG HỎI ĐÁP CỘNG ĐỒNG
Bài toán tìm câu trả lời (còn gọi là bài toán lựa chọn câu trả lời hay tìm câu trả lời tốt nhất) là một bài toán trong phần đánh giá chất lượng của câu trả lời trong hệ thống hỏi đáp cộng đồng. Trong những năm gần đây, mô hình học sâu kết hợp với cơ chế chú ý được đề xuất cho các bài toán NLP nói chung và trong hỏi đáp nói riêng. Trong chương này, mô hình match-LSTM được đề xuất cho bài toán lựa chọn câu trả lời. Vấn đề về khoảng cách từ vựng ngày càng trở nên thách thức hơn khi nội dung của câu hỏi và câu trả lời chứa nhiều thành phần không liên quan tới nội dung hỏi. Hơn nữa, câu hỏi chứa nhiều ý hỏi. Trong quá trình thực nghiệm, trọng số chú ý theo từng từ (word by word) làm việc không hiệu quả trên mô hình gốc đối với cặp dữ liệu câu hỏi và câu trả lời trong mạng xã hội. Vì vậy, ngữ nghĩa của cặp từ vựng lấy từ tri thức bên ngoài được đề xuất sử dụng để hướng dẫn mô hình học trọng số chú ý của từng từ trong câu hỏi với các từ trong câu trả lời. . Thực nghiệm cho thấy rằng, mô hình kết hợp được đề xuất học trọng số chú ý tốt hơn so với mô hình gốc trên tập dữ liệu cộng đồng. Đồng thời, việc học trọng số chú ý tốt giúp cho mô hình dự đoán tốt hơn so với mô hình gốc. Mô hình đề xuất cũng cho kết quả tương đương và tốt hơn so với kết quả đứng đầu trên tập dữ liệu của cuộc thi SemEval 2017 [21].
2.1. Giới thiệu
Hệ thống hỏi đáp cộng đồng là các forum nổi tiếng như Stack Overflow (https://stackoverflow.com/) and Qatar Living (https://www.qatarliving.com/ forum) được biết tới với kho dữ liệu lên tới hàng triệu cặp câu hỏi và các câu trả lời do người dùng trong cộng đồng tạo ra. Có rất nhiều nghiên cứu được thực hiện trên các bài toán khác nhau trong hệ thống CQA như lựa chọn câu trả lời, tìm câu hỏi liên quan hay phân lớp câu trả lời [37, 38, 21]. Trong đó, bài toán lựa chọn câu trả lời là bài toán quan trọng và là bài toán chính của hệ thống hỏi đáp. Một người dùng có thể đăng câu hỏi và mong muốn nhận được các câu trả lời từ người dùng khác. Một số forum chứa nhiều câu hỏi mà các câu hỏi này có hàng trăm câu trả lời (ví dụ như hệ thống Yahoo!answer
(https://answers.yahoo.com/)). Do vậy, người dùng rất mất thời gian khi đọc tất cả câu trả lời đó và đánh giá từng câu trả lời một. Hơn nữa, những câu hỏi có nội dung về các lĩnh vực đặc thù mà người bình thường không phải chuyên gia trong lĩnh vực đó khó có thể phân biệt được câu trả lời đúng hay sai. Vì những lý do này việc xây dựng một công cụ tự động đánh giá câu trả lời tốt hay không tốt là một công việc rất cần thiết.
Bài toán lựa chọn câu trả lời được phát biểu như sau: Cho một câu hỏi q và các câu trả lời ứng viên {a1, a2, ..., an}. Mục đích của bài toán là xác định các câu trả lời đúng. Đây là một bài toán rất quan trọng và được nhiều nhà nghiên cứu quan tâm [39, 40]. Với bài toán này thách thức lớn nhất là vấn đề khoảng cách từ vựng. Khoảng cách từ vựng là sự sai khác giữa từ vựng của câu hỏi và câu trả lời. Ngoài sự khác nhau về từ vựng trong câu hỏi và câu trả lời, độ dài của câu hỏi và câu trả lời cũng lệch nhau, Câu hỏi chứa nhiều ý hỏi. Một lý do nữa dẫn tới thách thức về khoảng cách từ vựng nữa là ngôn ngữ dùng trong các forum ở dạng văn nói. Nhiều câu hỏi và câu trả lời chứa nhiều thông tin dư thừa, không đề cập trực tiếp tới nội dung chính của câu hỏi và câu trả lời như lời chào hỏi, biểu tượng cảm xúc, từ viết tắt, viết sai chính tả. Những nguyên nhân này gây khó khăn cho mô hình dự đoán câu trả lời đúng. Hình 2.1 là ví dụ về cặp câu hỏi và câu trả lời minh họa các thách thức này trong tập dữ liệu SemEval 2017. Trong ví dụ 1, câu hỏi chứa phần dư thừa không liên quan tới nội dung chính như là "Hello, Can you help me". Hơn nữa, trong ví dụ còn chứa nhiều biểu tượng cảm xúc như ’:0’, ’:)’, ’:P’, các từ viết tắt. Trong ví dụ thứ hai, câu hỏi chứa nhiều câu và nhiều ý hỏi.
Thông thường một số nghiên cứu sử dụng thêm nguồn tri thức từ ngoài để đưa vào mô hình giúp khai thác ngữ nghĩa tốt hơn,ví dụ như nguồn tri thức: ConceptNet, Wordnet, DBpedia [41]. Các nghiên cứu gần đây sử dụng phương pháp tiếp cận dựa vào mạng học sâu và cơ chế chú ý để giải quyết bài toán tìm câu trả lời đúng mà không cần sử dụng các kỹ thuật trích rút đặc trưng đặc biệt hoặc sử dụng thêm nguồn tri thức bên ngoài [7, 40]. Các phương pháp này hướng tới việc tìm ra những từ mang thông tin quan trọng của câu hỏi và câu trả lời. Nhiều nghiên cứu đã chỉ ra rằng cơ chế chú ý mang lại thành tựu to lớn trong các bài toán NLP như dịch máy, suy diễn ngôn ngữ, đọc hiểu và hỏi đáp [27, 7, 2, 4]. Hơn nữa, thông qua việc học các trọng số chú ý của các từ và cụm từ trong câu thì trọng số của cụm từ dư thừa và nhiễu thường có trọng số nhỏ, các từ quan trọng sẽ có trọng số cao. Do đó, các từ dư thừa không liên quan tới
Ví dụ 1:
Subject:Nationalities banned in Qatar
Question:Hello! Can you help me, is there anyone knows the list of nationalities who are banned and cannot apply employment visa in Qatar?
Answer(good): Pakistanis are facing severe problems. There is no ban on Visa but it is very hard, near impossible to get.
Answer(bad): I just want to know because, our company will move in qatar and we will be hiring some staff like pakistani,egyptian, jordan etc.. Im currently here in the UAE, and Bangladeshi, Syrian and Egyptian are not issuing employment visa now , I just want to know is Qatar also are banning this nationals?
Answer(bad): Hi are you suspecting your nationality .:)
Answer(bad): @khalli & SwiftUnlock - are you twins?
Answer(good): Yup Pakistanis are banned becoz Qatar people are brilliant enough to do that...I wonder why USA and Uk doesnt have that kind of brains :)
Answer(good): There is no offical ban on any nationality as that would cause diplomatic problems, however most of the nationalities you have mentioned are near impossible to get work visas for.
Answer(bad): What work do you want to start here
Answer(bad): NOTA - are correct answers nor the Quota - its Wasta.
Answer(bad): Zafir, There were 7 sets of twins of Khalli till yesterday Ví dụ 2:
Subject:Seafood
Question:All this talking about crab and fishing trip made me hungry! :o) What kind of seafood place would you recommend in Doha? What do you enjoy eating there? (fish, shrimps, crabs,...?) How much does it cost to treat yourself in there? And (of course I’d ask!) which places are best to avoid and why?
Answer(good):i went to these places in Doha, like Best Fish or Golden Fish- and they were really horrible. oh well, i guess we only have Sheraton and Intercont :o) If you’re looking for a problem, you’re probably gonna find one
Answer(good):iryssa how t uuu? opk lemme start.. i love crab in chilli... prawns fry are too good.. try the prawns golden fry fro somewer squids are nice wen fried.. yummmmm.... i love solomon steaks.. too good...especially with potatoes and lemon yuuuuuuuuuuummmmmmmmmmmmmmmmmmm[imgassist|nid= 17892|title=
http://braveatheart.blogspot.com/|desc=|link=none|align=lef t|width= 180|height= 135]
Answer(bad):Dont know about any particular restaurant that is really good here.But let me know if you find any GOd, I am hungry again....Answer(good): Massaya Restaurant COrniche Intersection DOha CLub/Marina Gate Heard they are good...Yet to try
Answer(Good):The Fish Market at Intercontinental: Friday dinner seafood buffet 180QR/ea/YUMMY.
Answer(good):Fish Market at the Intercon is the best, you can also try the old Movenpick, seafood buffet for QR180 with unlimited wine and beers
Answer(good):i went to these places in Doha, like Best Fish or Golden Fish- and they were really horrible. oh well, i guess we only have Sheraton and Intercont :o) If you’re looking for a problem, you’re probably gonna find one
Answer(bad):Any suggestions to have Peper Crab in Doha
Answer(good):did u go to the Best fish on Fareej Nasser St. ? I think they have really good food or i dont know what really good seafood is.
Answer(bad): tony, yes i went there...u know what was the only good think they’ve had there? fatoush! :o) and we all know that is not seafood :P If you’re looking for a problem, you’re probably gonna find one.
Answer(bad): did u try the lobster?