Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 44 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
44
Dung lượng
1,88 MB
Nội dung
ĐẠI HỌC QUỐC GIA TP HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA NGUYỄN HỒNG TÍN HỘI THOẠI DIALOG TRONG TIẾNG VIỆT DÙNG PHƯƠNG PHÁP SEQ-TO-SEQ VÀ ATTENTION Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số: 60.48.01.01 LUẬN VĂN THẠC SĨ TP HỒ CHÍ MINH, tháng năm 2020 CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA –ĐHQG -HCM Cán hướng dẫn khoa học: Cán chấm nhận xét 1: Cán chấm nhận xét 2: Luận văn thạc sĩ bảo vệ Trường Đại học Bách Khoa, ĐHQG Tp HCM ngày 24 tháng năm 2020 Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm: Chủ tịch: PGS.TS Dương Tuấn Anh Thư ký: TS Võ Thị Ngọc Châu Phản biện 1: PGS.TS Quản Thành Thơ Phản biện 2: TS Lê Thị Ngọc Thơ Ủy viên: PGS.TS Lê Anh Cường Xác nhận Chủ tịch Hội đồng đánh giá LV Trưởng Khoa quản lý chuyên ngành sau luận văn sửa chữa (nếu có) CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: NGUYỄN HỒNG TÍN MSHV: 1870582 Ngày, tháng, năm sinh: 29/01/1990 Nơi sinh: Tp HCM Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số: 60.48.01.01 I TÊN ĐỀ TÀI: Hội thoại Dialog tiếng Việt dùng phương pháp SEQTO-SEQ ATTENTION II NHIỆM VỤ VÀ NỘI DUNG: - Nghiên cứu phương pháp hội thoại với máy tính ngôn ngữ tự nhiên (văn bản), tập trung vào phương pháp học sâu - Nghiên cứu phương pháp SEQ-TO-SEQ ATTENTION để áp dụng cho luận văn - Có thể nghiên cứu phương pháp học sâu kết hợp khác để thực luận văn - Tìm hiểu, khai thác xây dựng tập liệu huấn luyện tiếng Việt cho hội thoại Dialog - Xây dựng mô hình hội thoại Dialog thử nghiệm đơn giản cho tiếng Việt III NGÀY GIAO NHIỆM VỤ : 19/08/2019 IV NGÀY HOÀN THÀNH NHIỆM VỤ: 03/08/2020 V CÁN BỘ HƯỚNG DẪN: GS.TS PHAN THỊ TƯƠI Tp HCM, ngày tháng năm 2020 CÁN BỘ HƯỚNG DẪN (Họ tên chữ ký) CHỦ NHIỆM BỘ MÔN ĐÀO TẠO (Họ tên chữ ký) TRƯỞNG KHOA (Họ tên chữ ký) LỜI CÁM ƠN Đầu tiên, xin gửi lời cảm ơn chân thành đến Cô hướng dẫn đề tài GS.TS Phan Thị Tươi Cô hướng dẫn tận tình, định hướng phương pháp, giải đáp thắc mắc trình thực Cô theo sát, lắng nghe đưa lời khuyên thật bổ ích để vững bước hơn, qua khó khăn trình làm đề tài Tôi chân thành biết ơn sự tận tình dạy dỗ, giúp đỡ Thầy Cô Khoa Khoa học Kỹ thuật Máy tính, trường Đại Học Bách Khoa – ĐHQG TP.HCM truyền đạt kinh nghiệm, kiến thức, giảng vơ q giá bổ ích suốt trình học tập trường Cuối cùng, gửi lời cảm ơn sâu sắc đến gia đình, người thân, bạn bè, người thấu hiểu, quan tâm, động viên, giúp đỡ thể chất lẫn tinh thần để có đủ nghị lực, sức khỏe suốt trình thực đề tài luận văn thạc sĩ Với lịng biết ơn chân thành, tơi xin gửi lời chúc sức khỏe, lời biết ơn lời chúc tốt đẹp đến Cô Tươi Thầy Cô Khoa Khoa học Kỹ thuật Máy tính, trường Đại Học Bách Khoa – ĐHQG TP.HCM Trân trọng Tp Hồ Chí Minh, ngày tháng năm 2020 Học viên thực Nguyễn Hồng Tín TĨM TẮT Trong luận văn này, tác giả nghiên cứu xây dựng hệ thống hội thoại cho tiếng Việt, dựa mơ hình Sequence-to-sequence [3] Google giới thiệu lần vào năm 2014, để sinh câu trả lời từ chuỗi đầu vào tương ứng Đồng thời kết hợp sử dụng phương pháp Attention để hỗ trợ mô hình “chú ý” đến thành phần quan trọng câu văn nhằm cải thiện kết đầu Khác với hầu hết toán xử lý ngôn ngữ tự nhiên, đặc biệt dịch máy (Machine Translation) sử dụng kiến trúc Recurrent Neural Networks (RNNs), kiến trúc Transformer gồm hai phần Encoder Decoder giống RNNs thuộc lớp mô hình Sequence-to-sequence sử dụng luận văn Một mô hình học sẵn hay gọi pre-train model BERT (Bidirectional Encoder Representations from Transformers) sử dụng để làm mã hóa (Encoder) mô hình thay vì sử dụng RNNs phương pháp truyền thống ABSTRACT In this thesis, author researches and builds a dialogue system for the Vietnamese that is based on Sequence-to-sequence model that was introduced by Google in 2014, to generate the answer from the respective input sentence In addition, Attention methods are used simultaneously to support the model to “attend” to important parts in a sentence in order to improve the output result In contrast to other NLP (Natural Language Processing) tasks, especially the machine translation uses Recurrent Neural Networks (RNNs), Transformer also has two components: Encoder and Decoder, and belongs to Sequence-tosequence model that is used in this thesis In addition, BERT (Bidirectional Encoder Representations from Transformers) is used to be an encoder of the model instead of RNNs as the traditional method LỜI CAM ĐOAN “Tơi Nguyễn Hồng Tín, học viên khóa 2018, ngành Khoa Học Máy Tính Tơi xin cam đoan, nội dung kết ghi tham khảo cơng trình khác, nội dung trình bày luận văn thạc sĩ chính tìm hiểu, thực không chép từ tài liệu, công trình nghiên cứu người khác mà không ghi rõ phần tài liệu tham khảo Nếu có sai phạm nào, tơi xin chịu hồn tồn trách nhiệm trước Ban Chủ Nhiệm Khoa Ban Giám Hiệu Nhà Trường.” Tp Hồ Chí Minh, ngày tháng năm 2020 Học viên thực Nguyễn Hồng Tín MỤC LỤC TÓM TẮT MỤC LỤC DANH MỤC HÌNH ẢNH DANH MỤC BẢNG 10 DANH MỤC KÝ HIỆU VÀ CÁC CHỮ VIẾT TẮT 11 NỘI DUNG LUẬN VĂN 12 CHƯƠNG 1: GIỚI THIỆU 13 1.1 Giới thiệu đề tài 13 1.2 Mục tiêu đề tài 14 1.3 Ý nghĩa khoa học đề tài 14 1.4 Phạm vi đề tài 15 1.5 Những cơng trình nghiên cứu liên quan 15 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 18 2.1 Kiến trúc Transformer 18 2.1.1 Encoder Decoder 19 2.2 Attention 21 2.2.1 Scale Dot Product Attention 21 2.2.2 Multi-head Attention 23 2.2.3 Masked Multi-head Attention 24 2.3 Mơ hình BERT 24 2.3.1 Các kiến trúc mơ hình BERT 24 2.3.2 Fine-tuning mô hình BERT 25 CHƯƠNG 3: PHƯƠNG PHÁP ĐỀ XUẤT 27 3.1 Xây dựng tập liệu hội thoại 27 3.1.1 Thu thập liệu hội thoại 27 3.1.2 Làm liệu 27 3.2 Mơ hình hội thoại cho tiếng Việt 33 CHƯƠNG 4: HIỆN THỰC VÀ KẾT QUẢ 34 4.1 Dữ liệu công cụ thực nghiệm 34 4.1.1 Dữ liệu 34 4.1.2 Công cụ thực nghiệm 34 4.2 Cài đặt mơ hình 35 4.3 Tiêu chí đánh giá 36 4.4 Kết thực nghiệm 38 TỔNG KẾT 41 Kết luận 41 Hướng phát triển tương lai 41 TÀI LIỆU THAM KHẢO 42 DANH MỤC HÌNH ẢNH Hình 1.1 Trợ lý ảo Ki-Ki Zalo AI Summit 2018 13 Hình 1.2 Kết hệ thống hội thoại tiếng Nhật 16 Hình 1.3 Bản dịch tiếng Việt kết hệ thống hội thoại tiếng Nhật 16 Hình 1.4 Kiến trúc hỏi đáp với BERT 17 Hình 2.1 Mơ hình Transformer 18 Hình 2.2 Input Embedding 19 Hình 2.3 Positional Encoding 20 Hình 2.4 Self-Attention 21 Hình 2.5 Các vector query, key value tương ứng với từ 21 Hình 2.6 Q trình tính tốn trọng số attention attention vector cho từ I câu I study at school 22 Hình 2.7 Kết tính attention vector cho tồn từ câu 22 Hình 2.8 Sơ đồ cấu trúc Multi-head Attention 23 Hình 2.9 Masked Multi-head Attention 24 Hình 2.10 Tồn tiến trình pre-training fine-tuning BERT 25 Hình 3.1: Tập tin vi.txt 27 Hình 3.2: Các tập tin phân tách từ tập tin vi.txt 28 Hình 3.3: Các tập tin json cho tập huấn luyện kiểm tra 30 Hình 3.4: Nội dung tập tin train.json làm “đẹp” (beautify/format) 31 Hình 3.5: Kiến trúc mô hình hội thoại tiếng Việt luận văn 33 DANH MỤC BẢNG Bảng 4.1: Dữ liệu hội thoại tiếng Việt 34 Bảng 4.2: Thời gian huấn luyện mô hình 36 Bảng 4.3: Kết đánh giá mô hình 37 Bảng 4.4: Kết thực nghiệm lần 38-40 Bảng 4.5: Kết thực nghiệm lần 40 10 Hình 3.3: Các tập tin json cho tập huấn luyện kiểm tra Thư mục kết bao gồm 1.000 tập tin để huấn luyện có dạng “trainxxxxx-of-01000.json”, 1000 tập tin để kiểm tra có dạng “test-xxxxx-of01000.json” Mỗi tập tin json có dạng hình 3.4: 30 Hình 3.4: Nội dung tập tin train.json làm “đẹp” (beautify/format) Từ kết trên, tập tin chứa nội dung đoạn hội thoại dịng Một đoạn hội thoại bao gồm: • Câu ngữ cảnh (context): câu văn gần ngữ cảnh hội thoại • Câu đáp (response): câu văn trả lời trực tiếp cho câu ngữ cảnh gần • Một số ngữ cảnh phụ (extra context): context/0, context/1, …là câu văn ngữ cảnh trước đó Chúng xếp theo thứ tự ngược (context/0 liền trước context, context/1 liền trước context/0…) { 'context/1': "Hello, how are you?", 'context/0': "I am fine And you?", 'context': "Great What you think of the weather?", 'response': "It doesn't feel like February." } Bước 7: Bước giải mã liệu tiếng Việt bị mã hóa (hình 3.4) Lặp qua tập tin thư mục train, mở tập tin đọc nội dung dòng tập tin Trong luận văn này, tác giả sử dụng cặp câu văn context response import json from glob import glob for file_name in glob("dataset/train/*.json"): 31 for line in open(file_name): example = json.loads(line) # You can now access: # example['context'] # example['response'] # example['context/0'] etc Như dòng tập tin json cho cặp đối thoại context-response Luận văn đồng thời áp dụng số thao tác tiền xử lý cho cặp bao gồm: • Loại bỏ ký tự đặc biệt chữ chữ số (bắt đầu, kết thúc bên câu tiếng Việt), ví dụ: - Xin chào, bạn!, • Xóa bỏ bình luận, thích ý nghĩa từ, thuật ngữ câu, ví dụ: Chatbot (chương trình tự động trả lời), • Biến đổi bảng mã html dạng câu có ý nghĩa, ví dụ: Cho ch#250;ng t#244;i xem c#225;i c#242;n l#7841;i l#224; g#236; n#224;o • Loại bỏ ký tự lạ ({\3cHFF1000}), đặc biệt ([!@#$%^&*()_+|~=`{}\[\]:"\'\\\/]) • Xóa bỏ ký tự lặp, ký tự phân tách khơng có ý nghĩa, ví dụ: phải khơnggggg, • Lược bỏ cặp văn chứa tiếng Anh lẫn tiếng Việt • Loại bỏ khoảng trắng dư thừa từ • Loại bỏ cặp câu không có ý nghĩa, ví dụ: phụ đề dịch Unknow, Subteam 2pi, phudeviet.org, • Loại bỏ cỏc ký t c bit khỏc '', '', 'Ơ', 'â', 'Đ', 'Ê', '', 'Â', '', 'ơ', 'ò', 'à', 'ặ', 'Ă', '', 'ạ', 'ả', '', 'đ', '', '', '', ã Dung token [SEP] để ngăn cách câu ngữ cảnh context câu đáp response, dùng để tách tập tin bước Sau hoàn tất tác vụ hai tập tin train.txt test.txt Bước 8: Tiếp theo, tách tập tin train.txt dựa vào token [SEP] dòng, thành tập tin train.input.txt chứa câu ngữ cảnh train.target.txt chứa câu đáp cho bước huấn luyện Tương tự, từ tập tin test.txt tách hai tập tin test.input.txt chứa câu ngữ cảnh test.target.txt chứa câu đáp cho bước kiểm tra 32 Bước 9: Bước trích 20% liệu tập huấn luyện để làm tập thẩm định (validation) 3.2 Mơ hình hội thoại cho tiếng Việt Để xây dựng hệ thống hội thoại cho tiếng Việt, hướng tiếp cận đề tài kế thừa phát triển dựa công trình hệ thống dịch máy nhóm tác giả Kenji Imamura Eiichiro Sumita [14] Hệ thống dịch máy từ tiếng Anh sang tiếng Đức dựa kiến trúc Transformer sử dụng BERT làm Encoder Đề tài có số thay đổi, bổ sung cho phù hợp với toán hội thoại tiếng Việt, cụ thể là: • Tìm hiểu mã nguồn thay đổi mô hình 𝐵𝐸𝑅𝑇𝐵𝐴𝑆𝐸,𝑈𝑁𝐶𝐴𝑆𝐸𝐷 (ra mắt 18/10/2018) mà nhóm tác giả sử dụng thành mơ hình 𝐵𝐸𝑅𝑇𝐵𝐴𝑆𝐸,𝑀𝑈𝐿𝑇𝐼𝐿𝐼𝑁𝐺𝑈𝐴𝐿 𝐶𝐴𝑆𝐸𝐷 (ra mắt 23/11/2018) hỗ trợ 104 ngôn ngữ đó có tiếng Việt Cả hai có L=12, H=768, A=12, 110 triệu tham số • Tìm hiểu xử lý tập liệu phụ đề phim đề tài cho format đầu vào mơ hình • Thay đổi mã nguồn, thông số để phù hợp với phần cứng, hệ điều hành ngôn ngữ lập trình mà đề tài sử dụng Kiến trúc mô hình hội thoại tiếng Việt luận văn đề xuất hình 3.5 Hình 3.5: Kiến trúc mơ hình hội thoại tiếng Việt luận văn 33 CHƯƠNG 4: HIỆN THỰC VÀ KẾT QUẢ 4.1 Dữ liệu công cụ thực nghiệm 4.1.1 Dữ liệu Chương trình bày cách xây dựng tập liệu hội thoại tiếng Việt cho đề tài từ kho liệu OpenSubtitles 2018 Tập liệu chia làm ba tập riêng biệt tập huấn luyện (training set), tập thẩm định (validation set) tập kiểm thử (test set) Tập huấn luyện với mục đích tối ưu thơng số mơ hình Tập thẩm định (validation set) phục vụ giám sát mô hình trình huấn luyện Tập kiểm thử dùng để đánh giá kết phương pháp sau trình huấn luyện Chi tiết tập liệu mô tả bảng 4.1 đây: Bảng 4.1: Dữ liệu hội thoại tiếng Việt Tập liệu Số câu/dòng Tập tin Bộ Bộ Tập huấn luyện (training set) train.input.txt, train.target.txt 2.670.420 2.668.017 Tập kiểm tra (test set) test.input.txt, test.target.txt 279.147 278.909 Tập thẩm định (validation set) val.input.txt, val.target.txt 667.605 667.004 Bộ liệu bảng 4.1 làm thêm từ liệu sau thêm từ vô nghĩa bad words vào danh sách cần lọc 4.1.2 Công cụ thực nghiệm Luận văn để thử nghiệm cho mơ hình đề xuất: kết hợp sử dụng thư viện mã nguồn mở công cụ luận văn xây dựng để xử lý liệu huấn luyện mơ hình, cụ thể: • Python: Ngơn ngữ lập trình để xây dựng mô hình hội thoại tiếng Việt • Google Colaboratory (Colab): sản phẩm từ Google Research, nó cho phép chạy code python thông qua trình duyệt, cung cấp tài nguyên máy tính từ CPU tốc độ cao GPUs TPUs, đặc biệt phù hợp với Data analysis, machine learning giáo dục • Google Cloud Storage (CS): dịch vụ lưu trữ tập tin trực tuyến • NLTK: Cơng cụ xử lý ngôn ngữ tự nhiên mã nguồn mở dành riêng cho NLP tích hợp vào Python Nó ngày hồn thiện tích hợp cơng cụ hàng ngàn lập trình viên cộng tác viên khắp giới NLTK bao gồm thư viện hàm, cơng cụ 34 phân tích, corpus, wordnet, stopwords, … giúp đơn giản hoá, tiết kiệm thời gian công sức cho lập trình viên • Fairseq: Là dự án Facebook chuyên hỗ trợ nghiên cứu dự án liên quan đến mơ hình Sequence-to-sequence • Transformers: dự án Hugging Face cung cấp kiến trúc đại (BERT, GPT-2, RoBERTa, XLM, DistilBert, XLNet, T5, CTRL ) cho hệ thống hiểu ngôn ngữ (Natural Language Understanding - NLU) hệ thống sinh ngôn ngữ (Natural Language Generation NLG) với hàng ngàn pretrained models 100+ ngôn ngữ 4.2 Cài đặt mơ hình Dựa theo nghiên cứu [14], luận văn huấn luyện mô hình tập liệu hội thoại chuẩn bị chia thành hai giai đoạn: Giai đoạn (training stage 1): huấn luyện cho decoder, tham số huấn luyện sau: • Pre-trained Bert Model: bert-base-multilingual-cased • Learning rate: 0.0004 • Dropout: 0.15 • Optimizer: Adam Giai đoạn (training stage 2): fine-tuning, toàn mô hình bao gồm encoder tune, tham số huấn luyện sau: • Pre-trained Bert Model: bert-base-multilingual-cased • Learning rate: 0.00008 • Dropout: 0.15 • Optimizer: Adam Encoder sử dụng BERT Tokenizer (dựa WordPiece) tách từ thành subwords Decoder sử dụng SentencePiece có thể dùng tokenizer Cấu hình hệ thống thực nghiệm: Huấn luyện mơ hình học sâu địi hỏi phải có phần cứng máy tính mạnh, đặc biệt GPU RAM Máy tính cá nhân không đáp ứng Do đó luận văn chủ yếu chạy thực nghiệm Google Colaboratory Pro có cấu hình phần cứng mơi trường sau: • Hệ điều hành: Linux • RAM: 12.72 GB chế độ tiêu chuẩn 27.4 GB cho chế độ high-RAM • GPU: Nvidia Tesla P100 - 16GB Thời gian huấn luyện mơ hình: Thời gian huấn luyện hai lần liệu (bảng 4.1) thực hai giai đoạn thể qua bảng 4.2 35 Bảng 4.2: Thời gian huấn luyện mơ hình Giai đoạn Giai đoạn Giai đoạn Epochs 20 35 Lần Maxtokens 5000 5000 Giờ Epochs 19,17 43 20 30 Lần Maxtokens 10000 5000 Giờ 18,5165 36,518 4.3 Tiêu chí đánh giá Để đo lường tác vụ dịch máy hay hệ thống hội thoại hồn tồn khơng đơn giản tốn phân loại khác tốn phân loại có sẵn ground truth cho quan sát đầu ground truth cố định Tuy nhiên dịch máy hay hệ thống hội thoại, câu đầu vào có thể có nhiều dịch (câu hội thoại) khác Do đó không thể sử dụng nhãn để so khớp precision recall Dự định ban đầu đề tài sử dụng số BLEU score để làm sở đánh giá Tuy nhiên, với mô hình thực nghiệm nhóm tác giả Kenji Imamura Eiichiro Sumita đề cập báo [14] thì số BLEU score đạt cực kỳ thấp Cụ thể số BLEU score đề tài đạt 1,03 đo vào ngày 15/8/2020 huấn luyện lần (bảng 4.2) 2020-08-15 01:17:50.382212: I tensorflow/stream_executor/platform/default/dso_loader.cc:48] Successfully opened dynamic library libcudart.so.10.1 Namespace(ignore_case=False, order=4, ref='/content/drive/My Drive/chatbot/output/evaluation2.log.ref', sacrebleu=False, sentence_bleu=False, sys='/content/drive/My Drive/chatbot/output/evaluation2.log.sys') BLEU4 = 1.03, 10.5/2.1/0.7/0.4 (BP=0.645, ratio=0.695, syslen=1515831, reflen=2181023) BLEU score có tác dụng đánh giá điểm số cao kết dịch máy sát nghĩa với kết người dịch BLEU score tính tốn dựa 𝑃1, 𝑃2, 𝑃3, 𝑃4 theo lũy thừa số tự nhiên 𝑒: 𝑃1 + 𝑃2 + 𝑃3 + 𝑃4 𝐵𝐿𝐸𝑈 = 𝑒𝑥𝑝 ( ) Tuy nhiên thấy điểm hạn chế BLEU score đó câu ngắn thì xu hướng BLEU score cao Điều dễ hiểu vì câu ngắn thì số lượng n_gram ít đồng thời khả xuất chúng dịch cao Vì vậy, hệ thống hội thoại số BLEU có thể chưa phù hợp Gần đây, nhóm tác giả Richard Csaky, Patrik Purgai and Gabor Recski (2019) [15] đề xuất 17 evaluation metrics cho mô hình hội thoại Do giới hạn thời gian nên luận văn kịp thực 5/17 độ đo bao gồm: 36 • AVG: Đo độ nhúng từ Embedding average Lấy giá trị trung bình word vector response target Và tính giá trị trung bình độ tương tự cosine chúng • EXT: Đo độ nhúng từ Embedding extrema Lấy giá trị tuyệt đối lớn chiều word vector response target Và tính độ tương tự cosine chúng • GRE: Đo độ nhúng từ Embedding greedy Greedy matches response token target token (và ngược lại) dựa vào độ tương tự cosine embeddings chúng trung bình tổng điểm tất từ • D1 D2: Distinct-1 Distinct-2 đo tỉ số unigrams/bigrams với tổng số unigrams/bigrams tập responses Bảng 4.3: Kết đánh giá mơ hình BLEU4 #1 liệu #2 liệu Transformer tập DailyDialog Transformer tập Cornell Transformer tập Twitter AVG EXT GRE D1 D2 1,03 0,369 0,349 0,205 0,003 0,029 0,87 0,38 0,197 0,002 0,024 0,119 0,540 0,497 0,552 0,029 0,149 0,112 0,667 0,451 0,635 4,7e-4 1,0e-3 0,0693 0,643 0,395 0,591 2,1e-3 6,2e-3 0,36 Ba dòng cuối bảng 4.3 mang tính tham khảo, trích từ báo nhóm tác giả phép đo mô hình Transformer tập liệu hội thoại tiếng Anh số lượng epochs lớn Ngoài có số tiêu chí đánh giá sự hiệu chatbot khác như: • Retention Rate: Tỷ lệ người dùng sử dụng chatbot nhiều lần khoảng thời gian định • Use rate by open sessions: Số phiên làm việc hay sử dụng đồng thời với chatbot • Target audience session volume: Tỷ lệ thâm nhập đến nhóm đối tượng người dùng mục tiêu • Chatbot response volume: Số lượng câu hỏi mà chatbot trả lời • Chatbot conversation length: Độ dài trung bình tương tác chatbot người dùng • Usage distribution by hour: Thời gian ngày người dùng sử dụng chatbot nhiều 37 • Interaction rate: Số lượng tin nhắn trao đổi trung bình trị chuyện • Non-response rate: Số lần chatbot không trả lời câu hỏi, có thể thiếu nội dung hay chatbot gặp khó khăn việc hiểu ý người dùng • User feedback: Cảm nhận user chatbot (chỉ số thỏa mãn, số đánh giá) 4.4 Kết thực nghiệm Kết huấn luyện lần (bảng 4.2) tập liệu không giới hạn độ dài câu hỏi câu trả lời sau: Bảng 4.4: Kết thực nghiệm lần Input: xin chào Target: xin chào Result: xin chào Input: Target: em Result: Input: cô nói Target: savannah Result: Input: họ bắn Target: Result: Input: lúc đó cậu tuổi Target: mười sáu Result: tuổi Input: anh tuổi Target: ba mươi tám Result: mười bảy Input: thì lấy người đó Target: không lấy hồng tử Result: khơng phải hơm Input: ah bibilin vui gặp anh Target: quý cô helene không tham gia tối Result: vui gặp anh Input: anh không nhớ Target: biết cổ đâu Result: xin lỗi Input: hi roger Target: tớ lấy chút đồ uống Result: vui gặp anh Input: làm gì Target: cầu nguyện Result: ta làm gì 38 Input: Target: trai tội nghiệp ta Result: ta thần long đại hiệp Input: thì chúc sức khỏe Target: anh biết không đó điều mà nói Result: cám ơn cô nhiều Input: có nói tiếng anh không Target: hai người Result: không thưa ông Input: thằng nhỏ Target: vô phòng Result: nó không có Input: Target: mà Result: Input: sinh viên bị nhốt Target: không hiểu ý anh Result: cịn anh Input: đói Target: tìm Result: đói Input: cậu điều khiển trận đấu Target: thấy chưa gây ấn tượng Result: biết cách xử lý nó Input: thưa ngài Target: tất nhiên cảm kích anh Result: có thể giúp gì cho ngài Input: cô muốn ăn gì Target: ăn chay Result: không đói Input: cố gắng khỏe lên Target: người cần cô Result: cảm ơn Input: cô máy tính Target: cô phải nghe theo Result: người máy Input: tớ bên cậu Target: cùng Result: tớ Input: bố tìm Target: bố lo khơng thấy ngồi thư viện Result: không chứ Input: biết cô ta từ đâu không Target: chị thấy cô ta đứng ngồi Result: tơi khơng biết Input: cậu có súng mà 39 Target: sau cậu đó Result: tơi khơng có súng Input: ơng kết hôn mà Target: không quan trọng Result: chưa kết hôn Input: anh gì chứ Target: nhà phê bình sách Result: tơi huyền thoại Input: cởi quần nhảy vào Target: Result: không thể làm Input: tạm biệt cô Target: tạm biệt Result: tạm biệt Bảng 4.5: Kết thực nghiệm lần You> xin chào BOT> xin chào You> tơi Tín BOT> tơi có thể giúp gì cho cô You> thời tiết ngày hôm BOT> mưa nhiệt đới You> thích chơi đá banh BOT> tơi thích bóng chày You> anh thích phim BOT> You> cảm thấy đói bụng BOT> có thể giúp gì cho anh You> mua dùm phần cơm không BOT> không You> tạm biệt BOT> tạm biệt Như vậy, kết thể bảng 4.3 4.4 cho thấy mô hình luận văn có thể trả lời nhiều nội dung phù hợp ngữ cảnh câu thoại, với chất lượng khả quan, phụ thuộc vào chất lượng liệu hỏi đáp Với câu hỏi khó, mô hình đưa câu trả lời từ chối “Tôi không biết” hay câu trả lời chưa thõa đáng Tuy nhiên, mô hình cho thấy tín hiệu cải thiện chất lượng đáng kể, câu đáp trung thực hơn, bám sát ngữ nghĩa hơn, ví dụ trả lời số tuổi hỏi “bao nhiêu tuổi” đoạn hội thoại sau Input: lúc cậu tuổi Target: mười sáu Result: tuổi 40 TỔNG KẾT Kết luận Đề tài xây dựng hệ thống hội thoại cho tiếng Việt nhờ sử dụng mô hình Transformers kết hợp cùng với BERT encoder cho phép người dùng có thể tham gia trò chuyện với chủ đề bất kỳ, không thiết phải có mục tiêu rõ ràng hay ý định cụ thể Ưu điểm: Những ưu điểm đề tài thể hệ thống hội thoại: • Hệ thống có thể trò chuyện với chủ đề với chất lượng khả quan • Mơ hình đề xuất luận văn có thể áp dụng cho nhiều toán khác cho tiếng Việt như: dịch máy, hệ thống hỏi đáp, … Khuyết điểm: Tuy vậy, hệ thống khó tránh khỏi thiếu sót: • Chương trình chưa có giao diện cho người dùng cuối • Bộ liệu cịn nhiều từ tiếng Hoa, từ vơ nghĩa, từ dính liền, lỗi chính tả, cần làm liệu thêm nữa, ví dụ như: o Từ “đogn6” câu “đó khu vực đogn6 dân nhất” o Các từ dính liền câu “vàthịtrấnnày đãchờđợi đó để làm điều đó thời gian dài” • Chưa thực nghiệm nhiều thông số khác như: điều chỉnh độ dài câu hỏi câu trả lời • Hệ thống cịn đựa nhiều câu trả lời “Tôi không biết” phụ thuộc vào chất lượng liệu hỏi đáp Hướng phát triển tương lai Luận văn xây dựng mô hình đối thoại tự động cho tiếng Việt miền liệu mở lấy từ kho phụ đề mã mở OpenSubtitles 2018 Mặc dù đạt kết định, nhiên, nhiều điều cần làm để cải thiện hệ thống tốt hơn, để có thể sử dụng rộng rãi nhiều lĩnh vực thực tế Ngoài phương pháp Attention trình bày, phương pháp Attention khác Additive Attention, Multiplicative Attention, Keyvalue Attention nên tìm hiểu thử nghiệm Trong tương lai, hệ thống cần thử nghiệm mơ hình pre-trained models khác BERT PhoBERT, RoBERTa, XLMs…để làm encoder Hay mơ hình Transfomers gần GPT-2, GPT-3, … cần tìm hiểu để cải thiện kết 41 TÀI LIỆU THAM KHẢO [1] Hochreiter S and Schmidhuber J (1997), “Long short-term memory”, Neural Computation, pages 32 [2] Papineni K., Roukos S., Ward T., Zhu Z-J (2001), “BLEU: a method for Automatic Evaluation of Machine Translation”, Proceedings of the 20th Annual Meeting of the Association for Computational Linguistics (ACL), Philadelphia, pages [3] Ilya Sutskever, Oriol Vinyals, Quoc V Le (2014), “Sequence to Sequence Learning with Neural Networks”, arXiv:1409.3215, pages [4] Kyunghyun Cho, Bart Van Merrienboer, Caglar Gulcehre, Dzmitry Bahdanau, Fethi Bougares, Holger Schwenk, Yoshua Bengio (2014), “Learning Phrase Representations using RNN Encoder-Decoder for Statistical Machine Translation”, arXiv:1406.1078, pages 15 [5] Dzmitry Bahdanau, Kyunghyun Cho, Yoshua Bengio (2015), “Neural Machine Translation by Jointly Learning to Align and Translate”, arXiv:1409.0473, pages 15 [6] Minh-Thang Luong, Hieu Pham, Christopher D Manning (2015), “Effective Approaches to Attention-based Neural Machine Translation”, arXiv:1508.04025, pages 11 [7] Colin Raffel, Daniel P W Ellis (2015), “Feed-Forward Networks with Attention Can Solve Some Long-Term Memory Problems”, arXiv:1512.08756, pages [8] Oriol Vinyals, Quoc Le (2015), “A Neural Conversational Model”, arXiv:1506.05869, pages [9] Iulian V Serban, Alessandro Sordoni, Yoshua Bengio, Aaron Courville and Joelle Pineau (2016), “Building End-To-End Dialogue Systems Using Generative Hierarchical Neural Network Models”, arXiv:1507.04808, pages [10] Nhu Bao Vu (2016), “Xây dựng mô hình đối thoại cho tiếng Việt miền mở dựa vào phương pháp học chuỗi liên tiếp”, pages 65 [11] Pierre Lison, Jorg Tiedemann (2016), “OpenSubtitles2016: Extracting Large Parallel Corpora from Movie and TV Subtitles”, Department of Informatics, University of Oslo, pages [12] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Lukasz Kaiser, Illia Polosukhin (2017), “Attention Is All You Need”, arXiv:1706.03762, pages 15 42 [13] Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova (2018), “BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding”, arXiv: 1810.04805, pages 16 [14] Kenji Imamura and Eiichiro Sumita (2019), “Recycling a Pre-trained BERT Encoder for Neural Machine Translation”, National Institute of Information and Communications Technology, pages [15] Richard Csaky, Patrik Purgai and Gabor Recski (2019), “Improving Neural Conversational Models with Entropy-Based Data Filtering”, arXiv:1905.05471, pages 20 43 LÝ LỊCH TRÍCH NGANG Họ tên: NGUYỄN HỒNG TÍN Ngày, tháng, năm sinh: 29-01-1990 Nơi sinh: HỒ CHÍ MINH Địa liên lạc: 43/2 đường Quốc Lộ 1A, phường Thạnh Xuân, Quận 12, TP.HCM QUÁ TRÌNH ĐÀO TẠO 2008 – 2012: Học đại học Trường Đại Học Ngoại Ngữ Tin Học TP.HCM 2018 – Hiện tại: Học cao học Trường Đại Học Bách Khoa TP.HCM Q TRÌNH CƠNG TÁC 2012 – 2013: R&D Developer Vietbando 2013 – 2014: Frontend Developer Luxoft Vietnam 2014 – 2015: Software Engineer TMA Solutions 2015 – 2018: Senior Software Engineer Robert Bosch Engineering and Business Solutions Vietnam Company Limited 2018 – 2019: Senior Software Engineer KMS Technology 2019 – Now: Senior Software Engineer FPT Software 44 ... TÀI: Hội thoại Dialog tiếng Việt dùng phương pháp SEQTO -SEQ ATTENTION II NHIỆM VỤ VÀ NỘI DUNG: - Nghiên cứu phương pháp hội thoại với máy tính ngôn ngữ tự nhiên (văn bản), tập trung vào phương. .. kho liệu hội thoại cho tiếng Việt hạn chế Kết hợp phương pháp Sequence -to- sequence Attention, tác giả mong muốn tạo hệ thống hội thoại cho tiếng Việt hiệu Từ đó, có khả áp dụng vào to? ?n thực... mạng học sâu Deep Neural Networks, dựa phương pháp Sequence -to- sequence Attention Từ đó xây dựng mô hình hội thoại Dialog thử nghiệm đơn giản cho tiếng Việt sử dụng kho liệu phụ đề nguồn mở