intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Luận văn Thạc sĩ Khoa học máy tính: Hệ thống tìm kiếm tri thức thông minh trên miền wikihow

Chia sẻ: Dopamine Grabbi | Ngày: | Loại File: PDF | Số trang:80

25
lượt xem
4
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Luận văn nghiên cứu và cung cấp một công cụ tìm kiếm cho câu hỏi “How-to query” tốt hơn cho tiếng Việt. Các kết quả của công cụ trên sẽ biểu diễn nhiều phương pháp để giải quyết vấn đề (nếu có) để người dùng có thể lựa chọn giải pháp phù hợp nhất. Biểu diễn các kết quả thân thiện hơn với người dùng. Mơi các bạn tham khảo!

Chủ đề:
Lưu

Nội dung Text: Luận văn Thạc sĩ Khoa học máy tính: Hệ thống tìm kiếm tri thức thông minh trên miền wikihow

  1. ĐẠI HỌC QUỐC GIA HÀ NỘI ĐẠI HỌC CÔNG NGHỆ LÊ ĐỖ TÂN HỆ THỐNG TÌM KIẾM TRI THỨC THÔNG MINH TRÊN MIỀN WIKIHOW LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH HÀ NỘI - 2021 i
  2. ĐẠI HỌC QUỐC GIA HÀ NỘI ĐẠI HỌC CÔNG NGHỆ LÊ ĐỖ TÂN HỆ THỐNG TÌM KIẾM TRI THỨC THÔNG MINH TRÊN MIỀN WIKIHOW Ngành: Khoa học máy tính Chuyên ngành: Khoa học máy tính Mã số: 8480101.01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS. TS. Phạm Bảo Sơn CÁN BỘ ĐỒNG HƯỚNG DẪN: TS. Nguyễn Bá Đạt HÀ NỘI - 2021 ii
  3. LỜI CAM ĐOAN “Tôi xin cam đoan các kết quả nghiên cứu, thực nghiệm được trình bày trong luận văn là do tôi thực hiện và được sự hướng dẫn của PGS.TS Phạm Bảo Sơn và Tiến sĩ Nguyễn Bá Đạt, trước đây chưa từng được sử dụng để làm luận văn thạc sĩ cho bất kỳ tổ chức giáo dục, hay trường đại học nào khác.” iii
  4. LỜI CẢM ƠN Trước tiên tôi xin bày tỏ sự cảm kích đặc biệt tới thầy giáo - PGS. TS Phạm Bảo Sơn, và thầy giáo - Tiến sĩ Nguyễn Bá Đạt đã hướng dẫn tận tình khi tôi gặp phải rắc rối hoặc có câu hỏi về vấn đề nghiên cứu của mình. Thầy vẫn luôn cho phép tôi tự do bày tỏ quan điểm đồng thời đưa ra những nhận xét, góp ý, dẫn dắt tôi đi đúng hướng trong suốt thời gian nghiên cứu, thực hiện đề tài luận văn thạc sĩ. Tôi cũng xin cảm ơn các thầy cô trong khoa Công nghệ thông tin – Trường Đại học Công Nghệ - Đại học quốc gia Hà Nội đã truyền đạt cho tôi những kiến thức chuyên sâu về chuyên ngành trong suốt thời gian học tập để tôi có được nền tảng kiến thức hỗ trợ rất lớn cho tôi trong quá trình làm luận văn thạc sĩ. Sau cùng tôi xin tỏ lòng biết ơn đến cha mẹ, người thân và bạn bè đã luôn bên cạnh để ủng hộ, động viên tôi trong cuộc sống để tôi có thể hoàn thành tốt luận văn thạc sĩ. Xin chân thành cảm ơn! iv
  5. LỜI MỞ ĐẦU Trong thời đại công nghệ số, Internet phổ biến khắp thế giới, nhu cầu tìm kiếm thông tin vô cùng lớn từ tất cả các nhóm thành phần trong xã hội. Trong đó tỉ lệ tìm kiếm thông tin về cách giải quyết một vấn đề chiếm một tỉ trọng đáng kể. Chúng ta gọi những câu tìm kiếm để giải quyết một vấn đề là “How-to query”. Một số câu truy vấn điển hình như: • “cách nấu món sườn xào chua ngọt”, • “cách cài đặt windows 10”, • “cách gỡ bỏ một ứng dụng không cần thiết trên điện thoại”, • v.v. Giải pháp phổ biến và được xem như tốt nhất hiện nay là sử dụng công cụ tìm kiếm Google. Tuy nhiên, có khá nhiều vấn đề còn tồn tại như: • Trong khi Google hoạt động tốt và tương đối chính xác với các ngôn ngữ phổ biến như Tiếng Anh. Mức độ hiệu quả của Google với dạng How-to query còn rất hạn chế với các ngôn ngữ ít phổ biến hơn, trong đó có tiếng Việt. • Kết quả tìm kiếm trên Google chỉ đề xuất ra duy nhất một phương pháp thay vì liệt kê ra các giải pháp khác nhau để người dùng có thể chọn được kết quả phù hợp nhất. • Bố cục trình bày chỉ là một phần nhỏ trên ô đề xuất nên không được thân thiện với người dùng. v
  6. Hình 1: Kết quả tìm kiếm của Google cho "How-to query" Trong khuôn khổ luận văn này, tôi đề xuất một giải pháp để giải quyết các vấn đề trên. Cụ thể, tôi sẽ: - Cung cấp một công cụ tìm kiếm cho câu hỏi “How-to query” tốt hơn cho tiếng Việt. - Các kết quả của công cụ trên sẽ biểu diễn nhiều phương pháp để giải quyết vấn đề (nếu có) để người dùng có thể lựa chọn giải pháp phù hợp nhất. - Biểu diễn các kết quả thân thiện hơn với người dùng. vi
  7. MỤC LỤC LỜI CAM ĐOAN ............................................................................................................. iii LỜI CẢM ƠN ................................................................................................................... iv LỜI MỞ ĐẦU .................................................................................................................... v MỤC LỤC ........................................................................................................................ vii Danh sách bảng .................................................................................................................. x Danh sách hình vẽ ............................................................................................................. xi Chương 1 ............................................................................................................................ 1 Giới thiệu ............................................................................................................................ 1 Vấn đề ........................................................................................................................... 1 Phạm vi bài toán và mục tiêu nghiên cứu..................................................................... 4 Đóng góp của luận văn ................................................................................................. 6 Cấu trúc của luận văn ................................................................................................... 7 Chương 2 ............................................................................................................................ 8 Kiến thức nền tảng ............................................................................................................ 8 Công cụ tìm kiếm ......................................................................................................... 8 2.1.1. Công cụ tìm kiếm trực tuyến ..................................................................................... 8 2.1.1.1. Tổng quan ............................................................................................................... 8 2.1.1.2. Cấu trúc tổng quan các công cụ tìm kiếm trực tuyến ........................................... 10 2.1.2. Công cụ tìm kiếm mã nguồn mở ............................................................................. 11 2.1.2.1. Lucene .................................................................................................................. 11 2.1.2.2. Elasticsearch ......................................................................................................... 13 2.1.3. Các dạng câu trả lời nhanh của Google ................................................................... 19 Nền tảng về xử lý ngôn ngữ tự nhiên ......................................................................... 21 2.2.1. Tìm kiếm ngữ nghĩa (Semantic search)................................................................... 21 2.2.2. TF-IDF ..................................................................................................................... 22 vii
  8. 2.2.2.1. TF – term frequency ............................................................................................. 22 2.2.2.2. IDF – inverse document frequency ...................................................................... 22 2.2.2.3. Giá trị TF-IDF ...................................................................................................... 23 2.2.3. Phân tách từ (word segmentation) ........................................................................... 23 2.2.4. Gán nhãn từ loại (Part of speech tagging – POSTag) ............................................. 25 Công cụ hỗ trợ ............................................................................................................ 25 2.3.1. VnCoreNLP ............................................................................................................. 25 2.3.2. Word2vec................................................................................................................. 26 2.3.3. Elasticsearch ............................................................................................................ 27 Chương 3 .......................................................................................................................... 28 Hệ thống tìm kiếm tri thức trên miền Wikihow ........................................................... 28 Tính toán độ tương đồng giữa hai câu văn ................................................................. 28 Tập dữ liệu .................................................................................................................. 30 Xây dựng hệ thống ..................................................................................................... 33 3.3.1. Thu thập dữ liệu từ wikiHow và index dữ liệu vào Elasticsearch........................... 33 3.3.1.1. Thu thập dữ liệu từ trang web wikiHow .............................................................. 33 3.3.1.2. Index dữ liệu vào công cụ ElasticSearch .............................................................. 38 3.3.2. Tìm kiếm bài viết phù hợp với truy vấn .................................................................. 40 3.3.3. Xây dựng website tìm kiếm tri thức trên miền wikiHow ........................................ 41 3.3.3.1. Xây dựng cơ sở dữ liệu với MySQL .................................................................... 41 3.3.3.2. ElasticSearch server.............................................................................................. 41 3.3.3.3. Backend server sử dụng Play framework ............................................................. 41 3.3.3.4. Xây dựng giao diện người dùng với AngularJs.................................................... 43 Chương 4 .......................................................................................................................... 47 Thực nghiệm và kết luận ................................................................................................ 47 viii
  9. Tập dữ liệu thực nghiệm ............................................................................................. 47 Tính toán thời gian tìm kiếm ...................................................................................... 47 Tiến hành thực nghiệm ............................................................................................... 49 Đánh giá của người dùng............................................................................................ 51 Những cải tiến trong tương lai.................................................................................... 53 Tài liệu tham khảo ........................................................................................................... 55 Phụ lục .............................................................................................................................. 57 ix
  10. Danh sách bảng Bảng 1: Thị phần sử dụng các công cụ tìm kiếm trên toàn cầu năm 2019........................... 9 Bảng 2: Bảng đối chiếu một số khái niệm của Elasticsearch và MySQL .......................... 14 Bảng 3: Phân tách từ trong các ngôn ngữ khác nhau ......................................................... 23 Bảng 4: Ma trận chỉ số tương đồng giữa các từ theo Word2vec ........................................ 30 Bảng 5: Các từ tương đồng với "xinh đẹp" ........................................................................ 39 Bảng 6: Cấu hình triển khai hệ thống tìm kiếm ................................................................. 48 x
  11. Danh sách hình vẽ Hình 1: Kết quả tìm kiếm của Google cho "How-to query" ............................................... vi Hình 2: Google đề xuất kết quả cho câu truy vấn dạng How-to query ................................ 2 Hình 3: Google không có kết quả trả lời nhanh cho câu hỏi How-to query trên tiếng Việt 3 Hình 4: So sánh kết quả search nội dung Tiếng Anh và Tiếng Việt trên Google ................ 3 Hình 5: Kết quả của Google cho "How-to query" không bao gồm các bước ...................... 4 Hình 6: Trang wikiHow........................................................................................................ 5 Hình 7: Cấu trúc tổng quan hệ thống Apache lucene ......................................................... 11 Hình 8: Câu trả lời trực tiếp của Google ............................................................................ 19 Hình 9: Câu trả lời ngắn của Google .................................................................................. 20 Hình 10: Câu trả lời dài của Google ................................................................................... 20 Hình 11: Bốn yếu tố quan trọng trong Semantic search..................................................... 21 Hình 12: Các phương pháp tiếp cận của bài toán phân tách từ .......................................... 24 Hình 13: Luồng xử lý của VnCoreNLP ............................................................................. 26 Hình 14: Minh họa dữ liệu từ WikiHow ............................................................................ 32 Hình 15: Thu thập dữ liệu và index dữ liệu vào Elasticsearch ........................................... 33 Hình 16: Mô tả luồng hoạt động của cơ chế thu thập dữ liệu trên wikiHow ..................... 36 Hình 17: Bố cục của bài viết trên wikiHow ....................................................................... 37 Hình 18: Cấu trúc lưu trữ dữ liệu bài viết của wikiHow trên database .............................. 38 Hình 19: Luồng xử lý truy vấn dữ liệu của người dùng ..................................................... 40 Hình 20: Vòng đời Play framework ................................................................................... 42 Hình 21: Bố cục của ứng dụng Play ................................................................................... 43 Hình 22: Giao diện tìm kiếm .............................................................................................. 45 xi
  12. Hình 23: Nội dung bài viết phù hợp với truy vấn của người dùng .................................... 46 Hình 24: Tốc độ tìm kiếm của hệ thống ............................................................................. 49 Hình 25: Tỉ lệ tìm thấy câu trả lời dạng how-to query trên Google ................................... 50 Hình 26: Tỉ lệ tìm thấy câu trả lời trên hệ thống xây dựng ................................................ 51 Hình 27: Thống kê khảo sát tính chính xác của những câu trả lời từ đánh giá của người dùng .................................................................................................................................... 52 Hình 28: Thống kê khảo sát tính tiện lợi của hệ thống ...................................................... 52 Hình 29: Thống kê khảo sát tính thân thiện với người dùng .............................................. 53 xii
  13. Chương 1 Giới thiệu Vấn đề Việc tìm kiếm thông tin về một vấn đề nào đó trong thời đại công nghệ số là rất dễ dàng, chúng ta chỉ cần truy cập vào một số công cụ tìm kiếm nổi tiếng như: Google, Bing, Baidu, Ask… sau đó nhập vào vấn đề mà mình đang cần giải quyết. Với thời gian rất ngắn các công cụ tìm kiếm trên sẽ cho chúng ta các kết quả phù hợp. Và dần dần các công cụ tìm kiếm như một trợ lý đắc lực mỗi khi chúng ta chưa có giải pháp để giải quyết một vấn đề nào đó. Có thể ví dụ một số trường hợp thường gặp như: khi bạn dùng máy tính bị lỗi và bạn sẽ nghĩ ngay đến đến Google để có thể tìm cách khắc phụ sự cố này, hay một ngày đẹp trời muốn nấu cho người yêu một món ăn gì đó mới lạ thì bạn sẽ tìm thông tin và cách thức để có thể làm nó… Google sẽ giúp bạn có những thông tin liên quan đến vấn đề bạn cần giải quyết. Các kết quả tìm kiếm sát nhất với vấn đề sẽ được trình bày bằng tiêu đề của trang web hoặc bài viết (có chứa đường dẫn đến nội dung gốc) cùng với đó là mô tả đơn giản của chúng. Sau đó người dùng sẽ vào lần lượt các đường dẫn đó và tìm kiếm giải pháp thích hợp. Điều này khiến người dùng mất khá nhiều thời gian, chính vì thế Google đã có những cải tiến để người dùng có thể nhận được câu trả lời mong muốn nhanh hơn bằng cách thêm ô đề xuất ngay trên những kết quả tìm kiếm của người dùng. Trong trường hợp Google có câu trả lời được cho là chính xác với truy vấn dạng “How-to query” của người dùng, ô đề xuất sẽ hiển thị các bước thực hiện để giải quyết vấn đề mà người dùng đang tìm kiếm: 1
  14. Hình 2: Google đề xuất kết quả cho câu truy vấn dạng How-to query Trong thực tế, Google nói riêng, các công cụ tìm kiếm nói chung không phải mọi lúc đều tìm được các kết quả phù hợp với truy vấn, nhất là trong bối cảnh đa dạng về ngôn ngữ và miền dữ liệu. Vì vậy, vẫn còn tồn tại một số hạn chế có thể kể đến như: - Google hoạt động tốt và chính xác với các ngôn ngữ phổ biến như tiếng Anh, nhưng với tiếng Việt thì mức độ hiệu quả chưa cao nên đôi khi sẽ không hiển thị ô đề xuất: 2
  15. Hình 3: Google không có kết quả trả lời nhanh cho câu hỏi How-to query trên tiếng Việt - Google chỉ cho ra được kết quả phù hợp trên dữ liệu Tiếng Anh nhưng Tiếng Việt thì không: Hình 4: So sánh kết quả search nội dung Tiếng Anh và Tiếng Việt trên Google 3
  16. Kết quả tìm kiếm trong hình 4 cho chúng ta thấy cùng một truy vấn, khi tìm kiếm bằng tiếng Anh thì Google có kết quả dưới dạng các bước cụ thể và có hình minh họa để người dùng có thể hình dung được một cách tổng quát. Nhưng khi tìm kiếm bằng tiếng việt thì câu trả lời chỉ được biểu diễn dưới dạng một đoạn trích, và đôi khi kết quả sẽ không sát với ý của người dùng đang cần tìm kiếm. - Kết quả tìm kiếm của Google chỉ được hiển thị một phần nội dung trong ô đề xuất nên không thân thiện với người dùng. Cùng với đó, chỉ có một phương pháp được liệt kê thay vì hiển thị nhiều phương pháp để người dùng có thể lựa chọn cho đúng mục đích cần tìm kiếm. Hình 5: Kết quả của Google cho "How-to query" không bao gồm các bước Phạm vi bài toán và mục tiêu nghiên cứu Với những vấn đề được nêu bên trên, luận văn sẽ giải quyết các vấn đề còn tồn tại bằng cách: - Xây dựng một công cụ tìm kiếm cho dạng câu truy vấn “how-to query" trong tiếng Việt, dữ liệu tập chung vào ngôn ngữ tiếng Việt. 4
  17. - Thể hiện nhiều phương pháp cho mỗi một vấn đề cần được giải quyết một cách cụ thể rõ ràng và có thể có hình minh họa. - Biểu diễn nội dung của kết quả tìm kiếm thân thiện hơn với người dùng. Và để đạt được những mục tiêu này, luận văn đã chọn phạm vi nghiên cứu là dữ liệu trên miền wikiHow. WikiHow là một trang web cộng đồng trực tuyến, nó chứa một cơ sở dữ liệu rộng lớn về các hướng dẫn cách làm mọi thứ. Được thành lập vào năm 2005 bởi doanh nhân Internet Jack Herrick, trang web này nhằm tạo ra các bài viết hướng dẫn cách làm hữu ích nhất thế giới, cho phép mọi người trên thế giới học cách làm bất cứ điều gì. WikiHow là một dự án nội dung mở và nguồn mở, cung cấp cho các bài viết có nội dung hướng dẫn trực tuyến bằng cách cho phép người dùng có thể chỉnh sửa đóng góp nội dung các trang. Một số số liệu ấn tượng của wikiHow có thể kể đến như: - Vào tháng 2 năm 2005, wikiHow có hơn 35,5 triệu lượt truy cập. - Tính đến tháng 8 năm 2017, wikiHow chứa hơn 190.000 bài viết hướng dẫn miễn phí và hơn 1,6 triệu người dùng đã đăng ký. - Vào ngày 11 tháng 4 năm 2010, một bài viết trên wikiHow có tiêu đề "Cách giảm cân nhanh" đạt 5 triệu lượt xem trang, lần đầu tiên của trang web này đạt được. "Cách chụp ảnh màn hình trong Microsoft Windows" là bài viết phổ biến nhất của trang web. Hình 6: Trang wikiHow 5
  18. Các bài viết trên trang web wikiHow sẽ mô tả một cách đầy đủ và chi tiết quy trình thực hiện để giải quyết các vấn đề thuộc nhiều lĩnh vực khác nhau trong đời sống. Một số bài viết có trên wikiHow như: - Lĩnh vực máy tính và điện tử: o Cách để Khôi phục dữ liệu từ ổ cứng của laptop hỏng o Cách để Tạo biểu đồ thanh trong excel - Lĩnh vực sức khỏe: o Cách để Giảm Cân o Cách để Tăng số lượng tế bào hồng cầu - Lĩnh vực chăm sóc cá nhân và phong cách: o Cách để Làm trắng da với chanh o Cách để Kẻ Viền Mắt - Lĩnh vực ẩm thực: o Cách để làm gà rán KFC o Cách để Làm Sôcôla Các bài viết có thể có nhiều phương pháp để thực hiện, được phân thành các phần và mỗi phần thì sẽ có các bước thực hiện đi kèm với đó có thể có hình ảnh minh họa cụ thể. Đóng góp của luận văn Luận văn này đã đóng góp: - Một công cụ tìm kiếm dựa trên ngữ nghĩa cho các câu truy vấn dạng phương pháp, cách thức trong miền tiếng Việt từ đó giúp cho việc tìm kiếm lời giải, cách giải quyết cho các vấn đề trong thực tế một cách dễ dàng và nhanh chóng hơn. - Nghiên cứu và đề xuất một phương pháp giải quyết tốt loại truy vấn how-to cho tiếng Việt. 6
  19. - Cung cấp giải pháp cho các vấn đề một các đa dạng và trực quan, giúp tăng hiệu quả tìm kiếm và giảm thời gian giải quyết vấn đề. Tôi sẽ đóng góp các kết quả nghiên cứu của mình cho cộng đồng để có thể tiếp tục phát triển các công cụ mới, và mở rộng các nghiên cứu hiện có trong lĩnh vực xử lý ngôn ngữ tự nhiên và trí tuệ nhân tạo như: hỏi đáp tự động hay bài toán trích xuất thông tin. Cấu trúc của luận văn Phần còn lại của luận văn, tôi sẽ giới thiệu thêm về các kiến thức nền tảng ở chương 2. Chương 3 sẽ mô tả về “Hệ thống tìm kiếm tri thức trên miền wikiHow”, đề xuất phương pháp tính độ tương đồng của hai câu văn và cách xây dựng hệ thống. Cuối cùng, chương 4 sẽ là một số thực nghiệm và kết luận lại các công việc mà tôi đã thực hiện. 7
  20. Chương 2 Kiến thức nền tảng Công cụ tìm kiếm 2.1.1. Công cụ tìm kiếm trực tuyến 2.1.1.1. Tổng quan Công cụ tìm kiếm trực tuyến là một phần mềm được truy cập trên Internet phục vụ cho việc tìm kiếm thông tin trên mạng world wide web. Khi sử dụng công cụ tìm kiếm thì người dùng sẽ phải nhập một từ khóa về nội dung mình cần tìm hiểu, và kết quả của các công cụ sẽ là một danh sách các website, ảnh, video hoặc địa chỉ bản đồ… Hiện nay có rất nhiều công cụ tìm kiếm khác nhau có thể nhắc đến như: Google, Bing, Baidu,… và thị phần của chúng thì cạnh tranh rất gay gắt trên toàn cầu. Dưới đây là con số thống kê thị phần của các công cụ tìm kiếm thống kê vào năm 2019: 8
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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