1. Trang chủ
  2. » Tất cả

(Đồ án hcmute) xây dựng mô hình chatbot

64 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP NGÀNH CƠNG NGHỆ KỸ THUẬT MÁY TÍNH XÂY DỰNG MƠ HÌNH CHATBOT GVHD: ÐẬU TRỌNG HIỂN SVTH : NGUYỄN HOÀNG THỌ MSSV: 15119048 SVTH : PHẠM NGỌC MINH HUY MSSV: 15119024 SKL 0 Tp Hồ Chí Minh, tháng 07/2019 an TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO ĐỒ ÁN TỐT NGHIỆP XÂY DỰNG MƠ HÌNH CHATBOT SVTH: NGUYỄN HỒNG THỌ MSSV: 15119048 SVTH: PHẠM NGỌC MINH HUY MSSV: 15119024 Khoá: 2015 Ngành: CƠNG NGHỆ KỸ THUẬT MÁY TÍNH GVHD: Ths ĐẬU TRỌNG HIỂN Tp Hồ Chí Minh, tháng 07 năm 2019 an CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc *** -Tp Hồ Chí Minh, ngày … tháng 07 năm 2019 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: NGUYỄN HOÀNG THỌ MSSV: 15119048 Họ tên sinh viên: PHẠM NGỌC MINH HUY MSSV: 15119024 Ngành:Công Nghệ Kỹ Thuật Máy Tính Lớp: 15119CL2 Giảng viên hướng dẫn: Ths Đậu Trọng Hiển ĐT: 0962443310 Ngày nhận đề tài: 04/03/2019 Ngày nộp đề tài: 30/06/2019 Tên đề tài: Xây dựng mơ hình Chatbot Các số liệu, tài liệu ban đầu: Kiến thức môn Toán Cao Cấp, Xác suất Thống kê ứng dụng, Máy học Nội dung thực đề tài:      Thiết kế mơ hình nhận dạng định danh Thiết kế hệ thống phản hồi Tích hợp với tảng Messenger Triển khai thực tế đánh giá Viết báo cáo Sản phẩm: Mơ hình Chatbot hỏi đáp vấn đề làm hộ chiếu lần đầu TRƯỞNG NGÀNH GIẢNG VIÊN HƯỚNG DẪN i an CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc *** -PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Họ tên Sinh viên: Nguyễn Hoàng Thọ MSSV: 15119048 Họ tên Sinh viên: Phạm Ngọc Minh Huy MSSV: 15119024 Ngành: Công nghệ Kỹ thuật máy tính Tên đề tài: Xây dựng mơ hình Chatbot Họ tên Giáo viên hướng dẫn: Đậu Trọng Hiển ii an CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc *** -PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Họ tên Sinh viên: Nguyễn Hoàng Thọ MSSV: 15119048 Họ tên Sinh viên: Phạm Ngọc Minh Huy MSSV: 15119024 Ngành: Công nghệ Kỹ thuật máy tính Tên đề tài: Xây dựng mơ hình Chatbot Họ tên Giáo viên phản biện: NHẬN XÉT Về nội dung đề tài & khối lượng thực hiện: Ưu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm: (Bằng chữ: ) Tp Hồ Chí Minh, ngày… tháng… năm 2019 Giáo viên phản biện (Ký & ghi rõ họ tên) iii an LỜI CẢM ƠN Để hồn thành luận văn tốt nghiệp này, khơng nhờ có nỗ lực thân mà cịn có giúp đỡ tận tình thầy trường Đại học Sư Phạm Kỹ Thuật Chúng em xin chân thành cảm ơn q thầy tận tình hướng dẫn, giảng dạy em suốt thời gian học tập mái trường Đại học Sư Phạm Kỹ Thuật Đặc biệt chúng em xin chân thành cảm ơn thầy Đậu Trọng Hiển, người tạo điều kiện cho em có hội nghiên cứu thực đề tài mong muốn Đề tài tương đối thực thời gian ngắn, khơng tránh khỏi thiếu sót Nên chúng em mong đóng góp ý kiến quý thầy cô Chúc quý thầy cô dồi sức khỏe thành công công việc Chúng em xin chân thành cảm ơn! iv an TÓM TẮT Trong đề tài, nhóm thực nghiên cứu lĩnh vực Xử lý ngôn ngữ tự nhiên (Natural Language Processing) Máy học (Machine Learning) để xây dựng mơ hình đối thoại Chatbot vấn đề cụ thể (Closed Domain) Nhóm thực thực nghiên cứu, thử nghiệm lựa chọn phương pháp tiền xử lý liệu thơ (những câu hỏi người dùng nhóm tự thu thập), tìm hiểu, thử nghiệm chọn lựa mơ hình Máy học phù hợp với tốn đề nhóm thực Với mục đích cuối tạo mơ hình Máy học nhận dạng định danh từ câu hỏi người dùng, từ kết hợp với kỹ thuật lập trình để tạo hệ thống phản hồi hay Chatbot để hỗ trợ người dùng thắc mắc làm thủ tục hộ chiếu lần đầu Trong q trình thực hiện, nhóm thực tự thu thập liệu từ trang sở liệu Hành quốc gia, trang web tư vấn thủ tục hộ chiếu khác 24 tỉnh thành Do thời gian thu thập liệu có giới hạn nên tập liệu mà nhóm sử dụng chưa thực nhiều, tính khách quan tập liệu Trong trình huấn luyện, nhóm thực huấn luyện mơ hình có độ xác mong muốn (từ 88% đến 94%) Bên cạnh đó, nhóm thực triển khai mơ hình Chatbot lên tảng Facebook Messenger, từ đây, người dùng nhắn tin trực tuyến với Chatbot hỏi vấn đề thủ tục làm hộ chiếu lần đầu v an MỤC LỤC NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP i PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ii PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN iii LỜI CẢM ƠN iv TÓM TẮT v MỤC LỤC vi DANH MỤC CÁC CHỮ VIẾT TẮT ix DANH MỤC CÁC BẢNG BIỂU x DANH MỤC CÁC HÌNH ẢNH, BIỂU ĐỒ xi CHƯƠNG TỔNG QUAN 1.1 Giới thiệu tình hình nghiên cứu 1.1.1 Giới thiệu chung 1.1.2 Tình hình nghiên cứu nước 1.1.3 Tình hình nghiên cứu ngồi nước 1.2 Tính cấp thiết đề tài 1.3 Mục tiêu đề tài 1.4 Phương pháp nghiên cứu 1.5 Đối tượng phạm vi nghiên cứu 1.6 Bố cục Đồ án CHƯƠNG CƠ SỞ LÝ THUYẾT 2.1 Mơ hình Chatbot 2.1.1 Khái niệm chatbot 2.1.2 Các loại mơ hình Chatbot 2.2 Tổng quan việc xây dựng mơ hình Máy học 2.3 Tiền xử lý cho liệu dạng chuỗi 10 2.4 Lý thuyết thành phần đặc biệt mơ hình mạng 12 vi an 2.4.1 Kỹ thuật Word Embedding 12 2.4.2 Kiến trúc mạng 17 2.4.3 Hàm tối ưu 22 CHƯƠNG 3: 24 MƠ HÌNH MÁY HỌC TRONG CHATBOT 24 3.1 Giới thiệu toán nhận dạng định danh (Intent Classification) 24 3.2 u cầu mơ hình 24 3.3 Thiết kế mơ hình Intent Classification 24 3.3.1 Xây dựng mô hình 24 3.3.2 Tập liệu 25 3.3.3 Quy trình tiền xử lý liệu 27 3.3.4 Huấn luyện tinh chỉnh thơng số mơ hình 30 Chương 4: 31 XÂY DỰNG HỆ THỐNG PHẢN HỒI VÀ ỨNG DỤNG 31 4.1 Yêu cầu hệ thống 31 4.2 Lựa chọn thiết kế 31 4.3 Thiết kế hệ thống 31 4.3.1 Sơ đồ khối hệ thống 31 4.3.2 Khối tảng Facebook Messenger 34 4.3.3 Khối quản lý phản hồi server 35 CHƯƠNG 5: 40 THỰC NGHIỆM VÀ ĐÁNH GIÁ 40 5.1 Kết thực nghiệm 40 5.1.1 Kết huấn luyện mơ hình Intent Classification 40 5.1.2 Kết thực nghiệm nhắn tin với Chatbot máy tính 41 5.1.3 Kết thực nghiệm nhắn tin với Chatbot ứng dụng Facebook Messenger 42 5.2 Đánh giá 46 CHƯƠNG 6: 48 vii an NHẬN XÉT VÀ HƯỚNG PHÁT TRIỂN 48 6.1 Nhận xét 48 6.2 Hướng phát triển 48 TÀI LIỆU THAM KHẢO 49 viii an Hình Sơ đồ chi tiết hệ thống phản hồi 36 an Theo hình 4.5, hệ thống thực sau: - - - - - Đầu tiên, bắt đầu khởi động hệ thống, hệ thống chờ tin nhắn nhập từ người dùng sử dụng ứng dụng Facebook Messenger Thực chất, việc chờ không liên tục, việc giao tiếp với Facebook Messenger dựa theo tính Webhooks, nên người dùng gửi tin nhắn, Facebook Messenger thông báo gửi kiện tin nhắn cho máy tính Bước thứ 2, nhận tin nhắn người dùng, chương trình trích xuất nội dung tin nhắn người dùng từ kiện nhận lấy nội dung tin nhắn làm liệu đem vào mơ hình Phân loại định danh nhóm thực để phân loại định danh từ tin nhắn người dùng Sau phân loại tin nhắn người dùng Hệ thống lấy “ý định vừa phân loại được” tìm kiếm câu trả lời tương ứng sở liệu nhóm thực tìm hiểu xây dựng nên Đây bước có riêng chương trình để xử lý Cuối cùng, hệ thống gửi câu trả lời tương ứng cho người dùng ứng dụng Facebook Messenger Và sau hệ thống tiếp tục “lắng nghe” phản hồi câu hỏi người dùng Chương trình hệ thống hoạt động liên tục Vì vậy, chương trình kết thúc tắt ứng dụng máy tính ngắt kết nối với “đường hầm” Để chi tiết hơn, sau lưu đồ giải thuật cho phần chương trình xử lý phản hồi cho khối “Tìm câu trả lời tương ứng sở liệu” 37 an Hình Lưu đồ giải thuật việc tìm kiếm trả lời cho người dùng 38 an Theo hình 4.6, chương trình thực sau: - - - Sau câu hỏi người dùng đưa qua khối “Xử lý nhận dạng định danh câu nói người dùng” hình 4.5, lấy định danh từ câu hỏi người dùng Sau đó, chương trình định xem định danh có thuộc định danh “loc_apply” (địa nộp hồ sơ xin hộ chiếu), khơng phải chương trình lấy “định danh đó” tìm câu trả lời tương ứng sở liệu Tuy nhiên, phát định danh “loc_apply”, chương trình đưa câu hỏi nguyên văn chưa tiền xử lý người dùng qua Nhận dạng thực thể tên riêng (Name Entity Recognition – NER) để tìm tên riêng địa danh (LOC entity) câu nói người dùng Nếu câu nói người dùng có tên riêng địa danh chương trình lấy dùng tên riêng tìm vị trí tương ứng cho địa danh sở liệu Mặc khác, không tìm tên riêng địa danh câu nói người dùng, chương trình hỏi người dùng nơi người dùng ở, sau chương trình dùng định danh để tìm địa hệ thống sở liệu Sau cùng, chương trình gửi phản hồi lại cho người dùng Messenger 39 an CHƯƠNG 5: THỰC NGHIỆM VÀ ĐÁNH GIÁ 5.1 Kết thực nghiệm 5.1.1 Kết huấn luyện mơ hình Intent Classification Nhóm thực huấn luyện nhiều mơ hình với nhiều thơng số khác (số chiều Embedding, phần trăm Dropout), đánh giá liên tục tập huấn luyện (training set) tập đánh giá (validation set), chọn mơ hình có độ xác (accuracy) tập đánh giá cao Sau nhóm thực lấy mơ hình đánh giá xem độ xác tập kiểm tra (test set) đánh giá xem cuối mơ hình đạt độ xác Dưới bảng thông tin thơng số mơ hình, độ xác mơ hình đánh giá tập test Bảng Thơng số mơ hình độ xác mơ hình tập test Embedding dimension 150 Dropout Dropout Accuracy(%) 0.5 0.5 94,6 Dưới q trình huấn luyện mơ hình 1000 chu kỳ huấn luyện (epochs) tập train tập validation Hình Kết huấn luyện mơ hình 40 an Theo hình 5.1, tập train, mơ hình tìm điểm hội tụ liệu nhanh, bên cạnh mơ hình bị overfitting tập train Tuy nhiên, việc huấn luyện mô hình, sau mơ hình đạt độ xác ổn định tập train, tiếp theo, cần quan tâm đến độ xác mơ hình tập validation tập test Nhờ việc ứng dụng hai lớp Dropout trước sau mạng Bidirectional LSTM, với việc tinh chỉnh thơng số dropout hợp lý, nhóm thực điều chỉnh cho mơ hình khơng bị overfitting tập validation (92%), sau mơ hình đạt độ xác cao tập test (bảng 5.1) Nhìn chung, sử dụng mơ hình huấn luyện trước (pretrained model) Word2Vec nên mơ hình Intent Classification đạt độ hội tụ nhanh Bên cạnh đó, tùy theo độ lớn chiều Embedding (Embedding dim) mà mơ hình đạt điểm hội tụ nhanh hay chậm 5.1.2 Kết thực nghiệm nhắn tin với Chatbot máy tính Hình Kết giao tiếp với Chatbot máy tính (1) 41 an Hình Kết giao tiếp với Chatbot máy tính (2) Hình Kết giao tiếp với Chatbot máy tính (3) 5.1.3 Kết thực nghiệm nhắn tin với Chatbot ứng dụng Facebook Messenger 42 an Hình 5 Kết thực Facebook Messenger (1) Hình Kết thực Facebook Messenger (2) 43 an Hình Kết thực Facebook Messenger (3) Hình Kết thực Facebook Messenger (4) 44 an Hình Kết thực Facebook Messenger (5) Hình 10 Kết thực Facebook Messenger (6) 45 an Hình 11 Kết thực Facebook Messenger (7) 5.2 Đánh giá Dựa kết thực hiện, ứng dụng mơ hình Chatbot tư vấn vấn đề hộ chiếu tảng Messenger cho nhiều kết khả quan đáp ứng tiêu chí đề sau: - Mơ hình Intent Classification: o Độ xác mơ hình Intent classification: lớn 90% o Do liệu tốn cịn đơn giản nên việc tăng chiều (dim) embedding giúp cho mơ hình hội tụ nhanh chóng hơn, ngược lại, mơ hình hội tụ chậm ta giảm số chiều o Tuy nhiên, có thực tế rằng, mơ hình với số chiều khác tìm điểm hội tụ toàn cục (global optima) khác riêng Điều dẫn đến việc hình có chênh lệch nhiều độ xác tập kiểm tra 46 an Bảng Bảng so sánh độ xác mơ hình với số chiều Embedding khác Số chiều Embedding 50 100 150 - Độ xác(%) 93,8 93,1 94,6 Ứng dụng Facebook Messenger: o Người dùng nhắn tin trực tiếp với chatbot mức độ nhiều người dùng o Hệ thống trả lời gần xác câu hỏi từ người dùng o Chatbot hỗ trợ người dùng việc cung cấp thơng tin vị trí phòng quản lý Xuất nhập cảnh địa phương cách xác o Tuy nhiên, đơi xảy tình ngẽn mạng “đường hầm”, vài lý tương tự, điều dẫn đến việc hệ thống nhận tin nhắn người dùng phản hồi 47 an CHƯƠNG 6: NHẬN XÉT VÀ HƯỚNG PHÁT TRIỂN 6.1 Nhận xét Mơ hình Chatbot cho lĩnh vực hành cơng làm tiền đề cho việc phát triển ứng dụng chatbot lĩnh vực hẹp khác có tính chất liệu u cầu chưa q phức tạp Tuy nhiên, mơ hình cịn nhiều hạn chế: 6.2 - - Chưa thể trì hội thoại đa dạng mang tính chất lâu dài Vẫn vài trường hợp Bot trả lời sai hiểu sai ý định người dùng Việc thu thập liệu cịn chưa đảm bảo tính khách quan cần có Hướng phát triển Mơ hình chatbot việc tư vấn hộ chiếu áp dụng cho lĩnh vực hẹp có tính chất tương tự có đủ lượng liệu “sạch sẽ” xác Với việc trỗi dậy cơng nghệ Big Data, hệ thống thủ tục vào liệu cách chặt chẽ việc phát triển chatbot chuyên lĩnh vực hành hồn tồn khả thi Song song cần chuyên viên hành để đảm bảo tính xác liệu Thêm vào đó, nhóm thực hi vọng tiếp tục mở rộng mơ hình với u cầu cao có tính phức tạp cao hơn, nhằm đem mơ hình Chabot nói riêng hay trợ lý ảo nói chung vào đời sống 48 an TÀI LIỆU THAM KHẢO [1] A Ng, "Coursera," [Online] Available: https://www.coursera.org/learn/nlpsequence-models? [2] C Manning, "The Stanford Natural Language Processing Group," [Online] Available: http://web.stanford.edu/class/cs224n/?fbclid=IwAR2uNIlQQxgu_m8iAme4Pd7JuTY5o3NfxL0bCXNucacopBLEBYxBmht0f0 [3] A Vu and A N Bui, "Nhận dạng thực thể tên riêng tiếng Việt," https://github.com/undertheseanlp/ner, 2016 [4] A Vu, A N Bui and D V Doan, "Xây dựng hệ thống tách từ tiếng Việt," https://github.com/undertheseanlp/word_tokenize, 2018 [5] C Olah, "colah.github.io," 27 August 2015 [Online] Available: http://colah.github.io/posts/2015-08-Understanding-LSTMs/ [Accessed 29 Nov 2018] [6] N Srivastava, H Geoffrey, A Krizhevsky, R and R Salakhutdinov, "Dropout: A Simple Way to Prevent Neural Networks from Overfitting," Journal of Machine Learning Research 15, Toronto, 2014 [7] Authors, "wikipedia.org," [Online] Available: https://en.wikipedia.org/wiki/Bagof-words_model [Accessed 27 April 2019] [8] V H Tiệp, "Machine Learning bản," February 2017 [Online] Available: https://machinelearningcoban.com/general/2017/02/06/featureengineering/ [Accessed 25 April 2019] [9] X.-S Vu, "Pre-trained Word2Vec models for Vietnamese," https://github.com/sonvx/word2vecVN, 2016 [10] T V Tran, https://github.com/trungtv/pyvi, 2016 49 an an ... mơ hình phân làm giai đoạn:  Giai đoạn xây dựng mơ hình  Giai đoạn huấn luyện tinh chỉnh thông số mơ hình 3.3.1 Xây dựng mơ hình Dưới lưu đồ q trình xây dựng mơ hình: 24 an Hình Quá trình xây. .. thuật để xây dựng mơ hình máy học cho chatbot, thư viện sử dụng CHƯƠNG 3: MƠ HÌNH MÁY HỌC TRONG CHATBOT: Trình bày phương pháp để xây dựng mơ hình máy học, cách tối ưu mơ hình máy học toán nhận... muốn đó, nhóm thực muốn xây dựng mơ hình Chatbot đối thoại hỗ trợ người dùng nắm bắt ngắn gọn điều cần thiết thủ tục hành Thế nên, nhóm thực định chọn đề tài Xây dựng mô hình Chatbot cho lĩnh vực

Ngày đăng: 02/02/2023, 09:36

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN