Luận văn tốt nghiệp: Phát triển hệ thống chatbot trò chuyện nhiều tầng

Trường đại học

Đại học Bách Khoa

Người đăng

Ẩn danh

2021

75
0
0

Phí lưu trữ

30.000 VNĐ

Mục lục chi tiết

LỜI CAM ĐOAN

LỜI CẢM ƠN

TÓM TẮT

1. CHƯƠNG 1: TỔNG QUAN

1.1. Ví dụ minh hoạ

1.2. Mục tiêu và các giai đoạn thực hiện đề tài

1.2.1. Mục tiêu đề tài

1.2.2. Các giai đoạn thực hiện

1.2.3. Giới hạn đề tài

1.2.4. Cấu trúc luận văn

2. CHƯƠNG 2: KIẾN THỨC NỀN TẢNG

2.1. Tổng quan về chatbot

2.2. Phân loại chatbot

2.3. Các kỹ thuật thiết kế chatbot

2.3.1. Continuous Bag-of-Words Model

2.3.2. Continuous Skip-gram Model

2.3.3. Mạng nơ-ron nhân tạo - Artificial Neural Network (ANN)

2.3.3.1. Các công thức toán học
2.3.3.2. Khả năng của ANN
2.3.3.3. Một số hàm Activation
2.3.3.4. Huấn luyện ANN

2.3.4. Recurrent Neural Networks

2.3.4.1. Một số ứng dụng của RNN
2.3.4.1.1. One-to-one
2.3.4.1.2. Many-to-one
2.3.4.1.3. Many-to-many loại 1
2.3.4.1.4. Many-to-many loại 2
2.3.4.2. Long Short-Term Memory networks
2.3.4.3. Sequence to sequence model
2.3.4.4. Attention và Transformer
2.3.4.4.1. Giới thiệu cơ chế Attention
2.3.4.4.2. Mô hình Transformer
2.3.4.4.2.1. Encoder và Decoder
2.3.4.5. Mô hình Generative Pre-trained Transformer
2.3.4.6. Mô hình Bidirectional Encoders Representation from Transformer (BERT)

3. CHƯƠNG 3: CÁC CÔNG TRÌNH LIÊN QUAN

3.1. Chatbot tiếng Việt dựa trên mạng nơ-ron (A Neural Network Based Vietnamese Chatbot)

3.2. Mô hình BERT

3.3. Mô hình GPT-2

4. CHƯƠNG 4: TẬP DỮ LIỆU

4.1. Dữ liệu phụ đề phim tiếng Việt - OpenSubtitles

4.2. Tập dữ liệu trả lời câu hỏi

5. CHƯƠNG 5: ĐẶC TẢ VÀ HIỆN THỰC HỆ THỐNG

5.1. Thiết kế hệ thống

5.1.1. Tổng quan về kiến trúc hệ thống và chức năng

5.1.2. Sơ đồ tình huống sử dụng (Use Case Diagram)

5.1.3. Sơ đồ trình tự (Sequence Diagram)

5.2. Chi tiết các thành phần

5.2.1. Bộ xử lý tin nhắn cơ bản (General Chat Module)

5.2.2. Bộ trả lời câu hỏi (QA Module)

5.2.3. Bộ sinh ngôn ngữ tự nhiên (GPT Module)

5.2.4. Bộ phân loại tin nhắn (Message Classifier)

5.2.5. Bộ xử lý tin nhắn (Message Handler)

5.3. Vấn đề cần giải quyết

6. CHƯƠNG 6: CÔNG NGHỆ SỬ DỤNG

6.1. Ngôn ngữ lập trình

6.2. Nền tảng và thư viện

6.8. Amazon Web Services

7. CHƯƠNG 7: THÍ NGHIỆM VÀ ĐÁNH GIÁ

7.1. Xây dựng bộ trả lời câu hỏi

7.1.1. Mô hình trả lời câu hỏi áp dụng BERT

7.1.2. Hệ thống truy vấn đoạn văn cho mô hình trả lời câu hỏi

7.2. Xây dựng bộ phân loại tin nhắn

7.2.1. Phương pháp Pattern Matching

7.3. Xây dựng bộ trả lời các ý định cơ bản

7.4. Xây dựng mô hình ngôn ngữ

7.4.1. Môi trường huấn luyện mô hình

7.4.2. Mô hình ngôn ngữ dùng LSTM

7.4.3. Mô hình GPT-2

7.5. Kết quả và đánh giá

7.6. Xây dựng cơ sở dữ liệu lưu trữ đoạn hội thoại

7.7. Triển khai hệ thống chatbot

7.7.1. Thông số hệ thống

7.7.2. Sơ đồ triển khai phần mềm

7.8. Kiểm thử các thành phần của hệ thống chatbot

7.8.1. Kiểm thử thành phần xử lý câu nói thông thường và trả lời câu hỏi

7.8.2. Kiểm thử giao diện

7.9. Đánh giá của người dùng

8. CHƯƠNG 8: TỔNG KẾT

8.1. Các kết quả đạt được

8.2. Định hướng trong tương lai

Tài liệu tham khảo

Danh mục từ khoá

DANH MỤC HÌNH ẢNH

DANH MỤC BẢNG BIỂU

DANH MỤC CHỮ VIẾT TẮT

Tóm tắt

I. Tổng quan về hệ thống chatbot

Trong thời đại công nghệ 4.0, chatbot đã trở thành một phần quan trọng trong giao tiếp giữa con người và máy móc. Hệ thống chatbot không chỉ giúp tiết kiệm thời gian mà còn nâng cao trải nghiệm người dùng. Việc phát triển hệ thống chatbot có khả năng trò chuyện tự động với người dùng thông qua nhiều tầng tương tác là một thách thức lớn trong lĩnh vực công nghệ phần mềm. Các chatbot hiện nay thường được phân loại thành hai loại chính: mô hình truy vấn thông tin và mô hình sinh, mỗi loại có những ưu điểm và hạn chế riêng. Mô hình truy vấn thông tin thường dựa vào một tập hợp các câu trả lời đã được định nghĩa trước, trong khi mô hình sinh có khả năng tạo ra câu trả lời mới dựa trên ngữ cảnh của cuộc trò chuyện. Điều này cho thấy sự cần thiết của việc phát triển một hệ thống chatbot đa tầng, trong đó mỗi tầng có thể đảm nhận một chức năng cụ thể, từ xử lý ngôn ngữ tự nhiên đến sinh câu trả lời phù hợp.

1.1. Các loại mô hình chatbot

Mô hình chatbot có thể được phân chia thành hai loại chính: mô hình truy vấn thông tin (Retrieval-based) và mô hình sinh (Generative). Mô hình truy vấn thông tin sử dụng các câu trả lời đã được định nghĩa sẵn để trả lời câu hỏi của người dùng. Mô hình này phù hợp cho các tác vụ cụ thể như đặt vé hoặc trả lời câu hỏi thường gặp. Ngược lại, mô hình sinh có khả năng tạo ra câu trả lời mới, giúp cuộc trò chuyện trở nên tự nhiên hơn. Những tiến bộ trong công nghệ AIhọc máy đã giúp cải thiện khả năng của các chatbot sinh, cho phép chúng hiểu và phản hồi tốt hơn với ngữ cảnh của người dùng. Việc lựa chọn mô hình phù hợp là rất quan trọng để đảm bảo hiệu quả của hệ thống chatbot.

II. Kiến thức nền tảng về chatbot

Để phát triển một hệ thống chatbot hiệu quả, việc nắm vững các kiến thức nền tảng về xử lý ngôn ngữ tự nhiên là rất cần thiết. Các kỹ thuật như học máy, mạng nơ-ron nhân tạo (ANN), và mô hình chuyển tiếp (Transformer) đều đóng vai trò quan trọng trong việc tạo ra các chatbot hiện đại. Học máy cho phép chatbot học từ dữ liệu và cải thiện khả năng phản hồi theo thời gian. Các mô hình như BERTGPT đã chứng minh được hiệu quả trong việc tạo ra các câu trả lời tự nhiên và chính xác. Hệ thống chatbot cần được thiết kế với nhiều tầng, mỗi tầng sẽ xử lý một phần của cuộc hội thoại, từ việc nhận diện câu hỏi đến việc sinh ra câu trả lời. Điều này không chỉ giúp tăng cường độ chính xác mà còn cải thiện trải nghiệm người dùng.

2.1. Các kỹ thuật thiết kế chatbot

Các kỹ thuật thiết kế chatbot bao gồm việc sử dụng các mô hình học sâu như RNN, LSTM, và Transformer. Những mô hình này cho phép chatbot hiểu ngữ cảnh và tạo ra câu trả lời phù hợp. Việc áp dụng các phương pháp như trích xuất thông tinsinh văn bản cũng giúp mở rộng khả năng của chatbot. Hệ thống cần có khả năng xử lý ngôn ngữ tự nhiên một cách hiệu quả để có thể tương tác với người dùng một cách tự nhiên nhất. Hơn nữa, việc tích hợp các mô hình trả lời câu hỏi và các mô hình sinh sẽ giúp cho chatbot có thể đáp ứng được nhiều nhu cầu khác nhau của người dùng.

III. Phát triển hệ thống chatbot nhiều tầng

Phát triển một hệ thống chatbot nhiều tầng đòi hỏi sự kết hợp của nhiều công nghệ và phương pháp khác nhau. Mỗi tầng trong hệ thống sẽ đảm nhận một vai trò cụ thể, từ việc xử lý câu hỏi đến việc sinh câu trả lời. Điều này giúp cho chatbot có thể hoạt động hiệu quả hơn, đồng thời giảm thiểu rủi ro khi một tầng gặp sự cố. Hệ thống sẽ bao gồm các thành phần như bộ xử lý tin nhắn, bộ trả lời câu hỏi, và bộ sinh ngôn ngữ tự nhiên. Việc thiết kế các tầng độc lập cũng giúp cho việc mở rộng và bảo trì hệ thống trở nên dễ dàng hơn. Các công nghệ AIhọc máy sẽ được áp dụng để cải thiện khả năng tương tác của chatbot với người dùng.

3.1. Kiến trúc hệ thống chatbot

Kiến trúc của hệ thống chatbot nhiều tầng bao gồm các thành phần chính như bộ xử lý câu hỏi, bộ trả lời câu hỏi, và bộ sinh câu trả lời. Mỗi thành phần sẽ thực hiện một nhiệm vụ cụ thể và tương tác với nhau thông qua các API. Bộ xử lý câu hỏi sẽ nhận diện và phân loại câu hỏi từ người dùng, trong khi bộ trả lời câu hỏi sẽ tìm kiếm câu trả lời từ cơ sở dữ liệu hoặc sử dụng mô hình sinh để tạo ra câu trả lời. Hệ thống này không chỉ giúp nâng cao hiệu quả của chatbot mà còn cải thiện trải nghiệm người dùng thông qua việc cung cấp các câu trả lời chính xác và tự nhiên hơn.

09/01/2025

Luận văn tốt nghiệp mang tiêu đề "Phát triển hệ thống chatbot trò chuyện nhiều tầng" của tác giả Nguyễn Dương Minh Tâm Đạt, dưới sự hướng dẫn của PGS. Quản Thành Thơ và TS. Nguyễn Đức Dũng, nghiên cứu về việc xây dựng một hệ thống chatbot thông minh có khả năng tương tác đa tầng. Bài viết không chỉ đưa ra các khái niệm cơ bản về chatbot mà còn phân tích các kỹ thuật phát triển, từ đó giúp nâng cao khả năng giao tiếp tự động giữa người dùng và máy móc. Hệ thống này có thể được ứng dụng trong nhiều lĩnh vực như dịch vụ khách hàng, giáo dục và y tế, tạo ra trải nghiệm tương tác tốt hơn cho người dùng.

Nếu bạn quan tâm đến các khía cạnh khác của công nghệ thông tin và phần mềm, bạn có thể tham khảo thêm các tài liệu liên quan như "Xây Dựng Ứng Dụng Chatbot Tư Vấn Khách Hàng Sử Dụng Mô Hình Học Tăng Cường""Hệ thống hỏi đáp hỗ trợ học vụ". Những tài liệu này sẽ cung cấp thêm góc nhìn về việc áp dụng công nghệ chatbot trong các lĩnh vực khác nhau và mở rộng kiến thức của bạn về công nghệ phần mềm.