Luận văn Nghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàng
Bạn đang xem 30 trang mẫu của tài liệu "Luận văn Nghiên cứu và xây dựng chatbot hỗ trợ người dùng trong ngân hàng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
File đính kèm:
luan_van_nghien_cuu_va_xay_dung_chatbot_ho_tro_nguoi_dung_tr.pdf
Nội dung tài liệu: Luận văn Nghiê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 là 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 và xây dựng chatbot hỗ trợ người dùng trong ngân hàng” là do tôi nghiên cứu, tìm hiểu và phát triển dưới sự dẫn dắt của TS. Nguyễn Văn Vinh. Luận văn không phải sự sao chép từ các tài liệu, công trình nghiên cứu của người khác mà không ghi rõ trong tài liệu tham khảo. Tôi xin chịu trách nhiệm về lời cam đoan này. Hà nội, ngày tháng năm 2019
- LỜI CẢM ƠN Đầu tiên tôi xin gửi lời cảm ơn tới các 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 và truyền đạt kiến thức trong suốt khóa cao học vừa qua. Tôi cũng xin được gửi lời cảm ơn đến các thầy cô trong bộ môn Kỹ Thuật Phần Mềm cũng như khoa Công Nghệ Thông Tin đã mang lại cho tôi những kiến thức vô cùng quý giá và bổ ích trong quá trình học tập tại 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 và tận tình chỉ bảo tôi trong suốt quá trình nghiên cứu, xây dựng và hoàn thiện luận văn này. Tôi cũng xin được cảm ơn tới gia đình, những người thân, các đồng nghiệp và bạn bè thường xuyên quan tâm, động viên, chia sẻ kinh nghiệm, cung cấp các tài liệu hữu ích trong thời gian học tập, nghiên cứu cũng như trong suốt quá trình thực hiện 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 ................................................................................................................ 4 MỤC LỤC ...................................................................................................................... 5 DANH MỤC KÝ HIỆU VÀ CÁC CHỮ VIẾT TẮT .................................................. 7 DANH MỤC HÌNH VẼ VÀ ĐỒ THỊ .......................................................................... 8 MỞ ĐẦU ......................................................................................................................... 1 1. Động lực nghiên cứu ............................................................................................. 2 2. Mục tiêu luận văn .................................................................................................. 3 3. Cấu trúc luận văn ................................................................................................... 4 CHƢƠNG 1 : TỔNG QUAN HỆ THỐNG CHATBOT ............................................ 5 1.1 Giới thiệu ........................................................................................................... 5 1.2 Cấu trúc các thành phần hệ thống chatbot ......................................................... 6 1.3 Hiểu ngôn ngữ tự nhiên (NLU).......................................................................... 7 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 2 : 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 quá 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 3 : 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 dữ 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 bản (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ừ Từ chuẩn Diễn giải viết tắt 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 trên 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 quyết vấn đề phụ thuộc quá 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ả năng 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 các thành phần cơ bản hệ thống chatbot [12] ................................... 6 Hình 1.2: Mô hình các thành phần xử lý trong chatbot [1] ............................................. 7 Hình 1.3: Các bước xử lý chính trong pipeline của NLU [1] .......................................... 8 Hình 1.4: Các bước xử lý trong NLU [2] ........................................................................ 8 Hình 1.5: Mô hình các bước xác định ý định ................................................................ 10 Hình 1.6: Gán nhãn từ theo mô hình B-I-O trong 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 và quyết định action trong 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 trên 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: Quá trình xử lý thông tin của một 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 2 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 của mạng RNN chứa một layer [17] ................................... 24 Hình 2.9 : Các mô-đun lặp của mạng LSTM chứa bốn layer [17] ................................ 24 Hình 2.10 : Tế bào trạng thái LSTM giống như một 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 và Skip-Ngram [16] ........................................................ 29 Hình 2.18 : Xác xuất từ k trên ngữ cảnh của từ i và 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 của 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 của bot khi không nhận ra ý đị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 bản chuyển tiền bằng 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 dữ liệu intent ........................ 43 Hình 3.14: Hình ước lượng độ chính xác tập dữ liệu trainning intent .......................... 44 Hình 3.15 : Hình ước lượng độ chính 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 của 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 đang ngày càng thông minh hơn, hoàn thiện hơn. Nó giúp chúng ta có những tương tác và trải nghiệm tốt hơn đối với các phần mềm. Chúng ta sẽ điểm qua một số thành tựu mà chatbot đã đạt được (thống kê trên infographic : the future of chatbots statistics & trends) [23] 100000 : là số lượng chatbot trên Facebook Messenger tại thời điểm tháng 11/2018 80% các doanh nghiệp muốn sử dụng chatbot vào năm 2020 63% người dùng sẽ xem xét một tin nhắn online từ chatbot để kết nối với doanh nghiệp hoặc nhãn hiệu 59% số người đã từng sử dụng chatbot trên một app 37.11% là số chatbot tăng trưởng trong suốt giai đoạn 2017-2021 56% các công ty đa truyền thông và công nghệ sẽ chuyển qua sử dụng các công nghệ chăm sóc khách hàng tự động trong tương lai gần, 33% sẽ có kế hoạch chuyển sang dùng các robot sử dụng AI trước năm 2019 75% là tỉ lệ thành công của việc bot tương tác với người dùng trong lĩnh vực y tế và ngân hàng. 90% là chỉ số mong đợi sau này. 30% là số chi phí giảm đi khi áp dụng chatbot vào lĩnh vực chăm sóc khách hàng 8 tỷ USD là chi phí sẽ giảm khi á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 là cơ sở để chatbot phát triển nhanh như vậy. Chúng ta sẽ điểm qua một số các tác nhân chính: Đầu tiên là do thời đại bùng nổ của tin nhắn và nó là cơ sở cho chatbot phát triển mạnh mẽ: 28,2 tỷ tin nhắn di động đã được gửi trong năm 2017, gấp đôi so với năm 2012. [25] 98% tin nhắn sẽ được đọc, với email tỷ lệ là 22%. Tỷ lệ gỡ bỏ các ứng dụng nhắn tin chỉ bằng một nửa so với các ứng dụng khác 1

