Báo Cáo Đồ Án Cơ Sở Đề Tài- Xây Dựng Ứng Dụng Chat Tự Động Với Deep Learning.pdf

24 10 0
Báo Cáo Đồ Án Cơ Sở Đề Tài- Xây Dựng Ứng Dụng Chat Tự Động Với Deep Learning.pdf

Đ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

MẪU ĐỒ ÁN KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC ĐÀ NẴNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT HÀN BÁO CÁO ĐỒ ÁN CƠ SỞ 5 ĐỀ TÀI XÂY DỰNG ỨNG DỤNG CHAT TỰ ĐỘNG VỚI DEEP LEARNING Giảng viên hướng dẫn T[.]

ĐẠI HỌC ĐÀ NẴNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT - HÀN BÁO CÁO ĐỒ ÁN CƠ SỞ ĐỀ TÀI: XÂY DỰNG ỨNG DỤNG CHAT TỰ ĐỘNG VỚI DEEP LEARNING Giảng viên hướng dẫn: Sinh viên thực hiện: ThS LÊ SONG TOÀN Nguyễn Quốc Cường 17IT130 Nguyễn Thị Ngà 17CE029 ĐÀ NẴNG, THÁNG 08 NĂM 2020 ĐẠI HỌC ĐÀ NẴNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT - HÀN BÁO CÁO ĐỒ ÁN CƠ SỞ ĐỀ TÀI: XÂY DỰNG ỨNG DỤNG CHAT TỰ ĐỘNG VỚI DEEP LEARNING Đà Nẵng, tháng 08 năm 2020 Trang Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng MỞ ĐẦU Trong năm gần đây, với phát triển nhân loại khoa học cơng nghệ có bước tiến vượt trội, điển hình ngành cơng nghiệp 4.0 Với phát triển vượt bậc công nghệ việc triển khai công nghệ vào đời sống người ngày hoàn thiện Điển hình việc dụng trí thơng minh nhân tạo nhằm thay công cụ truyền thống giúp cải thiện sống Trong nhiều năm trở lại đây, với nhu cầu hội nhập ngày cao quốc gia kinh tế lẫn văn hóa, khiến nhu cầu giao tiếp ngày tăng cao Nhưng nhiều người khơng có thời gian để gặp bạn bè, người khó bắt chuyện, nói việc nâng cao giao tiếp diễn khó khăn Chính cần có phần mềm, công cụ để hỗ trợ việc giao tiếp đâu hay thời gian Nhờ tiên tiến khoa học công nghệ vượt trội từ trí thơng minh nhân tạo, để tạo phần mềm hay công cụ tương tác người máy ứng dụng dựa tảng trí tuệ nhân tạo phổ biến kể đến ứng dụng dựa Chatbot Có thể nói Chatbot hình thức thơ sơ trí tuệ nhân tạo, chương trình tạo từ máy tính, tiến hành trị chuyện thơng qua phương thức văn bản, hình ảnh, âm thanh,… Hiện có nhiều chatbot nâng cấp chatbot trợ lý ảo có thị trường ông lớn ngành công nghệ tạo Bên cạnh họ cung cấp nhiều tư liệu Điều giúp ta tiếp cận việc xây dựng chatbot trở nên đơn giản Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng LỜI CẢM ƠN Để thực hoàn thành tốt đồ án này, em nhận giúp đỡ hướng dẫn tận tình thầy thuộc Đại Học Công Nghệ Thông Tin Và Truyền Thông Việt Hàn – Đại Học Đà Nẵng Em xin cảm ơn thầy cô thuộc môn chuyên ngành cung cấp cho chúng em thông tin, kiến thức vô quý báu cần thiết suốt thời gian để em thực hồn thành đồ án Đặc biệt em xin chân thành cảm ơn thầy Lê Song Toàn, người trực tiếp hướng dẫn chúng em thời gian thực đồ án Cuối cùng, xin chân thành cảm ơn bạn ngành công nghệ thông tin ủng hộ, giúp đỡ, chia sẻ kiến thức, kinh nghiệm tài liệu có giúp chúng tơi q trình nghiên cứu thực đề tài Do giới hạn mặt thời gian kiến thức kinh nghiệm thực tiễn nên đề tài khơng tránh khỏi sai sót Em mong nhận thông cảm quý thầy mong đón nhận góp ý thầy cô bạn Em xin chân thành cảm ơn! Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng NHẬN XÉT (Của giảng viên hướng dẫn) ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… Đà Nẵng, ngày … tháng … năm 20… Giảng viên hướng dẫn ThS.Lê Song Tồn Đại học Cơng nghệ thơng tin Truyền thông Việt Hàn – Đại học Đà Nẵng MỤC LỤC Chương 1: TỔNG QUAN VỀ HỆ THỐNG CHATBOT 1.1Chatbot ? 1.2Cấu trúc thành phần Chatbot: 1.3 Hiểu ngôn ngữ tự nhiên (NLU): 1.3.1 Xác định ý định người dùng 1.4 Quản lý hội thoại (DM) 1.4.2 Mơ hình Frame-based 1.5 Thành phần sinh ngôn ngữ (NLG) 1.5.1 Template-based NLG 1.5.2 Plan-based NLG 10 1.5.3 Class-based NLG 11 Chương 2: 12 CƠ SỞ LÝ THUYẾT .12 2.1 Kiến trúc mạng nơ ron nhân tạo 12 2.2 Mạng nơ ron hồi quy RNN 16 2.3 Long Short-Term Memory: 18 2.3.1 Vấn đề phụ thuộc dài 18 2.3.2 Cấu trúc mạng 19 2.3.3 Phân tích mơ hình LSTM 20 2.4 Giới thiệu mô hình Sequence: 23 2.5 Seq2Seq Model: 23 2.6 Beam Search – Thuật tốn tìm kiếm hỗ trợ Seq2Seq: 25 2.7 Word embeddings 27 2.7.1 Word2vec 28 2.7.2 Glove 29 Chương 3: 31 XÂY DỰNG ỨNG DỤNG CHATBOT 31 3.1 Kiến trúc ứng dụng 31 3.2 Quá trình xây dựng 31 3.2.1 Tiền xử lý liệu: 31 Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng 3.2.2 Xây dựng mơ hình Seq2Seq .32 3.2.3 Đào tạo mơ hình Seq2Seq 33 3.2.4 Thử nghiệm mơ hình Seq2Seq 33 3.3 Kết đạt 34 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .36 Kết luận: 36 Hướng phát triển: 36 DANH MỤC THAM KHẢO 37 Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng DANH MỤC HÌNH Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Chatbot Các thành phần Chatbot Các bước xử lý NLU .3 Các bước xử lý NLU Mơ hình bước xác định ý định Mơ hình quản lý trạng thái định hành động hội thoại .7 Quản lý hội thoại theo mơ hình FSA .8 Khung chat bot hỏi thông tin khách hàng .9 Phương pháp sinh ngôn ngữ dựa tập mẫu câu trả lời 10 10 Phương pháp sinh ngôn ngữ dựa Plan based 10 11 Phương pháp sinh ngôn ngữ Class based 11 12 Cấu trúc mạng nơtron nhân tạo 12 13 Q trình xử lý thơng tin mạng nơ ron nhân tạo 13 14 Mạng RNN 16 15 Mạng RNN chiều 17 16 Mạng RNN nhiều tầng 18 17 RNN phụ thuộc long-term 18 18 Các module lặp mạng RNN 19 19 Các module lặp mạng LSTM chứa lớp 19 20 Tế bào trạng thái (Cell state) LSTM 20 21 Cổng trạng thái LSTM 20 22 LSTM focus f .21 23 LSTM focus I .21 24 LSTM focus c 22 25 LSTM focus 22 26 Thành phần LSTM 24 27 LSTM Encoder 24 28 LSTM Decoder 25 29 RNN/LSTM lồng 25 30 Cây xác suất 27 31 Mơ hình từ nhúng 28 32 Mơ hình CBOW Skip-Ngram 29 33 Kiến trúc ứng dụng chatbot 31 34 Quá trình huấn luyện 34 35 Tương tác trò chuyện với chatbot .34 36 Trực quan từ nhúng với TensorBoard 35 37 Giao diện web .35 Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng DANH MỤC CỤM TỪ VIẾT TẮT STT Cụm từ Viết tắt Natural Language Processing NLP AI 10 11 12 13 14 15 16 17 18 Artificial Intelligence Artificial Nerual Network Continuous Bag of Words Convolution Neural Network Conditional Random Fields Dialogue Management Deep Neural Networks Dialogue State Tracking Finite State Automata Finite State Machine ANN CBOW CNN CRF DM DNN DST FSA FSM Long short-term memory LSTM Natural Language Generation NLG NLU Natural Language Understanding Machine Learning Part Of Speech Recurrent Neural Network Support Vector Machine ML POS RNN SVM Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng Chương 1: TỔNG QUAN VỀ HỆ THỐNG CHATBOT 1.1 Chatbot ? Chatbot ứng dụng phần mềm dùng để quản lý hệ thống thảo luận trực tuyến văn văn chuyển thành giọng nói, thay cung cấp thảo luận trực tiếp với người dùng có thật Hình Chatbot Hiện chatbot dùng nhiều lĩnh vực tư vấn, tiếp thị,… giúp tăng tính hiệu ngành sử dụng Ngoài ra, lĩnh vực học máy chatbot hiểu Q & A System (Question and Answering System) Hiện tại có hai loại chatbot: - Chatbot dựa theo kịch có sẵn: Kiểu chatbot thường dùng với thiết đặt có sẵn Người sử dụng cần chọn lựa chọn cài đặt chatbot Đối với loại câu hỏi khó chuyển sang cho người để giải Độ linh động không cao Các tảng hỗ trợ chatbot kiểu là: Facebook Messenger, Slack, Zalo, Telegram,… - Chatbot sử dụng Machine Learning: Đối với kiểu chatbot xử lý ngôn ngữ tự nhiên (Natural Language Processing) kết hợp sử dụng mạng neutron để đào tạo cho kết hợp lý Những cơng việc cần làm để tạo chatbot bao gồm: o Phân loại câu hỏi o Trích xuất câu trả lời (Dựa tài liệu liệu mẫu (dataset) liên quan) o Trích xuất câu trả lời Trang Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng o Trong cơng việc việc phân loại câu hỏi cơng việc khó khăn vất vả Vì vậy, đơi với u cầu khả hỏi trả lời cách linh động xác 1.2 Cấu trúc thành phần Chatbot: Hình Các thành phần Chatbot Chatbot có thành phần hiểu ngơn ngữ tự nhiên (NLU), quản lý hội thoại (DM), thành phần sinh ngôn ngữ (NLG) Các thành phần nhận dạng giọng nói Speech Recognition (text to speech hay speech to text) thành phần tăng cường Mỗi thành phần chatbot có vai trị riêng:  NLU: bao gồm việc xử lý ngơn ngữ tự nhiên (NLP) có nhiệm vụ xác định ý định câu hỏi (intent classification) trích chọn thơng tin (slots filter)  DM: Quản lý hội thoại có nhiệm vụ xác định hành động (action) dựa vào trạng thái hành động trước hay ngữ cảnh hội thoại Các ngữ cảnh phải đối chiếu kịch dựng sẵn (history) đào tạo cho bot Thành phần đảm nhiệm việc lấy liệu từ hệ thống khác qua API gọi action  NLG: thành phần sinh ngơn ngữ dựa vào sách (policy) hành động xác định DM thông qua tập hội thoại NGL sinh câu trả lời dựa vào tập mẫu câu trả lời (pre-defined template) đào tạo cho bot Trang Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng 1.3 Hiểu ngôn ngữ tự nhiên (NLU): Đây nói thành phần quan trọng chatbot Chatbot có thơng minh hay khơng thành phần định Mục tiêu thành phần trích xuất thành phần thơng tin từ câu nói người dùng:    Đầu tiên phân loại lĩnh vực (domain classification), lĩnh vực ngân hàng, y tế hay bảo hiểm Nếu trường hợp có lĩnh vực khơng cần thiết cho bước phân loại Tiếp đến phân loại ý định (intent classification), ví dụ xác định ý định tra cứu thông tin tài khoản ý định kiểm tra số dư Cuối bước trích xuất thơng tin (slot fillter hay entity extraction) câu hỏi người dùng Ví dụ ta phải trích chọn thơng tin số tháng câu hỏi người dùng: “lãi suất kỳ hạn tháng bao nhiêu” Từ việc trích xuất thơng tin tháng chatbot có sở trả lời cho người dùng NLU xử lý tin nhắn người dùng đường ống (pipeline) nơi mà cấu hình bước xử lý liên : Hình Các bước xử lý NLU Trong đường ống bạn tùy chỉnh thành phần từ bước tiền xử lý liệu, mô hình hóa ngơn ngữ, thuật tốn dùng để tách từ trích xuất thơng tin thực thể Trang Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng Hình Các bước xử lý NLU Để phân loại ý định câu người dùng ta cần mơ hình hóa ngơn ngữ, tức việc biểu diễn ngơn ngữ dạng vector số học cho máy hiểu (vectorization) Phương pháp phổ biến word embedding (nhúng từ) Tập nhúng từ tên chung cho tập hợp mơ hình ngơn ngữ phương pháp học đặc trưng xử lý ngôn ngữ tự nhiên (NLP), nơi từ cụm từ từ vựng ánh xạ tới vectơ số thực Về mặt khái niệm, liên quan đến việc nhúng tốn học từ không gian với chiều cho từ vào khơng gian vectơ liên tục với kích thước thấp nhiều Một số phương pháp biểu diễn phổ biến Word2Vec, GloVe hay FastText giới thiệu phần sau Sau mô hình hóa ngơn ngữ bao gồm liệu đầu vào training cho bot việc xác định ý định người dùng từ câu hỏi người dùng dựa tập training bước phân loại ý định (intent classification) hay phân loại văn Ở bước ta dùng số kỹ thuật như: Naive Bayes, Decision Tree (Random Forest), Vector Support Machine (SVM), Convolution Neural Network (CNN), Recurrent Neural Network (RNN), Long Short-Term Memory (LSTM, Bi-LSTM) Hầu hết chatbot ứng dụng mơ hình deep learning RNN LSTM để phân loại ý định người dùng Bài toán thách thức lớn cho chatbot bước xác định nhiều ý định (multiple intents) câu nói người dùng Ví dụ bạn nói “xin chào, kiểm tra cho tơi số dư tài khoản” bot phải xác định ý định “chào hỏi” “kiểm tra số dư” câu nói người dùng Nếu bot hiểu trả lời câu hỏi loại giúp việc tương tác với bot trở nên tự nhiên Tiếp đến việc trích xuất thơng tin câu hội thoại người dùng Các thơng tin cần trích xuất thường dạng số, chuỗi thời gian chúng phải khai báo huấn luyện trước Trang Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng Phân tách từ (Tokenization hay word segmention): Tách từ trình xử lý nhằm mục đích xác định ranh giới từ câu văn, hiểu đơn giản tách từ trình xác định từ đơn, từ ghép có câu Đối với xử lý ngơn ngữ, để xác định cấu trúc ngữ pháp câu, xác định từ loại từ câu, yêu cầu thiết đặt phải xác định đâu từ câu Vấn đề tưởng chừng đơn giản với người máy tính, tốn khó giải Thơng thường ngơn ngữ phân tách từ khoảng trắng ngôn ngữ tiếng việt có nhiều từ ghép cụm từ Ví dụ từ ghép “tài khoản” tạo từ đơn “tài” “khoản” Có số thuật toán hỗ trợ giải toán mơ hình so khớp từ dài (longest matching), so khớp cực đại (Maximum Matching), Markov ẩn (Hidden Markov Models- HMM) hay mơ hình CRF (conditinal random field) 1.3.1 Xác định ý định người dùng Hình Mơ hình bước xác định ý định Hệ thống phân lớp ý định người dùng có số bước bản:  Tiền xử lý liệu  Trích xuất đặc trưng  Huấn luyện mơ hình  Phân lớp Bước tiền xử lý liệu thao tác “làm sạch” liệu như: loại bỏ thông tin dư thừa, chuẩn hoá liệu chuyển từ viết sai tả thành tả, ch̉n hố từ viết tắt Bước tiền xử lý liệu có vai trị quan trọng hệ thống chatbot Nếu liệu đầu vào có xử lý bước làm tăng khả năng độ xác thông minh cho bot Trang Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng Tiếp đến bước trích xuất đặc trưng (feature extraction hay feature engineering) từ liệu làm Trong mơ hình học máy truyền thống (trước mơ hình học sâu áp dụng rộng rãi), bước trích xuất đặc trưng ảnh hưởng lớn đến độ xác mơ hình phân lớp Để trích xuất đặc trưng tốt, cần phân tích liệu tỉ mỉ cần tri thức chuyên gia miền ứng dụng cụ thể Bước huấn luyện mơ hình nhận đầu vào đặc trưng trích xuất áp dụng thuật toán học máy để học mơ hình phân lớp Các mơ hình phân lớp luật phân lớp (nếu sử dụng decision tree) vector trọng số tương ứng với đặc trưng trích xuất (như mơ hình logistic regression, SVM, hay mạng Neural) Sau có mơ hình phân lớp intent, sử dụng để phân lớp câu hội thoại Câu hội thoại qua bước tiền xử lý trích xuất đặc trưng, sau mơ hình phân lớp xác định “điểm số” cho intent tập intent đưa intent có điểm cao Để đưa hỗ trợ xác, chatbot cần xác định ý định (intent) người dùng Việc xác định ý định người dùng định hội thoại người chatbot diễn Vì thế, xác định sai ý định người dùng, chatbot đưa phản hồi không đúng, không hợp ngữ cảnh Khi đó, người dùng thấy chán ghét không quay lại sử dụng hệ thống Bài tốn xác định ý định người dùng đóng vai trị quan trọng hệ thống chatbot Đối với miền ứng dụng đóng, giới hạn số lượng ý định người dùng nằm tập hữu hạn ý định định nghĩa sẵn, có liên quan đến nghiệp vụ mà chatbot hỗ trợ Với giới hạn này, tốn xác định ý định người dùng quy toán phân lớp văn Với đầu vào câu giao tiếp người dùng, hệ thống phân lớp xác định ý định tương ứng với câu tập intent định nghĩa trước Để xây dựng mơ hình phân lớp intent, cần tập liệu huấn luyện bao gồm cách diễn đạt khác cho intent Ví dụ, mục đích chào hỏi ta dùng cách diễn đạt sau:  Hello (Xin chào)  Hi (Xin chào)  Hey (Chào) Có thể nói, bước tạo liệu huấn luyện cho tốn phân lớp intent cơng việc quan trọng phát triển hệ thống chatbot ảnh hưởng lớn tới chất lượng sản phẩm hệ thống chatbot sau Cơng việc địi hỏi thời gian, công sức lớn nhà phát triển chatbot 1.4 Quản lý hội thoại (DM) Trang Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng Trong phiên trao đổi dài (long conversation) người chatbot, chatbot cần ghi nhớ thông tin ngữ cảnh (context) hay quản lý trạng thái hội thoại (dialog state) Vấn đề quản lý hội thoại (dialoge management) quan trọng để đảm bảo việc trao đổi người máy thông suốt Chức thành phần quản lý hội thoại nhận đầu vào từ thành phần NLU, quản lý trạng thái hội thoại (dialogue state), ngữ cảnh hội thoại (dialogue context), truyền đầu cho thành phần sinh ngôn ngữ (Natural Language Generation, viết tắt NLG) Hình Mơ hình quản lý trạng thái định hành động hội thoại Trạng thái hội thoại (dialog state) lưu lại dựa vào tập luật hội thoại (dialog policy) để định hành động cho câu trả lời bot kịch hội thoại, hay hành động (action) phụ thuộc vào trạng thái (dialog state) trước Ví dụ module quản lý dialogue chatbot phục vụ đặt vé xem phim cần biết người dùng cung cấp đủ thông tin cho việc đặt vé để tạo ticket tới hệ thống cần phải xác nhận lại thông tin người dùng đưa vào Hiện nay, sản phẩm chatbot thường dùng mơ hình máy trạng thái hữu hạn (Finite State Automata – FSA), mơ hình Frame-based (Slot Filling), kết hợp hai mơ hình Một số hướng nghiên cứu có áp dụng mơ hình ANN vào việc quản lý hội thoại giúp bot thông minh 1.4.1 Mô hình máy trạng thái hữu hạn FSA Trang Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng Hình Quản lý hội thoại theo mơ hình FSA Mơ hình FSA quản lý hội thoại đơn giản Ví dụ hệ thống đặt vé máy bay, đặt vé gửi thông tin khách hàng cung cấp từ trước Nhiệm vụ chatbot hỏi thời gian địa điểm Ảnh minh hoạ mô hình quản lý hội thoại cho chatbot đặt vé máy bay Các trạng thái FSA tương ứng với câu hỏi mà dialogue manager hỏi người dùng Các cung nối trạng thái tương ứng với hành động chatbot thực Các hành động phụ thuộc phản hồi người dùng cho câu hỏi Trong mơ hình FSA, chatbot phía định hướng người sử dụng hội thoại Ưu điểm mơ hình FSA đơn giản chatbot định trước dạng câu trả lời mong muốn từ phía người dùng Tuy nhiên, mơ hình FSA khơng thực phù hợp cho hệ thống chatbot phức tạp người dùng đưa nhiều thông tin khác câu hội thoại Trong ví dụ chatbot trên, người dùng đồng thời cung cấp thời gian địa điểm câu đầu tiên, chatbot hỏi tiếp câu tiếp theo, điều khiến người dùng cảm thấy khó chịu 1.4.2 Mô hình Frame-based Mơ hình Frame-based (hoặc tên khác Form-based) giải vấn đề mà mơ hình FSA gặp phải Mơ hình Frame-based dựa frame định sẵn để định hướng hội thoại Mỗi frame bao gồm thông tin (slot) cần điền câu hỏi tương ứng mà dialogue manager hỏi người dùng Mơ hình cho phép người dùng điền thông tin vào nhiều slot khác frame Bảng ví dụ frame cho chatbot Trang Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng Hình Khung chat bot hỏi thông tin khách hàng Thành phần quản lý dialogue theo mơ hình Frame-based đưa câu hỏi cho khách hàng, điền thông tin vào slot dựa thông tin khách hàng cung cấp có đủ thơng tin cần thiết Khi người dùng trả lời nhiều câu hỏi lúc, hệ thống phải điền vào slot tương ứng ghi nhớ để khơng hỏi lại câu hỏi có câu trả lời Trong miền ứng dụng phức tạp, hội thoại có nhiều frame khác Vấn đề đặt cho người phát triển chatbot để biết cần chuyển đổi frame Cách tiếp cận thường dùng để quản lý việc chuyển điều khiển frame định nghĩa luật (production rule) Các luật dựa số thành tố câu hội thoại câu hỏi gần mà người dùng đưa 1.5 Thành phần sinh ngôn ngữ (NLG) NLG thành phần sinh câu trả lời chatbot Nó dựa vào việc ánh xạ hành động quản lý hội thoại vào ngôn ngữ tự nhiên để trả lời người dùng Có phương pháp ánh xạ hay dùng là: Template-Base, Plan-based, Class-base, RNN-base 1.5.1 Template-based NLG Phương pháp ánh xạ câu trả lời dùng câu mẫu trả lời bot định nghĩa từ trước để sinh câu trả lời Trang Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng Hình Phương pháp sinh ngơn ngữ dựa tập mẫu câu trả lời   Ưu điểm: đơn giản, kiểm soát dễ dàng Phù hợp cho tốn miền đóng Nhược điểm: tốn thời gian định nghĩa luật, khơng mang tính tự nhiên câu trả lời Đối với hệ thống lớn khó kiểm sốt luật dẫn đến hệ thống khó phát triển trì 1.5.2 Plan-based NLG Hình 10 Phương pháp sinh ngôn ngữ dựa Plan based   Ưu điểm: Có thể mơ hình hóa cấu trúc ngôn ngữ phức tạp Nhược điểm: Thiết kế nặng nề, đòi hỏi phải rõ miền kiến thức Trang 10 Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng 1.5.3 Class-based NLG Hình 11 Phương pháp sinh ngôn ngữ Class based Phương pháp dựa việc cho bot học câu trả lời đầu vào gán nhãn Ứng với hành động (action) thông tin (slot) từ quản lý hội thoại bot đưa câu trả lời gần dựa tập liệu trả lời đào tạo trước   Ưu điểm: dễ dàng thực thi Nhược điểm: phụ thuộc vào liệu trả lời gán nhãn đào tạo trước Bên cạnh việc tính tốn điểm số khơng hiệu dẫn đến việc sinh câu trả lời sai Trang 11 Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng Chương 2: CƠ SỞ LÝ THUYẾT 2.1 Kiến trúc mạng Nơ-ron nhân tạo Mạng nơ-ron nhân tạo (Artificial Neural Network – ANN) mơ hình xử lý thơng tin mơ dựa hoạt động hệ thống thần kinh sinh vật, bao gồm số lượng lớn nơ-ron gắn kết để xử lý thông tin ANN hoạt động giống não người, học kinh nghiệm (thơng qua việc huấn luyện), có khả lưu giữ tri thức sử dụng tri thức việc dự đốn liệu chưa biết (unseen data) Một mạng nơ-ron nhóm nút nối với nhau, mô mạng nơ-ron thần kinh não người Mạng nơ-ron nhân tạo thể thông qua ba thành phần bản: mơ hình nơ ron, cấu trúc liên kết nơ ron Trong nhiều trường hợp, mạng nơ-ron nhân tạo hệ thống thích ứng, tự thay đổi cấu trúc dựa thơng tin bên ngồi hay bên chạy qua mạng trình học Hình 12 Cấu trúc mạng nơtron nhân tạo Kiến trúc chung ANN gồm thành phần Input Layer, Hidden Layer Output Layer Tải FULL (47 trang): https://bit.ly/3vBgyCM Dự phịng: fb.com/TaiHo123doc.net Trong đó, lớp ẩn (Hidden Layer) gồm nơ-ron, nhận liệu input từ nơ-ron lớp (Layer) trước chuyển đổi input cho lớp xử lý Trong mạng ANN có nhiều Hidden Layer Lợi lớn mạng ANN khả sử dụng chế xấp xỉ hàm tùy ý mà “học” từ liệu quan sát Tuy nhiên, sử dụng chúng Trang 12 Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng không đơn giản vậy, số đặc tính kinh nghiệm thiết kế mạng nơ-ron ANN Phương pháp tính tốn tỷ lệ xác liệu đầu (output) từ liệu đầu vào (input) cách tính tốn trọng số cho kết nối (connection) từ lần lặp lại “huấn luyện” liệu cho Chatbot Mỗi bước “huấn luyện” liệu cho Chatbot sửa đổi trọng số dẫn đến liệu output xuất với độ xác cao  Chọn mô hình: Điều phụ thuộc vào cách trình bày liệu ứng dụng Mơ hình q phức tạp có xu hướng dẫn đến thách thức trình học  Cấu trúc liên kết giữa nơ-ron  Thuật tốn học: Có hai vấn đề cần học mạng ANN, học tham số mơ hình (parameter learning) học cấu trúc (structure learning) Học tham số thay đổi trọng số liên kết nơ-ron mạng, học cấu trúc việc điều chỉnh cấu trúc mạng việc thay đổi số lớp ẩn, số nơ-ron lớp cách liên kết chúng Hai vấn đề thực đồng thời tách biệt Nếu mơ hình, hàm chi phí thuật tốn học lựa chọn cách thích hợp, mạng ANN cho kết vô mạnh mẽ hiệu Tải FULL (47 trang): https://bit.ly/3vBgyCM Dự phịng: fb.com/TaiHo123doc.net Hình 13 Q trình xử lý thông tin mạng nơ ron nhân tạo Inputs: Mỗi Input tương ứng với đặc trưng liệu Ví dụ ứng dụng ngân hàng xem xét có chấp nhận cho khách hàng vay tiền hay khơng input thuộc tính khách hàng thu nhập, nghề nghiệp, tuổi, số con, Output: Kết ANN giải pháp cho vấn đề, ví dụ với toán xem xét chấp nhận cho khách hàng vay tiền hay khơng output yes no Connection Weights (Trọng số liên kết): Đây thành phần quan trọng ANN, thể mức độ quan trọng, độ mạnh liệu đầu vào Trang 13 Đại học Công nghệ thông tin Truyền thông Việt Hàn – Đại học Đà Nẵng trình xử lý thơng tin chuyển đổi liệu từ layer sang layer khác Quá trình học ANN thực trình điều chỉnh trọng số Weight liệu đầu vào để có kết mong muốn Summation Function (Hàm tởng): Tính tổng trọng số tất input đưa vào nơ-ron Hàm tổng nơ-ron n input tính theo cơng thức sau: n Y  �X iWi i 1 Transfer Function (Hàm chuyển đổi): Hàm tổng nơ-ron cho biết khả kích hoạt nơ-ron cịn gọi kích hoạt bên Các nơ-ron sinh output khơng mạng ANN, nói cách khác output nơ-ron chuyển đến layer mạng nơ-ron không Mối quan hệ hàm tổng kết output thể hàm chuyển đổi Việc lựa chọn hàm chuyển đổi có tác động lớn đến kết đầu mạng ANN Hàm chuyển đổi phi tuyến sử dụng phổ biến mạng ANN sigmoid f (s)  @ ( s ) s 1 e es  e s tanh( s )  s  s e e Trong đó, hàm phiên thay đổi tỉ lệ sigmoid , tức khoảng giá trị đầu hàm chuyển đổi thuộc khoảng [-1, 1] thay [0,1] Sigmoid nên chúng cịn gọi hàm chuẩn hóa (Normalized Function) Kết xử lý nơ-ron (Output) đơi lớn, hàm chuyển đổi sử dụng để xử lý output trước chuyển đến layer Đôi thay sử dụng Transfer Function người ta sử dụng giá trị ngưỡng (Threshold value) để kiểm soát output nơ-ron layer trước chuyển output đến layer Nếu output nơ-ron nhỏ Threshold khơng chuyển đến layer Mạng nơ-ron dự đoán dựa lan truyền thẳng (forward propagation) phép nhân ma trận với activation function để thu kết đầu Nếu input x vector chiều ta tính kết dự đốn y ^ 8090432 công thức: z1 = xW1 + b Trang 14 ... HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT - HÀN BÁO CÁO ĐỒ ÁN CƠ SỞ ĐỀ TÀI: XÂY DỰNG ỨNG DỤNG CHAT TỰ ĐỘNG VỚI DEEP LEARNING Đà Nẵng, tháng 08 năm 2020 Trang Đại học Công nghệ thông tin Truyền... Glove 29 Chương 3: 31 XÂY DỰNG ỨNG DỤNG CHATBOT 31 3.1 Kiến trúc ứng dụng 31 3.2 Quá trình xây dựng 31 3.2.1 Tiền xử lý liệu: ... tương ứng với hành động chatbot thực Các hành động phụ thuộc phản hồi người dùng cho câu hỏi Trong mô hình FSA, chatbot phía định hướng người sử dụng hội thoại Ưu điểm mơ hình FSA đơn giản chatbot

Ngày đăng: 03/02/2023, 19:19

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan