Nghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàngNghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàng
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN TẤT TIẾN NGHIÊN CỨU VÀ XÂY DỰNG CHATBOT HỖ TRỢ NGƢỜI DÙNG TRONG NGÂN HÀNG LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN HÀ NỘI – 2019 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN TẤT TIẾN NGHIÊN CỨU VÀ XÂY DỰNG CHATBOT HỖ TRỢ NGƢỜI DÙNG TRONG NGÂN HÀNG Ngành: Kỹ thuật phần mềm Chuyên ngành: Kỹ thuật phần mềm Mã số: 8480103.01 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN HÀ NỘI – 2019 LỜI CAM ĐOAN Tôi Nguyễn Tất Tiến, học viên khóa K22, ngành Kỹ thuật phần mềm, chuyên ngành Kỹ Thuật Phần Mềm Tôi xin cam đoan luận văn “Nghiên cứu xây dựng chatbot hỗ trợ người dùng ngân hàng” tơi nghiên cứu, tìm hiểu phát triển dẫn dắt TS Nguyễn Văn Vinh Luận văn chép từ tài liệu, cơng trình nghiên cứu người khác mà không ghi rõ tài liệu tham khảo Tôi xin chịu trách nhiệm lời cam đoan Hà nội, ngày tháng năm 2019 LỜI CẢM ƠN Đầu tiên xin gửi lời cảm ơn tới thầy cô trường đại học Công Nghệ, Đại học Quốc Gia Hà Nội tận tình giảng dạy truyền đạt kiến thức suốt khóa cao học vừa qua Tơi xin gửi lời cảm ơn đến thầy cô môn Kỹ Thuật Phần Mềm khoa Công Nghệ Thông Tin mang lại cho kiến thức vơ q giá bổ ích trình học tập trường Đặc biệt xin chân thành cảm ơn thầy giáo, TS Nguyễn Văn Vinh, người định hướng, giúp đỡ, trực tiếp hướng dẫn tận tình bảo tơi suốt q trình nghiên cứu, xây dựng hoàn thiện luận văn Tơi xin cảm ơn tới gia đình, người thân, đồng nghiệp bạn bè thường xuyên quan tâm, động viên, chia sẻ kinh nghiệm, cung cấp tài liệu hữu ích thời gian học tập, nghiên cứu suốt trình thực luận văn tốt nghiệp Hà Nội, ngày tháng năm 2019 MỤC LỤC LỜI CẢM ƠN MỤC LỤC DANH MỤC KÝ HIỆU VÀ CÁC CHỮ VIẾT TẮT DANH MỤC HÌNH VẼ VÀ ĐỒ THỊ MỞ ĐẦU 1 Động lực nghiên cứu .2 Mục tiêu luận văn 3 Cấu trúc luận văn CHƢƠNG : TỔNG QUAN HỆ THỐNG CHATBOT 1.1 Giới thiệu 1.2 Cấu trúc thành phần hệ thống chatbot 1.3 Hiểu ngôn ngữ tự nhiên (NLU) 1.4 Quản lý hội thoại (DM) 11 1.4.1 Mơ hình máy trạng thái hữu hạn FSA 13 1.4.2 Mơ hình Frame-based 14 1.5 Thành phần sinh ngôn ngữ (NLG) 14 1.5.1 Template-based NLG 15 1.5.2 Plan-based NLG 15 1.5.3 Class-based NLG 16 CHƢƠNG : MỘT SỐ KỸ THUẬT SỬ DỤNG TRONG CHATBOT 17 2.1 Kiến trúc mạng nơ ron nhân tạo .17 2.2 Mạng nơ ron hồi quy RNN 20 2.3 Mạng Long short Term Memory (LSTM) .23 2.3.1 Vấn đề phụ thuộc dài 23 2.3.2 Kiến trúc mạng LSTM 24 2.3.3 Phân tích mơ hình LSTM 25 2.4 Word embeddings 28 2.4.1 Word2vec 28 2.4.2 Glove 29 2.5 Ứng dụng RNN vào quản lý hội thoại .31 2.5.1 Mơ hình word-based DST 31 2.5.2 Mơ hình Global-Locally Self-Attentive DST (GLAD) 32 CHƢƠNG : XÂY DỰNG CHATBOT HỖ TRỢ NGƢỜI DÙNG LĨNH VỰC NGÂN HÀNG 34 3.1 Bài toán 34 3.2 Xây dựng chatbot hỗ trợ người dùng lĩnh vực ngân hàng .34 3.3 Ứng dụng RASA xây dựng chatbot 36 3.4 Xây dựng liệu chatbot 37 3.4.1 Xây dựng ý định 38 3.4.2 Xây dựng entity 39 3.4.3 Xây dựng câu trả lời cho bot 39 3.4.4 Xây dựng khung kịch (history) 41 3.5 Thực nghiệm 43 3.6 Đánh giá 51 KẾT LUẬN 52 TÀI LIỆU THAM KHẢO 53 PHỤ LỤC .55 DANH MỤC KÝ HIỆU VÀ CÁC CHỮ VIẾT TẮT Từ viết tắt Từ chuẩn Diễn giải AI Artificial Intelligence Trí tuệ nhân tạo ANN Artificial Nerual Network Mạng nơ ron nhân tạo CBOW Continuous Bag of Words CNN Convolution Neural Network Mạng nơ ron tích chập CRF Conditional Random Fields Mơ hình xác xuất trường điều kiện ngẫu nhiên DM Dialogue Management Quản lý hội thoại DNN Deep Neural Networks Mơ hình học máy DTS Dialogue State Tracking Theo dõi trạng thái hội thoại FSA Finite State Automata Mơ hình dựa máy trạng thái hữu hạn FSM Finite State Machine Máy trạng thái hữu hạn GLAD Global-Locally SelfAttentive Dialogue State Tracker HMM Hiden Markov Models Mơ hình Markov ẩn LSTM Long short-term memory Mạng cải tiến để giải vấn đề phụ thuộc dài NLG Natural Language Generation Thành phần sinh ngôn ngữ NLP Natural Language Processing Xử lý ngôn ngữ tự nhiên NLU Natural Language Understanding Hiểu ngôn ngữ tự nhiên ML Machine Learning Học máy, máy có khả học tập POS Part Of Speech Gán nhãn từ loại RNN Recurrent Neural Network Mạng nơ ron hồi quy SVM Vector Support Machine Máy vector hỗ trợ DANH MỤC HÌNH VẼ VÀ ĐỒ THỊ Hình 1.1: Cấu trúc thành phần hệ thống chatbot [12] Hình 1.2: Mơ hình thành phần xử lý chatbot [1] .7 Hình 1.3: Các bước xử lý pipeline NLU [1] Hình 1.4: Các bước xử lý NLU [2] Hình 1.5: Mơ hình bước xác định ý định 10 Hình 1.6: Gán nhãn từ theo mơ hình B-I-O trích xuất thơng tin Error! Bookmark not defined Hình 1.7: Mơ hình quản lý trạng thái định action hội thoại [2] 12 Hình 1.8: Quản lý hội thoại theo mơ hình máy trạng thái hữu hạn FSA 13 Hình 1.9: Frame cho chatbot hỏi thông tin khách hàng 14 Hình 1.10: Phương pháp sinh ngôn ngữ dựa tập mẫu câu trả lời [1] .15 Hình 1.11: Phương pháp sinh ngơn ngữ Plan-based [1] 15 Hình 1.12: Phương pháp sinh ngôn ngữ class-based [1] .16 Hình 2.1: Kiến trúc mạng nơ ron nhân tạo [15] 17 Hình 2.2: Q trình xử lý thơng tin mạng nơ-ron nhân tạo [15] .18 Hình 2.3: Mạng RNN [15] 21 Hình 2.4: Mạng RNN chiều [15] 22 Hình 2.5: Mạng RNN nhiều tầng [15] 22 Hình 2.6: RNN phụ thuộc short-term [17] 23 Hình 2.7: RNN phụ thuộc long-term [17] .23 Hình 2.8: Các mơ-đun lặp mạng RNN chứa layer [17] 24 Hình 2.9 : Các mơ-đun lặp mạng LSTM chứa bốn layer [17] 24 Hình 2.10 : Tế bào trạng thái LSTM giống băng truyền [17] 25 Hình 2.11 : Cổng trạng thái LSTM [17] 26 Hình 2.12 : LSTM focus f [17] 26 Hình 2.13 : LSTM focus I [17] 27 Hình 2.14 : LSTM focus c [17] .27 Hình 2.15 : LSTM focus o [17] .27 Hình 2.16 : Mơ hình từ nhúng [16] .28 Hình 2.17 : Mơ hình CBOW Skip-Ngram [16] 29 Hình 2.18 : Xác xuất từ k ngữ cảnh từ i j [16] 29 Hình 2.20 : Cơng thức tính hàm chi phí tối thiểu [16] 30 Hình 2.21 : Hàm trọng số (weighting function) [16] 30 Hình 2.22: Mơ hình word-based DST với mạng RNN [20] 31 Hình 2.23: Mơ hình Global-Locally Self-Attentive DST (GLAD) [21] .32 Hình 2.24 : Global-locally self-attentive encoder modul [21] 33 Hình 3.1: Cấu trúc chatbot cho hệ thống ebanking .35 Hình 3.2 : Cấu hình pipeline xử lý ngơn ngữ tự nhiên 37 Hình 3.3 : Các bước xây dựng chatbot 38 Hình 3.4 : Xây dựng ý định người dùng 39 Hình 3.6 : Mẫu câu trả lời bot cho ý định hỏi số dư tài khoản 39 Hình 3.7: Mẫu câu trả lời mặc định bot không nhận ý định người dùng .40 Hình 3.8: Mẫu câu trả lời cho ý định người dùng hỏi lãi suất .41 Hình 3.9: Custom action xử lý slot money 41 Hình 3.10: Khung kịch chuyển tiền thẻ 42 Hình 3.11: Học tương tác với bot 42 Hình 3.12 : Bảng mơ tả số lần thử nghiệm với người dùng 43 Hình 3.13: Hình ma trận ước lượng nhầm lẫn xây dựng liệu intent 43 Hình 3.14: Hình ước lượng độ xác tập liệu trainning intent 44 Hình 3.15 : Hình ước lượng độ xác trích chọn thơng tin 44 Hình 3.16: Hình ước lượng độ nhầm lẫn việc xây dựng câu trả lời bot (action) 45 Hình 3.17 : Bảng mơ tả đoạn hội thoại test với bot .50 MỞ ĐẦU “Chatbot will fundamentally revolutionize how computing is experienced by everybody” CEO Microsoft - Satya Nadella Chatbot nói riêng hay trợ lý ảo nói chung ngày thơng minh hơn, hồn thiện Nó giúp có tương tác trải nghiệm tốt phần mềm Chúng ta điểm qua số thành tựu mà chatbot đạt (thống kê infographic : the future of chatbots statistics & trends) [23] 100000 : số lượng chatbot Facebook Messenger thời điểm tháng 11/2018 80% doanh nghiệp muốn sử dụng chatbot vào năm 2020 63% người dùng xem xét tin nhắn online từ chatbot để kết nối với doanh nghiệp nhãn hiệu 59% số người sử dụng chatbot app 37.11% số chatbot tăng trưởng suốt giai đoạn 2017-2021 56% công ty đa truyền thông công nghệ chuyển qua sử dụng cơng nghệ chăm sóc khách hàng tự động tương lai gần, 33% có kế hoạch chuyển sang dùng robot sử dụng AI trước năm 2019 75% tỉ lệ thành công việc bot tương tác với người dùng lĩnh vực y tế ngân hàng 90% số mong đợi sau 30% số chi phí giảm áp dụng chatbot vào lĩnh vực chăm sóc khách hàng tỷ USD chi phí giảm áp dụng chatbot vào chăm sóc khách hàng đến năm 2022 so với 20 triệu USD năm 2017 Vậy đâu sở để chatbot phát triển nhanh Chúng ta điểm qua số tác nhân chính: Đầu tiên thời đại bùng nổ tin nhắn sở cho chatbot phát triển mạnh mẽ: 28,2 tỷ tin nhắn di động gửi năm 2017, gấp đôi so với năm 2012 [25] 98% tin nhắn đọc, với email tỷ lệ 22% Tỷ lệ gỡ bỏ ứng dụng nhắn tin nửa so với ứng dụng khác Dưới danh sách câu hỏi trả lời người dùng tương tác với bot thử nghiệm cuối No Ngƣời dùng 10 11 Bot Slot Chào bạn Tơi hỗ trợ bạn tính năng(tài khoản, số dư, chuyển tiền, tốn, bạn tiết kiệm, vay tiền, gửi tiền, lãi suất ) hướng dẫn Để biết thông tin chi tiết mời bạn điền thơng tin tính cần hỗ trợ Ví dụ: 'chuyển tiền' Số tài khoản: {&account_number} thông tin tài Tên tài khoản: {@account_name} Loại khoản tài khoản: {&account_type} Chi nhánh {&account_branch} kiểm tra giúp Tài khoản {&account} {&name} số dư tài Số dư bạn là: {&money} khoản Cảm ơn Khơng có gì, trách nhiệm tơi bạn có hỗ trợ Quý khách gọi tổng đài qua điện {&phone} miễn phí để hỗ trợ thoại? hướng dẫn xử lý cảm ơn Quý khách gọi tổng đài gọi cho tổng {&phone} miễn phí để hỗ trợ đài hỗ trợ hướng dẫn xử lý cần Cảm ơn Rất vui giúp đỡ bạn Tơi hỗ trợ bạn tính năng(tài khoản, số dư, chuyển tiền, tốn, bạn tiết kiệm, vay tiền, gửi tiền, lãi suất ) hướng dẫn Để biết thông tin chi tiết mời bạn điền khác thơng tin tính cần hỗ trợ Ví dụ: 'chuyển tiền' Bạn chọn loại chuyển tiền nào: Chuyển tiền qua thẻ, chuyển tiền ngân chuyển tiền hàng, chuyển tiền ngân hàng, chuyển tiền nhanh từ danh bạ? qua thẻ Mời bạn nhập số thẻ: Xin chào 12 1234 6534 9544 6468 13 triệu 14 tiến chuyển tiền account: 1234 6534 9544 6468 Tên người nhận: Nguyễn Tất Tiến, ngân Name: Nguyễn Tất hàng Vietinbank Tiến Bank: Vietinbank Mời bạn nhập số tiền chuyển: Mời bạn nhập nội dung chuyển tiền: Money: triệu Mời bạn xác nhận thông tin! Bạn muốn chuyển: 2,000,000 VNĐ Content: tiến Cho số thẻ: 1234 6534 9544 6468 Người chuyển tiền nhận: Nguyen Tat Tien Ngân Hàng: Vietinbank 46 Đánh giá Nội dung chuyển tiền: tiến chuyển tiền Mời bạn nhập otp: Giao dịch thành công! Chuyển 2,000,000 VNĐ Cho số thẻ: 1234 6534 9544 6468 Người Otp: 123456 nhận: Nguyen Tat Tien Ngân Hàng: Vietinbank Nội dung chuyển tiền: tiến chuyển tiền Tôi hi vọng bạn hài lòng 15 123456 16 cảm ơn cảm ơn tơi hài lịng với Tơi hi vọng bạn hài lịng bạn Tơi chatbot hỗ trợ ngân hàng Tơi sinh ok bạn năm 2018 Ln sẵn lịng hỗ trợ bạn bạn hướng Bạn chọn loại chuyển tiền nào: Chuyển dẫn tiền qua thẻ, chuyển tiền ngân chuyển tiền hàng, chuyển tiền ngân hàng, tiếp chuyển tiền nhanh từ danh bạ? chuyển tiền ngân Mời bạn nhập số tài khoản: hàng 17 18 19 20 21 9842 4223 5345 8723 22 123552342 23 11 triệu 24 triệu 22 tiến trả tiền dư nợ thẻ tín dụng 23 1234567 24 456234 25 bạn chuyển tiền Tên người nhận: Nguyễn Tất Tiến Mời bạn nhập số tiền chuyển: Chỉ phép chuyển 10,000,000 lần Xin vui lòng nhập lại số tiền chuyển! Chỉ phép chuyển 10,000,000 lần Xin vui lòng nhập lại số tiền chuyển! Mời bạn nhập nội dung chuyển tiền: Mời bạn xác nhận thông tin! Bạn muốn chuyển: 9,000,000 Cho số tài khoản: 9842 4223 5345 8723 Người nhận: Nguyen Tat Tien Ngân Hàng: None Nội dung chuyển tiền: tiến trả tiền dư nợ thẻ tín dụng Mời bạn nhập otp: OTP khơng Xin vui lịng nhập lại OTP! Giao dịch thành cơng! Chuyển 9,000,000 cho Nguyen Tat Tien, ngân hàng None Nội dung chuyển tiền:tiến trả tiền dư nợ thẻ tín dụng Mời bạn nhập số tài khoản: 47 account: 9842 4223 5345 8723 Name: Nguyễn Tất Tiến Money: 123552342 Money: 11 triệu Money: triệu Content: tiến trả tiền dư nợ thẻ tín dụng OTP: 1234567 OTP: 456234 sai 26 27 28 29 30 31 32 33 34 35 qua kênh khác? bạn nhầm muốn hủy Hủy giao dịch thành công! giao dịch Bạn chọn loại chuyển tiền nào: Chuyển hướng dẫn tiền qua thẻ, chuyển tiền ngân chuyển tiền? hàng, chuyển tiền ngân hàng, chuyển tiền nhanh từ danh bạ? chuyển tiền ngân Mời bạn nhập ngân hàng: hàng vietinbank Mời bạn nhập chi nhánh: Bank: vietinbank hà nội Mời bạn nhập số tài khoản: Branch: hà nội 8734 2345 Account: 8734 Tên người nhận: Nguyễn Tất Tiến 2341 9584 2345 2341 9584 Mời bạn nhập số tiền chuyển: tiến chuyển tiền Xin vui lòng nhập lại số tiền: ngân hàng trăm Mời bạn nhập nội dung chuyển tiền: Money: trăm Mời bạn xác nhận thông tin! Bạn muốn chuyển: 500,000 tiến test Cho số tài khoản: 8734 2345 2341 9584 Content: tiến test chuyển tiền Người nhận: Nguyen Tat Tien chuyển tiền ngoài ngân Ngân Hàng: vietinbank Chi Nhánh: hà ngân hàng hàng nội Nội dung chuyển tiền: tiến test chuyển tiền ngân hàng Danh bạ người nhận: tiến - Nguyễn Tất Tiến, tài khoản 8888 8888 8888 8888, ngân hàng Vietinbank tú - Nguyễn Đình Tú, tài khoản 6666 danh bạ người 6666 6666 6666, ngân hàng nhận tiền Vietcombank thảo - Nguyễn Thanh Thảo, tài khoản 9999 9999 9999 9999, ngân hàng Vietinbank 36 Khơng tìm thấy nam danh bạ Xin chuyển triệu vui lòng nhập tên danh bạ Receiver: nam cho nam người nhận 37 Hệ thống ghi nhận! chuyển cho Bạn muốn chuyển: 6000000 VNĐ thảo 6000000 Người nhận: thảo từ danh bạ Mời bạn nhập nội dung chuyển tiền: 48 Name: thảo Money: 6000000 38 tiến chuyển tiền Mời bạn xác nhận thông tin! Bạn muốn chuyển: 6,000,000 Cho số tài khoản: 9999 9999 9999 9999 Content: tiến Người nhận: Nguyen Thanh Thao chuyển tiền Ngân Hàng: Vietcombank Chi Nhánh: Hà Nội Nội dung chuyển tiền: tiến chuyển tiền Mời bạn nhập otp: 39 1234523 40 123456 41 chuyển giúp cho tú trăm OTP không Xin vui lòng nhập lại OTP: 1234523 OTP! Giao dịch thành công! Chuyển 6,000,000 cho Nguyen Thanh Thao, ngân hàng Vietcombank OTP: 123456 Chi nhánh: Hà Nội Nội dung chuyển tiền:tiến chuyển tiền Hệ thống ghi nhận! Bạn muốn chuyển: trăm VNĐ Người nhận: tú từ danh bạ Receiver: tú Money: trăm Mời bạn nhập nội dung chuyển tiền: 42 tiến chuyển tiền Mời bạn xác nhận thông tin! Bạn muốn chuyển: 400,000 Cho số tài khoản: 6666 6666 6666 6666 Content: Tiến Người nhận: Nguyen Dinh Tu chuyển tiền Ngân Hàng: Vietcombank Chi Nhánh: Hà Nội Nội dung chuyển tiền: tiến chuyển tiền Mời bạn nhập otp: 43 123456 Giao dịch thành công! Chuyển 400,000 cho Nguyen Dinh Tu, ngân hàng Vietcombank Chi nhánh: Hà Nội Nội dung chuyển tiền:tiến chuyển tiền 44 số dư tài khoản Tài khoản {&account} {&name} Số dư bạn là: {&money} 45 46 OTP: 123456 thơng tin biểu Phí trì tài khoản: miễn phí phí thơng tin lãi lãi suất vay tiền hay tiết kiệm? suất 47 lãi suất vay Xin vui lịng nhập thơng tin kỳ hạn theo tháng (0>36 tháng) theo năm (1>3 năm) 48 tháng Lãi suất vay tháng là: xxx% Term: tháng 49 năm Lãi suất vay 12 tháng là: xxx% Term: năm 49 50 năm Lãi suất vay 36 tháng là: xxx% Term: năm 51 năm Xin vui lòng nhập lại kỳ hạn theo tháng Term: năm (0>36 tháng) theo năm (1>3 năm) 52 24 tháng Lãi suất vay 24 tháng là: xxx% Term: 24 tháng 53 lãi suất tiết Lãi suất vay 13 tháng là: xxx% kiệm 13 tháng 54 lãi suất tiết kiệm Xin vui lịng nhập thơng tin kỳ hạn theo tháng (0>36 tháng) theo năm (1>3 năm) 55 13 tháng Lãi suất tiết kiệm 13 tháng là: xxx% Term: 13 tháng 56 18 tháng Lãi suất tiết kiệm 18 tháng là: xxx% Term: 18 tháng 57 cảm ơn Xin vui lòng nhập lại kỳ hạn theo tháng (0>36 tháng) theo năm (1>3 năm) 58 hủy Hủy giao dịch thành công! 59 cảm ơn Rất vui giúp đỡ bạn 60 bye Hẹn găp lại Chúc bạn sức khỏe, thành cơng may mắn! Term: 13 tháng Hình 50 : Bảng mô tả đoạn hội thoại test với bot 50 Sai nhầm đoạn hội thoại hỏi lãi suất vay sai 3.6 Đánh giá Từ kết thực nghiệm q trình xây dựng bot tơi có đánh sau: - Dữ liệu đào tạo bot kịch xây dựng cho bot yếu tố quan trọng xây dựng chatbot Đây yếu tố ảnh hưởng lớn tới việc bot thơng minh trả lời người dùng theo chủ đề hay khơng - Việc xây dựng ý định(intent) quan trọng Đối với intent nhập nhằng hay gần nghĩa khiến cho độ xác bot giảm Nên việc thiết kế intent slot vô quan trọng Với đoạn hội thoại nằm kịch dựng sẵn bot đáp ứng tốt trả lời cho người dùng Tuy nhiên việc xây dựng kịch cho bot khó khăn đoạn hội thoại có nhiều trường hợp Vì với kịch dài khó khăn việc xây dựng kịch hỏi lại thơng tin lưu trích chọn trước nên bot thường phải hỏi lại Các slot thơng tin số tiền hay tháng năm kỳ hạn, tên, thẻ, số tài khoản, otp… bot trích chọn thơng tin tương đối xác Vì demo nên số giá trị trích chọn chưa validate dẫn đến việc bot không hỏi lại thông tin Bot có khả trả lời ngẫu nhiên mẫu câu template khiến cho đoạn hội thoại trở nên tự nhiên Bên cạnh bot có khả điều hướng người dùng đến mẫu câu trả lời sẵn có bot người dùng hỏi câu ngồi phạm vi đào tạo cho bot Tuy nhiên việc điều hướng dựa khả trả lời ngẫu nhiên bot dẫn đến việc bot chưa thông minh việc xử lý tình Qua tốn tơi đánh giá khó việc áp dụng toán chatbot cho nghiệp vụ ebanking ngân hàng chuyển tiền, toán, vay tiền hay gửi tiết kiệm… có luồng nghiệp vụ phức tạp phải trải qua nhiều bước cần có độc xác giao dịch cao nên bot khó đáp ứng cho tốn này, chưa kể có nhiều trường hợp có nhiều số tài khoản để chuyển tiền chọn danh bạ chuyển tiền… Nhận thấy việc thao tác app ebanking tiện lợi Tuy nhiên ta thấy có điểm sáng bot giải trường hợp đoạn hội thoại ngắn hỏi đáp biểu phí, lãi suất hay đơn giản tìm vị trí ATM hay phịng giao dịch gần tốn chatbot cho trải nghiệm người dùng tốt 51 KẾT LUẬN Luận văn tìm hiểu số kiến thức bao gồm cấu trúc nhiệm vụ thành phần chatbot, số thuật toán áp dụng vào việc xây dựng chatbot để giải tốn theo hướng tiếp cận miền đóng Dựa vào ta áp dụng xây dựng chatbot giải toán hỗ trợ người dùng nhiều lĩnh vực thực tế Đó điều mà tơi mong muốn tới Trong trình tìm hiểu xây dựng ứng dụng chatbot hỗ trợ người dùng cho lĩnh vực ngân hàng đạt số kết định sau: Đầu tiên nắm mơ hình thành phần luồng hoạt động hay bước xử lý chatbot Bên cạnh tơi nắm số thuật tốn phương pháp xử lý liệu chatbot Từ kiến thức giúp tơi định xây dựng bot theo mơ hình nào, phương pháp phù hợp cho yêu cầu toán cụ thể Thứ hai trình xây dựng tập liệu đào tạo, huấn luyện cho chatbot giúp tơi có kinh nghiệm q báu việc xử lý gán nhãn liệu với ngữ nghĩa nhập nhằng Từ xây dựng liệu huấn luyện tốt đem lại độ xác cao cho bot Thứ ba với việc áp dụng framework Rasa vào xây dựng chatbot giúp tơi tiếp cận với số phương pháp hay thuật toán cách tối ưu áp dụng cho chatbot Cuối với sản phẩm demo có làm tiền đề cho việc phát triển số bot áp dụng cho số toán thực tế lĩnh vực y tế, du lịch dịch vụ công mà hướng tới Định hướng nghiên cứu tiếp theo: Tích hợp speech to text text to speech cho bot Khi tích hợp vào phần mềm ebanking để hỗ trợ người dùng qua giọng nói song song với giao diện ebanking Xây dựng bot hỗ trợ multi intent Hay người dùng hỏi nhiều câu hỏi kép Xây dựng bot mang tính cảm xúc hay nhân cách hóa chatbot giúp chatbot trở nên giống người 52 TÀI LIỆU THAM KHẢO Yun-Nung (Vivian) Chen, Asli Celikyilmaz and Dilek Hakkani-Tur, 2018 :” Deep Learning for Dialogue Systems” Tom Bocklisch , 2018: “Conversational AI with Rasa NLU & Rasa Core” Hongshen Chen, Xiaorui Liu, Dawei Yin and Jiliang Tang, 11 Jan 2018: “A Survey on Dialogue Systems: Recent Advances and New Frontiers” Daniel Jurafsky & James H Martin, 23 September 2018: “Dialog Systems and Chatbots” Daniel Jurafsky & James H Martin, 23 September 2018: “Advanced Dialog Systems” Jason D Williams, Kavosh Asadi and Geoffrey Zweig, 24 Apr 2017 : “Hybrid Code Networks: practical and efficient end-to-end dialog control with supervised and reinforcement learning” Andrew Maas, Spring 2017 : “Dialogue System Introduction and Frame-Based Dialogue” Peng Jin, Yue Zhang, Xingyuan Chen and Yunqing Xia: “Bag-of-Embeddings for Text Classification” Ledell Wu, Adam Fisch, Sumit Chopra, Keith Adams, Antoine Bordes and Jason Weston, 21 Nov 2017: “StarSpace: Embed All The Things!” 10 Bing Liu and Ian Lane, JUN 2018: “End-to-End Learning of Task-Oriented Dialogs” 11 John A Bullinaria, 2005 : “IAI : Semantic Networks and Frames” 12 Mikhail Burtsev, Alexander Seliverstov, Rafael Airapetyan, Mikhail Arkhipov, Dilyara Baymurzina, Nickolay Bushkov, Olga Gureenkova, Taras Khakhulin, Yuri Kuratov, Denis Kuznetsov, Alexey Litinsky, Varvara Logacheva, Alexey Lymar, Valentin Malykh, Maxim Petrov, Vadim Polulyakh, Leonid Pugachev, Alexey Sorokin, Maria Vikhreva and Marat Zaynutdinov, 15 JUN 2018: “DeepPavlov: Open-Source Library for Dialogue Systems” 13 Hao Fang, 17 Apr 2018: “Dialog Management and System Evaluation” 14 Jason Weston, “Tasks and Architectures for Language Understanding and Dialogue with memory” 15 DENNY BRITZ, 2015, “Recurrent Neural Networks Tutorial” 16 SONVX, 2018, “Học biểu diễn ngơn ngữ cho máy tính” 17 Colah’s blog, August 27, 2015, “Understanding LSTM Networks” 18 Van Deemter, Krahmer, Emiel; Theune, 1999 “Plan-based vs template-based NLG” 53 19 Ondrej Plátek, Petr Belohlávek, Vojtech Hudecek, and Filip Jurcícek, 2016 “Recurrent Neural Networks for Dialogue State Tracking” 20 Matthew Henderson, Blaise Thomson and Steve Young, 2014 “Word-Based Dialog State Tracking with Recurrent Neural Networks” 21 Victor Zhong, Caiming Xiong, Richard Socher, 2018 “Global-Locally SelfAttentive Dialogue State Tracker” 22 Pei-Hao Su, Nikola Mrksic, Inigo Casanueva, Ivan Vulic, 2018 “Deep Learning for Conversational AI” 23 Jagan Jami , 2017, “INFOGRAPHIC: THE FUTURE OF CHATBOTS STATISTICS & TRENDS” 24 Larry Kim, 2018 “The Top Messenger Apps in the World” 25 Liron Hakim Bobrov, January 2019, “Mobile Messaging App Map of the World” 54 PHỤ LỤC 55 56 57 58 59 60 ... đoan luận văn ? ?Nghiên cứu xây dựng chatbot hỗ trợ người dùng ngân hàng? ?? nghiên cứu, tìm hiểu phát triển dẫn dắt TS Nguyễn Văn Vinh Luận văn chép từ tài liệu, cơng trình nghiên cứu người khác mà... VỰC NGÂN HÀNG 34 3.1 Bài toán 34 3.2 Xây dựng chatbot hỗ trợ người dùng lĩnh vực ngân hàng .34 3.3 Ứng dụng RASA xây dựng chatbot 36 3.4 Xây dựng liệu chatbot. .. tập trung xây dựng hệ thống chatbot hỗ trợ người dùng lĩnh vực ngân hàng dựa vào framework Rasa áp dụng kiến thức tìm hiểu chatbot để tùy chỉnh mã nguồn mở Đối tượng hỗ trợ người dùng chatbot cụ