1. Trang chủ
  2. » Luận Văn - Báo Cáo

đề tài xây dựng hệ thống hỏi đáp và trả lời tự động bằng mô hình long short term memory

32 1 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP SEQUENCE-TO-SEQUENCE• Bước 5: Đánh giá và sử dụng mô hình... o Ta sử dụng thư viện padas để tạo các

Trang 1

Môn: Nhập Môn Trí Tuệ Nhân Tạo

Giảng viên: Ths Đặng Lê Khoa

ĐỀ TÀI: XÂY DỰNG HỆ THỐNG HỎI ĐÁP VÀ TRẢ LỜI TỰ ĐỘNG BẰNG MÔ HÌNH LONG SHORT-TERM MEMORY

BÁO CÁO ĐỒ ÁN CUỐI KỲ

Nhóm 7:

19200080 Nguyễn Nhựt Hào19200111 Nguyễn Quốc Khánh19200268 Nguyễn Thành Đạt

19200276 Trần Trung Dũng19200491 Phạm Hồng Lâm Thành

20200011 Tô Thế Bảo20200063 Đỗ Nhật Phát

Trang 2

NỘI DUNG

CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNGCHƯƠNG 2: CƠ SỞ LÝ THUYẾT

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP

BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP TO-SEQUENCE

SEQUENCE-CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Môn: Nhập Môn Trí Tuệ Nhân Tạo

Giảng viên: Ths Đặng Lê Khoa

Trang 3

CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG

1 GIỚI THIỆU

Bài toán xây dựng hệ thống trả lời tự động là một bài toán khó thuộc lĩnh vực xử lý ngôn ngữ tự nhiên Bởi vì tính nhập nhằng, đa nghĩa, đa ngữ cảnh cũa ngôn ngữ tự nhiên Bài toán đặt ra nhiều thách thức để phát hiện ra được câu trả lời phù hợp nhất, thông tin hữu ích nhất.

Trang 4

CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG

2 HỆ THỐNG ĐỐI THOẠI NGƯỜI VÀ MÁY.

• Ứng dụng:

Dịch vụ kỹ thuật

Công cụ học ngôn ngữGiải trí

Trang 5

CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG

2 HỆ THỐNG ĐỐI THOẠI NGƯỜI VÀ MÁY.

• Lý do chọn Python:

Linh hoạtDễ tiếp cậnHiệu quả

Trang 6

CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG

2 HỆ THỐNG ĐỐI THOẠI NGƯỜI VÀ MÁY.• Lợi ích của chatbot AI Python:

Mô phỏng cuộc trò chuyện giống con người

Hiểu và phản hồi vào đầu vào văn bản hoặc giọng nói bằng ngôn ngữ tự nhiên

Cung cấp dịch vụ hỗ trợ khách hàng mượt màTrả lời câu hỏi

Đưa ra các gợi ý về sản phẩmLuôn sẵn sàng

Xử lý nhiều câu hỏi của khách hàng cùng lúcĐưa ra câu trả lời ngay lập tức

Nâng cao trải nghiệm người dùng

Mở rộng dịch vụ khách hàng mà không tốn quá nhiều chi phí

Trang 7

Self-Learning Chatbots (Chatbot Tự Học)

Hybrid Chatbots (Chatbot Kết Hợp)

Hoạt động dựa trên các quy tắc được xác định trước.

Triển khai khó khăn hơn.

Kết hợp ưu điểm của Based và Self-Learning Chatbots.

Rule-Sử dụng quy tắc cho các cuộc trò chuyện đơn giản.

Sử dụng học máy cho các cuộc trò chuyện phức tạp.

Linh hoạt, thích nghi nhiều tình huống.

Lựa chọn phổ biến.

Trang 8

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

Khắc phục vấn đề phụ thuộc xa của RNN thông thường.Lưu trữ thông tin dài hạn mà

không cần huấn luyện.

Sử dụng các kết nối phản hồi, xử lý luồng dữ liệu.

Trang 9

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

ỨNG DỤNG:

Mô hình ngôn ngữ: Dự đoán từ tiếp theo, nhận dạng giọng nói, dịch máy,

sinh văn bản.

Phân tích cảm xúc: Phân loại cảm xúc của văn bản.

Nhận dạng thực thể được đặt tên (NER): Xác định, phân loại thực thể

trong văn bản.

Tóm tắt văn bản: Tạo bản tóm tắt ngắn gọn, giữ thông tin chính.

Dịch máy: Dịch văn bản từ ngôn ngữ này sang ngôn ngữ khác.

Dự đoán: Dự báo giá cổ phiếu, dự đoán thời tiết, dự đoán nhu cầu.

Nhận dạng giọng nói: Chuyển đổi ngôn ngữ nói thành văn bản.

Nhận dạng cử chỉ: Phân tích cử chỉ, chuyển động từ cảm biến.

Trang 10

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

Trang 11

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

Hình: Mô hình LSTM

Thành phần:

o Tế bào (Cell): Lưu trữ thông tin,

quyết định giá trị cập nhật cho trạng thái ẩn.

o Cổng quên (Forget Gate): Quyết

định thông tin nào từ trạng thái ẩn trước được lưu giữ.

o Cổng đầu vào (Input Gate):

Quyết định thông tin mới được thêm vào trạng thái ẩn.

o Cổng đầu ra (Output Gate):

Quyết định phần nào trạng thái ẩn được đưa ra làm đầu ra.

Luồng thông tin:

o Điều khiển bởi 3 cổng: quên, đầu vào, đầu ra.

o Tế bào ghi nhớ giá trị trong khoảng thời gian tùy ý.

CẤU TRÚC CHI TIẾT

Trang 12

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

oNút: kết hợp/sao chép dữ liệu.Giải thích sơ đồ:

o: giá trị đầu ra cổng quên tại thời điểm t.o: giá trị đầu ra cổng đầu vào tại thời

điểm t.

o: trạng thái ẩn tại thời điểm t.

o: giá trị đầu ra cổng đầu ra tại thời điểm t.

o: đầu ra LSTM tại thời điểm t.

CẤU TRÚC CHI TIẾT

oNút: kết hợp/sao chép dữ liệu.Giải thích sơ đồ:

o: giá trị đầu ra cổng quên tại thời điểm t.o: giá trị đầu ra cổng đầu vào tại thời

điểm t.

o: trạng thái ẩn tại thời điểm t.

o: giá trị đầu ra cổng đầu ra tại thời điểm t.

o: đầu ra LSTM tại thời điểm t.

CẤU TRÚC CHI TIẾT

Trang 13

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

Hình: Trạng thái tế bào là một dạng giống băng truyền

o Chìa khóa của LSTM là trạng thái tế bào (cell

state) - chính đường chạy thông ngang phía trên của sơ đồ hình vẽ.

o Trạng thái tế bào là một dạng giống như băng

truyền Nó chạy xuyên suốt tất cả các mắt xích (các nút mạng) và chỉ tương tác tuyến tính đôi chút Vì vậy mà các thông tin có thể dễ dàng truyền đi thông suốt mà không sợ bị thay đổi.

SƠ LƯỢC THUẬT TOÁN

Trang 14

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

Hình: Tầng sigmoid

o LSTM có khả năng bỏ đi hoặc

thêm vào các thông tin cần thiết cho trạng thái tế báo, chúng được điều chỉnh cẩn thận bởi các nhóm được gọi là cổng (gate).

o Các cổng là nơi sàng lọc thông tin đi qua nó, chúng được kết hợp bởi một tầng mạng sigmoid và một phép nhân.

o Tầng sigmoid của LSTM cho đầu ra trong khoảng [0, 1], biểu thị lượng thông tin được truyền qua Đầu ra 00 nghĩa là không truyền thông tin, còn đầu ra 11 nghĩa là truyền toàn bộ thông tin Một

LSTM có 3 cổng sigmoid để duy trì và điều hành trạng thái của tế

SƠ LƯỢC THUẬT TOÁN

Trang 15

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

o Bước đầu tiên của LSTM là quyết định thông tin nào cần bỏ từ

trạng thái tế bào, được thực hiện bởi "tầng cổng quên" (forget

gate layer) Tầng sigmoid này nhận đầu vào là ℎt-1 và xt, đưa ra kết quả trong khoảng [0, 1] cho mỗi phần tử của trạng thái Ct−1 Đầu ra 1 giữ lại toàn bộ thông tin, còn 0 bỏ toàn bộ

thông tin.

SƠ LƯỢC THUẬT TOÁN

Trang 16

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

o Bước tiếp theo là quyết định thông tin mới nào sẽ lưu vào

trạng thái tế bào, gồm hai phần Đầu tiên, tầng sigmoid "tầng

cổng vào" (input gate layer) quyết định giá trị nào sẽ được cập nhật Tiếp theo, tầng tanh tạo một véc-tơ giá trị mới () để thêm vào trạng thái Cuối cùng, hai giá trị này được kết hợp để cập nhật trạng thái.

SƠ LƯỢC THUẬT TOÁN

o Bước tiếp theo là quyết định thông tin mới nào sẽ lưu vào

trạng thái tế bào, gồm hai phần Đầu tiên, tầng sigmoid "tầng

cổng vào" (input gate layer) quyết định giá trị nào sẽ được cập nhật Tiếp theo, tầng tanh tạo một véc-tơ giá trị mới () để thêm vào trạng thái Cuối cùng, hai giá trị này được kết hợp để cập nhật trạng thái.

SƠ LƯỢC THUẬT TOÁN

Trang 17

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

o Cuối cùng, ta cần quyết định đầu ra là gì Đầu ra sẽ dựa trên trạng thái tế bào, nhưng được sàng lọc thêm Đầu tiên, tầng sigmoid quyết định phần nào của trạng thái tế bào sẽ được xuất ra Sau đó, trạng thái tế bào được đưa qua hàm tanh để giá trị nằm trong khoảng [−1, 1], rồi nhân với đầu ra của tầng sigmoid để tạo giá trị đầu ra

mong muốn.

SƠ LƯỢC THUẬT TOÁN

Trang 18

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP SEQUENCE-TO-SEQUENCE

• Bước 5: Đánh giá và sử dụng mô hình

Trang 19

o Ta sử dụng thư viện padas để tạo các cuộc đàm thoại giữa user_a và user_b, sau đó lưu data đã tạo vào

thành phần: tag, input, response

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP SEQUENCE-TO-SEQUENCE

Bước 1: Thu thập dữ liệu

Trang 20

o Nối hai câu trở lên nếu câu trả lời có từ hai câu trở lên.o Loại bỏ các loại dữ liệu không mong muốn.

o Nối thêm vào tất cả các câu trả lời.

o Tạo Tokenizer và tải toàn bộ từ vựng (câu hỏi + câu trả lời) vào đó.

o Tiến hành cập nhật từ vựng dựa trên danh sách các input.

o Vector hóa từng input của danh sách các input thành chuỗi các số nguyên (sequences).

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP SEQUENCE-TO-SEQUENCE

Bước 2: Tiền xử lý dữ liệu

Trang 21

o Tạo Embedding layer

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP SEQUENCE-TO-SEQUENCE

Bước 3: Xây dựng mô hình

embedding_layer_question = Embedding(VOCAB_SIZE,embeddings_dim

,input_length=maxlen_questions ,weights = [embedding_matrix] ,trainable=False)

embedding_layer_answer = Embedding(VOCAB_SIZE,embeddings_dim

,input_length=maxlen_answers ,weights = [embedding_matrix] ,trainable=False)

Trang 22

o Tạo mô hình Seq-to-seq LSTM:

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP SEQUENCE-TO-SEQUENCE

encoder_inputs = Input(shape = (maxlen_questions, ))

decoder_lstm = LSTM(300, return_state=True, return_sequences=True,dropout=0.05)

decoder_outputs , _ , _ = decoder_lstm(decoder_embedding, initial_state=encoder_states)decoder_dense = Dense(VOCAB_SIZE, activation='softmax')

output = decoder_dense(decoder_outputs)

model = Model([encoder_inputs, decoder_inputs], output)

model.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics=['accuracy'])

Bước 3: Xây dựng mô hình

Trang 23

o Biên dịch mô hình với các thiết lập thông số như: hàm loss là

‘categorical_crossentropy’, sử dụng thuật toán ‘adam’ để tối ưu hóa mô hình kèm theo chỉ số độ chính xác ‘accuracy’ để quan sát.

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP SEQUENCE-TO-SEQUENCE

Bước 3: Xây dựng mô hình

Trang 24

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP SEQUENCE-TO-SEQUENCE

Bước 3: Xây dựng mô hình

Trang 25

o Sau đó, chúng ta huấn luyện mô hình đã tạo với số lượng epochs là 100 và với hàm

categorical_crossentropy.loss Ta được kết quả huấn luyện mô hình với độ chính xác là 0.9437

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP SEQUENCE-TO-SEQUENCE

Bước 4: Huấn luyện mô hình

Trang 26

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP SEQUENCE-TO-SEQUENCE

o : Biểu đồ về độ chính xác của mô hình seq-to-seq LSTM

Bước 4: Huấn luyện mô hình

Trang 27

o Tạo inference models:

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP SEQUENCE-TO-SEQUENCE

Encoder inference model: Lấy câu hỏi làm input và output LSTM state (h và c).

Decoder inference model: Nhận 2 đầu vào, một là LSTM state (output của mô hình encoder), thứ hai là các câu trả lời

input sequence

Bước 4: Huấn luyện mô hình

Trang 28

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP SEQUENCE-TO-SEQUENCE

Bước 5: Đánh giá và sử dụng mô hình

o Lấy một câu hỏi làm input và dự đoán các value state bằng cách sử dụng enc_model.

o Đặt các value state trong LSTM của decoder.

o Tạo ra một sequence chứa phần tử.

o Nhập seqence này vào dec_model.

o Thay thế phần tử này bằng phần tử đã được dec_model dự đoán và cập nhật các value state.

o Thực hiện lặp đi lặp lại các bước trên cho đến khi đạt được tag hoặc độ dài câu trả lời đã đạt tối đa.

Trang 29

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI VÀ HỎI ĐÁP BẰNG MÔ HÌNH LSTM SỬ DỤNG PHƯƠNG PHÁP SEQUENCE-TO-SEQUENCE

Bước 5: Đánh giá và sử dụng mô hình

o Nhận xét: Hệ thống thực hiện được cuộc đàm thoại suôn sẻ dựa trên những gì đã học, tuy vẫn có khả năng dự đoán sai với từ khóa chưa có trong dữ liệu Dù vậy, kết quả cho thấy mô hình hoạt động hiệu quả và chính xác, có thể ứng dụng vào thực tế Tuy nhiên, bộ dữ liệu huấn luyện vẫn còn nhỏ, cần được nghiên cứu và bổ sung thêm để cung cấp câu trả lời tốt hơn, đáp ứng nhu cầu người dùng.

Trang 30

CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

o Bộ nhớ ngắn-dài hạn (LSTM) là một kiến trúc học sâu dựa trên mạng thần kinh hồi quy (RNN), hiệu quả trong lưu giữ và sử dụng thông tin dài hạn, vượt trội so với

RNN truyền thống LSTM được ứng dụng trong dự đoán chuỗi thời gian, dịch máy và nhận dạng giọng nói Trong hệ thống hỏi đáp tự động, mô hình Seq-to-Seq LSTM với kiến trúc Encoder-Decoder đã chứng minh khả năng chuyển đổi câu hỏi thành câu trả lời phù hợp, giữ lại ngữ cảnh và ý nghĩa thông tin đầu vào, đạt độ chính xác cao nhưng yêu cầu nhiều thời gian và tài nguyên hệ thống LSTM đã chứng minh khả năng trong xử lý ngôn ngữ tự nhiên và hệ thống đối thoại, tuy nhiên cần phần cứng mạnh và thời gian đào tạo dài, có thể cải thiện với công nghệ và kỹ thuật tối ưu hóa mô hình Cần bổ sung dữ liệu và cải thiện xử lý ngôn ngữ tiếng Việt.

Trang 31

CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

o Tối ưu hóa mô hình: Sử dụng các kỹ thuật tối ưu hóa như giảm độ phức tạp của mô hình, cải thiện thuật toán học tập để tăng tốc độ đào tạo và giảm yêu cầu tài

nghiên cứu tiếp theo, mô hình này sẽ ngày càng trở nên mạnh mẽ và linh hoạt hơn.

Ngày đăng: 25/06/2024, 16:01

Xem thêm:

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w