công cụ tìm kiếm trực tuyến Google đang còn nhiều hạn chế khi đưa ra các kết quả cho những truy vấn dạng phương pháp, cách thức howto query, ví dụ: Làm thế nào để…, cách để…… cho miền tiếng Việt. Thường thì các kết quả tốt và chính xác sẽ được Google đặt vào ô đề xuất và xuất hiện ở đầu những kết quả tìm kiếm được. Để giải quyết vấn đề trên, luận văn đã có một vài đóng góp: 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 howto cho tiếng Việt. 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 đề.
ĐẠ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 ĐẠ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 LỜI CAM ĐOAN “Tôi xin cam đoan kết nghiên cứu, thực nghiệm trình bày luận văn tơi thực hướng dẫn PGS.TS Phạm Bảo Sơn Tiến sĩ Nguyễn Bá Đạt, trước chưa sử dụng để làm luận văn thạc sĩ cho tổ chức giáo dục, hay trường đại học khác.” iii LỜI CẢM ƠN Trước tiên tơi xin bày tỏ cảm kích đặc biệt tới thầy giáo - PGS TS Phạm Bảo Sơn, thầy giáo - Tiến sĩ Nguyễn Bá Đạt hướng dẫn tận tình tơi gặp phải rắc rối có câu hỏi vấn đề nghiên cứu Thầy cho phép tự bày tỏ quan điểm đồng thời đưa nhận xét, góp ý, dẫn dắt hướng suốt thời gian nghiên cứu, thực đề tài luận văn thạc sĩ Tôi xin cảm ơn thầy cô 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 kiến thức chuyên sâu chuyên ngành suốt thời gian học tập để tơi có tảng kiến thức hỗ trợ lớn cho trình làm luận văn thạc sĩ Sau tơi xin tỏ lịng biết ơn đến cha mẹ, người thân bạn bè bên cạnh để ủng hộ, động viên tơi sống để tơi hoàn thành tốt luận văn thạc sĩ Xin chân thành cảm ơn! iv LỜI MỞ ĐẦU Trong thời đại công nghệ số, Internet phổ biến khắp giới, nhu cầu tìm kiếm thơng tin vơ lớn từ tất nhóm thành phần xã hội Trong tỉ lệ tìm kiếm thơng tin cách giải vấn đề chiếm tỉ trọng đáng kể Chúng ta gọi câu tìm kiếm để giải vấn đề “How-to query” Một số câu truy vấn điển hình như: • “cách nấu sườn xào chua ngọt”, • “cách cài đặt windows 10”, • “cách gỡ bỏ ứng dụng không cần thiết điện thoại”, • v.v Giải pháp phổ biến xem tốt sử dụng cơng cụ tìm kiếm Google Tuy nhiên, có nhiều vấn đề cịn tồn như: • Trong Google hoạt động tốt tương đối xác với ngơn ngữ phổ biến Tiếng Anh Mức độ hiệu Google với dạng How-to query hạn chế với ngơn ngữ phổ biến hơn, có tiếng Việt • Kết tìm kiếm Google đề xuất phương pháp thay liệt kê giải pháp khác để người dùng chọn kết phù hợp • Bố cục trình bày phần nhỏ ô đề xuất nên không thân thiện với người dùng v Hình 1: Kết tìm kiếm Google cho "How-to query" Trong khuôn khổ luận văn này, đề xuất giải pháp để giải vấn đề Cụ thể, sẽ: - Cung cấp cơng cụ tìm kiếm cho câu hỏi “How-to query” tốt cho tiếng Việt - Các kết công cụ biểu diễn nhiều phương pháp để giải vấn đề (nếu có) để người dùng lựa chọn giải pháp phù hợp - Biểu diễn kết thân thiện với người dùng vi 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 Giới thiệu Vấn đề Phạm vi toán mục tiêu nghiên cứu Đóng góp luận văn Cấu trúc luận văn Chương Kiến thức 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 2.1.1.2 Cấu trúc tổng quan 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 Google 19 Nền tảng 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 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 28 Hệ thống tìm kiếm tri thức miền Wikihow 28 Tính tốn độ tương đồng hai câu văn 28 Tập liệu 30 Xây dựng hệ thống 33 3.3.1 Thu thập liệu từ wikiHow index liệu vào Elasticsearch 33 3.3.1.1 Thu thập liệu từ trang web wikiHow 33 3.3.1.2 Index liệu vào công cụ ElasticSearch 38 3.3.2 Tìm kiếm 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 miền wikiHow 41 3.3.3.1 Xây dựng sở 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 47 Thực nghiệm kết luận 47 viii Tập liệu thực nghiệm 47 Tính tốn thời gian tìm kiếm 47 Tiến hành thực nghiệm 49 Đánh giá người dùng 51 Những cải tiến tương lai 53 Tài liệu tham khảo 55 Phụ lục 57 ix Danh sách bảng Bảng 1: Thị phần sử dụng cơng cụ tìm kiếm toàn cầu năm 2019 Bảng 2: Bảng đối chiếu số khái niệm Elasticsearch MySQL 14 Bảng 3: Phân tách từ ngôn ngữ khác 23 Bảng 4: Ma trận số tương đồng 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 - Cải tiến giao diện để người dùng có trải nghiệm tốt - Cải tiến logic tính tốn thuật tốn tìm kiếm tương đồng ngữ nghĩa cách sử dụng thêm số word2vec khác 54 Tài liệu tham khảo [1] "Elasticsearch Intro," [Online] Available: https://www.elastic.co/guide/en/elasticsearch/reference/current/elasticsearchintro.html [2] A Aizawa, An information-theoretic perspective of tf–idf measures, Hitotsubashi Chiyoda-ku, Tokyo 101-8430, Japan: Information Processing and Management, 2003 [3] G S a M J McGill, Introduction to modern information retrieval, 1983 [4] G S a C Buckley, "Term-weighting approaches in automatic text retrieval," Information Processing & Management, 1988, p 24 [5] G B T S B P Dang Duc Pham, "A Hybrid Approach to Vietnamese Word Segmentation Using Part of Speech Tags," 2009 International Conference on Knowledge and Systems Engineering, 2009 [6] B Carpenter, "Character language models for Chinese word segmentation and named entity recognition," Proceedings of the Fifth SIGHAN Workshop, pp 169-172, 2006 [7] C Papageorgiou, "Japanese word segmentation by hidden Markov model," Proceedings of the HLT Workshop, pp 283-288, 1994 [8] F Peng, "Chinese segmentation and new word detection using conditional random fields," Proceeding of COLING, pp 562-568, 2004 [9] Y W AJ Jacobs, "Maximum entropy word segmentation of Chinese text," Proceedings of the Fifth SIGHAN Workshop, pp 108-117, 2006 55 [10] X D R N J C JS Zhou, "A hybrid approach to Chinese word segmentation around CRFs," Proceeding of the Fourth SIGHAN Workshop on Chinese Language Processing, 2005 [11] S C N Xue, "Combining classifiers for Chinese word segmentation," The First SIGHAN Workshop attached with the 19th COLING, pp 57-63, 2002 [12] X Lu, "Towards a hybrid model for Chinese word segmentation," Proceeding of Fourth SIGHAN workshop on Chinese Language Processing, 2005 [13] D Q N D Q N M D M J Thanh Vu, "Proceedings of NAACL-HLT 2018," pp 56-60, 2018 56 Phụ lục Danh sách câu hỏi ngẫu nhiên dạng “How to query” thu thập từ người dùng Truy vấn dạng tiếng Việt Cách cài đặt java Cách đặt mật lớp cho facebook Cách đổi nhạc chng iphone X Cách khố icloud Cách chọn bàn phím Cách root điện thoại Android Cách nhận mã miễn phí vận chuyển shopee Cách cài win 10 Cách tạo boot usb Cách để tạo quảng cáo facebook Cách để trở thành facebook partner Cách để report video youtube Cách để khôi phục tài khoản facebook Cách tạo chức đăng nhập facebook reactjs Cách kết nối airpods Cách tạo ảnh panorama photoshop Cách xố phơng photoshop Cách thêm phụ đề cho video Cách chơi aoe Cách tạo bảng ms word Cách chỉnh cỡ chữ ms excel Cách đổi hình máy tính Cách chia sẻ file qua Airdrop Cách tạo ảnh động Cách cài extension cho Chrome Cách tăng độ sáng hình máy tính Cách tăng âm lượng điện thoại Cách chỉnh độ sáng ảnh Cách chỉnh giọng nói video Cách tạo tài khoản Google Cách sử dụng touchpad Cách ăn sushi Truy vấn dạng tiếng Anh how to install java how to set up two-factor authentication for facebook how to set up ringtone on iphone X how to deactive icloud account how to choose mechanical keyboard how to root android operation system how I get free shipping vouchers from Shopee how to install Windows 10 on pc how to make boot usb how to create facebook advertisement how to become facebook partner how to report youtube's video how to recover facebook account how to install facebook login package on reactjs How to connect airpods How to make a panorama in photoshop how to make blur mask layer on photoshop how to add video subtitle how to play AOE how to create table in microsoft word how to adjust font size in MS excel how to change desktop wallpaper how to share file by airdrop How to Make an Animated GIF how to install extension on chrome how to increase brightness of monitor How to increase the volume on my phone how to increase brightness of photo how to modify voice on video how to create google account how to use touchpad how to eat sushi 57 Cách sử dụng đũa Cách sử dụng dao nĩa Cách nấu bít tết Cách gọt táo Cách sử dụng lị vi sóng Cách chọn dưa hấu ngon Cách làm caramel Cách trang trí cà rốt Cách làm bánh ga tô Cách phi lê cá hồi Cách rang cà phê Cách mở chai rượu vang Cách nghiền khoai tây Cách bóc trứng luộc Cách ăn dừa Cách làm mứt dâu Cách nướng bánh mì Cách cạo râu Cách thắt cà vạt Cách buộc dây giày Cách xoay rubic Cách chọn kiểu tóc phù hợp với khn mặt Cách để có giấc ngủ ngon Cách chơi poker Cách chơi đàn pinano Cách xây lâu đài cát Cách xin visa sang Mỹ Cách câu cá Cách sinh tồn nơi hoang dã Cách hồi sức tim phổi Cách sơ cứu vết thương hở Cách băng bó khuỷu tay Cách pha trà ngon Cách cắm hoa Cách trồng Cách xử lí bị rắn cắn Cách chiết cành Cách gấp chăn Cách đan len Cách sử dụng nồi áp suất how to use chopsticks how to use knife and fork how to cook steak How to peel apple how to use microwave how to pick watermelon how to make caramel how to decorate by carrot how to bake a cake how to cut salmon How to roast coffee how to open a bottle of champagne how to mash potato how to peel eggs how to eat coconut how to make strawberry jam how to make toast how to shave face how to tie how to tie shoes how to solve rubik's cube how to find a hairstyle to fit your face how to get a good sleep how to play poker how to play piano how to make a sand castle how to apply for us visa how to fish how to survive on your own in the wild How to CPR How to first aid open wounds how to tape up your elbow how to make tea the right way how to arrange flowers how to plant a new tree How to handle snake bites How to make marcot How to fold the blanket How to knit how to cook in a pressure cooker 58 Cách quần áo Cách để trở thành ca sĩ Cách xin lỗi người khác Cách nhuộm tóc Cách chơi golf Cách kẻ lơng mày Cách sơn móng tay Cách bơi Cách dựng lều Cách sử dụng nước hoa Cách chữa gù lưng Cách đăng ký kết hôn Cách tham gia chương trình Shark Tank Cách rửa tay xà phịng Cách thắt nút dây Cách vẽ gà Cách vẽ cờ hải tặc Cách trả lời vấn Cách chạy marathon Cách dạy viết chữ Cách giảm đau Cách hạ sốt nhanh chóng Cách chụp ảnh selfie Cách loại bỏ bã kẹo cao su dính quần áo Cách xe đạp Cách xe máy Cách trượt ván Cách quản lý tài Cách sử dụng bình cứu hoả Cách xử lý bị chảy máu mũi Cách học tiếng anh hiệu Cách tính diện tích hình chữ nhật Cách vẽ hình trịn Cách lọc nguồn nước bẩn Cách đo lượng mưa Cách làm giảm huyết áp Cách giảm cholesterol máu Cách đạt điểm cao kì thi toeic Cách tạo lửa từ đá lửa how to iron how to become a singer how to apologize how to dye hair how to play golf How to draw eyebrows how to paint nails How to swim how to set up a tent how to apply perfume how to correct back posture how to get marriage license How to get on shark tank How to wash your hands with soap How to tie a knot how to draw a chicken how to draw a jolly roger How to answer the interview How to run a marathon How to teach children to write how to relieve muscle pain how to reduce fever how to take a selfie how to remove gum from clothes How to ride a bike how to ride a motorcycle How to skateboard How to manage finance how to use a fire extinguisher How to handle a nosebleed how to learn english well How to calculate the area of a rectangle how to draw a circle how to purify water how to measure rainfall How to lower blood pressure How to lower cholesterol in the blood How to get a high score in the toeic exam how to start a fire with firestone 59 Cách lấy nước từ nước biển Cách chế tạo thuốc nổ Cách chế tạo kim cương Cách làm thuyền giấy Cách tính vận tốc Cách tính lực ma sát Cách tạo xà phòng Cách làm tên lửa gia Cách để Làm Kem Cách để Làm xúc xích Ý Cách để Rã đơng cá hồi Cách để Hâm nóng bít tết Cách để Đánh bơng Kem tươi Cách để Nấu Cơm dừa Cách để Quay Thịt vịt Cách để Ướp Cá hồi Cách để Làm Bánh quy Cách để Làm trứng ốp la Cách để Làm kem béo Cách để Kiếm tiền Trên Blog Cách để Kiếm tiền Nhờ Facebook Cách để Bán hàng Amazon Cách để Giao dịch Forex Cách để Tính chi phí biên Cách để Viết báo cáo kinh doanh Cách để Tăng cường sức khỏe cổ tay Cách để Tiếp thị Sản phẩm Cách để Lập Báo cáo Tài Cách để Tính Giá trị Trái phiếu Cách để Tập squat Cách để Kéo giãn Cách để Trị tàn nhang Cách để Tập Động tác Chống đẩy Cách để Xin Thôi Việc Cách để Ấp Trứng gà Cách để Lập trang trại ni bị Cách để Phân biệt rắn độc Cách để Chăm sóc Nhím Cách để Cho Ngựa ăn cách làm giảm rụng lơng chó how to turn seawater into drinking water how to make gunpowder how to make artificial diamond How to Make a Paper Boat how to calculate velocity How to find force of friction How to make soap How to make rocket at home how to make ice cream how to make italian sauce how to thaw salmon how to reheat steak how to whip whipping cream how to cook coconut rice how to roast duck how to marinate salmon how to make cookies how to make an omelette How to make fat cream how to make money on blogging how to make money with facebook how to sell on amazon how to trading on forex how to calculate marginal costs how to write a business report how to strengthen wrists how to marketing a products how to prepare financial statements how to calculate bond value how to perform squats how to stretch muscles how to treat freckles how to get push ups better how to quit a job how to hatch a chicken egg how to set up a cow farm how to distinguish poisonous snakes how to take care of porcupine How to feed horses how to reduce dog hair loss 60 cách dạy chó bắt tay Cách để vệ sinh cho chó Cách để chữa lành trĩ Cách để Điều trị khối máu tụ nhà Cách để hạ huyết áp cao Cách để Điều trị Khô mắt cách điều trị viêm nang lông cách để nhân biết bệnh sốt rét cách để nhổ cách điều trị đau khớp Cách để giảm ngứa muỗi đốt cách để chữa viêm phế quản Cách loại bỏ Tình trạng Đầy Cách để Trị Cảm cúm cách điều trị đau cổ cách gạt bỏ cảm xúc Cách để Thư giãn Tâm trí Cách vượt qua mặc cảm tự ti cách để giảm cân an toàn Cách để Giảm mỡ thừa Cách giảm cân Tự nhiên Cách để Cai nghiện Heroin Cách để Sử dụng Bao cao su Cách để Phòng ngừa cảm cúm Cách để Bổ sung Protein Cách để Làm Nước Cách để Tránh Thai Cách để Bổ sung Vitamin B Cách để Tự làm Phô mai Cách để Tạo dáng chụp hình Cách để Tạo Blog Cách để Tính Tỷ lệ Lợi nhuận Gộp Cách để Kiểm tra lý lịch quốc tế Cách để Tính số FTE Cách để Lưu tập tin vào USB Cách để Tải ảnh từ Twitter Cách để Phát Nói dối Cách để Thuyết phục Mọi người Cách để Hôn kiểu Pháp Cách để Thêm nhạc chuông vào iPhone how to teach dogs to shake hands how to clean the dog how to treat hemorrhoids how to treat a hematoma at home how to lower high blood pressure how to treat dry eyes how to treat folliculitis how to detect malaria how to extract baby teeth how to treat joint pain how to reduce itchy mosquito bites how to cure bronchitis how to get rid of bloating how to treat the flu how to treat neck pain how to get rid of emotions How to relax your mind how to overcome inferiority complex how to lose weight safely how to lose fat how to lose weight naturally How to detox heroin How to use a Condom how to prevent the flu how to get more protein How to clean water how to avoid pregnancy how to take vitamin b How to make cheese how to take a photo pose How to create a blog How to Calculate Gross Profit Ratio How to Check International Background How to calculate the FTE number How to save files to a USB flash drive How to Download Pictures from Twitter how to detect a lie How to convince People How to French Kissing How to add ringtones to iPhone 61 Cách để Xem ứng dụng mua iOS Cách để Đồng danh bạ Gmail vào iPhone Cách để Sao lưu liệu iPhone Cách để Tắt autocorrect Android Cách để Tải WhatsApp Cách để Cài đặt Facebook Messenger Cách để Hủy Tài khoản Uber Cách để Xóa lịch sử iPhone Cách để Tạo tài khoản Snapchat How to View Purchased Apps on iOS How to sync Gmail contacts to iPhone How to backup iPhone data How to turn off Android autocorrect How to Download WhatsApp How to Install Facebook Messenger How to remove an Uber account How to delete history on iPhone How to create a Snapchat account 62 63 64 65 66 67 68 ... sau: https://www.wikihow.vn/Lưu-tập-tin-vào-USB https://www.wikihow.vn/Thay-đổi-ngơn-ngữ-mặc-định-trong-Google-Chrome https://www.wikihow.vn/Thay-đổi-quốc-gia-trên-YouTube Với url ta tạo phần tử... https://www.wikihow.vn/Thể_loại:Máy-tính-v? ?-? ?iện-tử 34 ta duyệt url: https://www.wikihow.vn/Thể_loại:Máy-tính-v? ?-? ?iện-tử?pg=1 https://www.wikihow.vn/Thể_loại:Máy-tính-v? ?-? ?iện-tử?pg=2 https://www.wikihow.vn/Thể_loại:Máy-tính-v? ?-? ?iện-tử?pg=3... doanh - Ẩm thực Giải trí - Sức khỏe - Sở thích Thủ công Mỹ nghệ - Ngày lễ Truyền thống - Nhà Làm vườn - Chăm sóc Cá nhân Phong cách - Thú cưng Động vật - Triết học Tôn giáo - Mối quan hệ - Thể