Bối cảnh và vấn đề nghiên cứu
Lĩnh vực trí tuệ nhân tạo (Artificial Intelligence – AI), đặc biệt là xử lý ngôn ngữ tự nhiên (Natural Language Processing – NLP) và xử lý tiếng nói (Speech Processing), đã có những bước tiến vượt bậc nhờ sự phát triển của học sâu (Deep Learning) và năng lực xử lý dữ liệu lớn (Big Data). Sự xuất hiện của các mô hình ngôn ngữ lớn như ChatGPT, LLaMA, hay BARD đã khẳng định tính hiệu quả của kiến trúc Transformer trong việc hiểu và sinh ngôn ngữ tự nhiên. Tuy nhiên, việc xây dựng một hệ thống đàm thoại tự động (chatbot/voicebot) tương tác đa phương thức qua cả văn bản và giọng nói đòi hỏi sự tích hợp đồng bộ của nhiều mô hình chuyên biệt: nhận dạng giọng nói, xử lý ngôn ngữ đàm thoại, và tổng hợp tiếng nói nhân tạo.
Đề tài khóa luận tốt nghiệp "Ứng dụng học sâu trong xây dựng chatbot" do sinh viên Nguyễn Đức Trí thực hiện dưới sự hướng dẫn của TS. Trần Nhật Quang tại Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh (thời gian thực hiện: 20/02/2023 – 29/05/2023) tập trung nghiên cứu, thiết kế, huấn luyện và tích hợp chuỗi mô hình học sâu hiện đại phục vụ giao tiếp tiếng nói và văn bản.
Mục tiêu nghiên cứu của đề tài được tác giả xác định cụ thể qua các nhiệm vụ sau:
- Tìm hiểu, phân tích chi tiết cơ sở lý thuyết và cấu trúc của 4 mô hình học sâu tiêu biểu: Generative Pre-Trained Transformer (GPT), Whisper, Tacotron2 và WaveGlow.
- Làm chủ cơ chế tập trung (Attention Mechanism) trong các mô hình GPT, Whisper, Tacotron2, và cơ chế chuyển đổi phân phối xác suất thông qua luồng chuẩn hóa (Normalizing Flow) trong mô hình WaveGlow.
- Nắm vững và thực nghiệm các kỹ thuật tiền xử lý dữ liệu dạng văn bản và tín hiệu âm thanh số.
- Lập trình thiết kế và huấn luyện các mô hình trên nền tảng framework PyTorch, đánh giá qua các chỉ số định lượng.
- Xây dựng ứng dụng web tích hợp hoàn chỉnh với backend Django và frontend Angular, cung cấp các phân hệ chức năng tương tác văn bản và giọng nói.
Đối tượng nghiên cứu của khóa luận là các kiến trúc mạng nơ-ron học sâu gồm: mô hình GPT dựa trên nghiên cứu của OpenAI về sinh ngôn ngữ; mô hình Whisper của OpenAI về nhận dạng tiếng nói tự động (ASR); mô hình Tacotron2 của Google về tổng hợp phổ âm thanh (TTS); mô hình WaveGlow của NVIDIA về sinh dạng sóng âm thanh (Vocoder).
Phạm vi nghiên cứu tập trung vào cấu trúc tầng giải mã (Decoder) của GPT, cấu trúc mã hóa - giải mã (Encoder - Decoder) của Whisper và Tacotron2, cơ chế tập trung nhạy vị trí (Location Sensitive Attention), cùng kỹ thuật Affine Coupling Layer kết hợp ma trận Jacobian trong mô hình luồng biến đổi WaveGlow. Về mặt ứng dụng, đề tài giới hạn việc triển khai hệ thống trên giao diện web hỗ trợ tương tác trực tiếp qua microphone và tải tệp âm thanh.
Cơ sở lý thuyết và phương pháp
Khóa luận thiết lập nền tảng lý thuyết dựa trên các trụ cột chính của học sâu và xử lý ngôn ngữ tự nhiên:
- Mạng nơ-ron hồi quy và cơ chế tập trung: Phân tích hạn chế của mạng RNN và LSTM truyền thống, bao gồm tốc độ tính toán tuần tự không thể song song hóa trên phần cứng đồ họa (GPU/TPU) và hiện tượng triệt tiêu đạo hàm (vanishing gradient) khi mô hình hóa các phụ thuộc xa. Từ đó, tác giả phân tích cơ chế tập trung đa tầng (Multi-Head Attention) và kỹ thuật tính toán Scaled-dot Product Attention trong kiến trúc Transformer.
- Mã hóa vị trí (Positional Encoding): Để duy trì thứ tự tuần tự của chuỗi mà không dùng mạng hồi quy, khóa luận trình bày cơ chế mã hóa vị trí dựa trên hàm sin và cos với các chu kỳ tần số khác nhau. Cơ chế này được chứng minh toán học dựa trên nguyên lý thay đổi bit tuần hoàn của mã nhị phân, đảm bảo vector vị trí có tính duy nhất và biểu diễn liên tục trong không gian thực.
- Kỹ thuật mặt nạ (Masking): Phân tích cơ chế hoạt động của mặt nạ đệm (Padding Mask) để loại bỏ các vị trí không có ý nghĩa toán học (giá trị 0 sau khi đệm) bằng cách gán trọng số âm vô cùng trước tầng Softmax, cùng mặt nạ che tương lai (Look-ahead Mask) sử dụng ma trận tam giác trên để ngăn tầng Decoder nhìn thấy trước ngữ cảnh của các từ tiếp theo.
- Lý thuyết mô hình sinh theo luồng (Flow-Based Generative Model): Khóa luận trình bày phương pháp luồng chuẩn hóa (Normalizing Flow). Bằng việc sử dụng định lý biến đổi biến số ngẫu nhiên qua các hàm khả nghịch, mô hình ánh xạ phân phối xác suất đơn giản (Gaussian) thành phân phối xác suất phức tạp của dữ liệu âm thanh thực tế thông qua việc tối đa hóa hàm hợp lý logarit (Maximum Log-Likelihood) kết hợp định thức ma trận đạo hàm riêng Jacobian.
Phương pháp nghiên cứu kết hợp giữa phân tích mô hình toán học và thực nghiệm kỹ thuật:
- Phương pháp nghiên cứu lý thuyết: Khảo sát, phân tích các bài báo học thuật chuẩn mực (Radford et al. về GPT và Whisper; Shen et al. về Tacotron2; Prenger et al. về WaveGlow).
- Phương pháp thực nghiệm: Lập trình hiện thực hóa các khối mạng từ đầu bằng PyTorch, tiền xử lý dữ liệu và cấu hình siêu tham số để theo dõi hàm mất mát (loss) qua các chu kỳ huấn luyện.
- Phương pháp đo lường: Đánh giá mô hình sinh văn bản bằng chỉ số BLEU (Bilingual Evaluation Understudy) và mô hình nhận dạng giọng nói bằng chỉ số tỷ lệ lỗi từ WER (Word Error Rate).
Nguồn dữ liệu và công cụ triển khai bao gồm:
- Dữ liệu dạng văn bản và tín hiệu âm thanh thu thập phục vụ huấn luyện tác vụ đàm thoại.
- Thư viện tiền xử lý: SpaCy và Regular Expression (xử lý văn bản, tách từ, làm sạch); Librosa (xử lý tín hiệu âm thanh số, biến đổi Fourier, trích xuất biểu đồ Log-Mel Spectrogram).
- Công cụ phát triển phần mềm: PyTorch (huấn luyện AI), Django Framework (xây dựng web API phía máy chủ), Angular Framework (xây dựng giao diện tương tác người dùng).
Thiết kế và triển khai hệ thống
Khóa luận xây dựng một hệ thống phần mềm hoàn chỉnh bao gồm tầng mô hình trí tuệ nhân tạo và tầng ứng dụng web đa phân hệ.
Kiến trúc tổng thể và tích hợp mô hình
Hệ thống tích hợp 4 mô hình học sâu theo một chu trình khép kín để tạo thành phân hệ Voicebot đàm thoại tự động:
- Thu nhận và chuyển đổi âm thanh (Whisper): Tín hiệu giọng nói từ người dùng được xử lý tín hiệu số thành biểu đồ phổ Log-Mel Spectrogram với 80 kênh tần số, sau đó đưa qua mô hình Whisper để giải mã thành văn bản câu hỏi.
- Xử lý ngôn ngữ và sinh phản hồi (GPT): Chuỗi văn bản sau khi nhận dạng được đưa vào mô hình ngôn ngữ GPT để phân tích ngữ cảnh và dự đoán từng token tiếp theo, tạo thành câu phản hồi dạng văn bản.
- Dự đoán phổ âm thanh (Tacotron2): Câu phản hồi dạng văn bản được chuyển thành chuỗi âm vị (phonemes), đưa vào mô hình Tacotron2 kết hợp cơ chế tập trung vị trí (Location Sensitive Attention) để tổng hợp thành biểu đồ phổ Log-Mel Spectrogram đặc trưng cho giọng nói.
- Khôi phục dạng sóng âm thanh (WaveGlow): Biểu đồ Log-Mel Spectrogram được đưa qua mô hình Vocoder WaveGlow để khôi phục lại dạng sóng âm thanh liên tục (dữ liệu audio) và phát lại cho người dùng qua trình duyệt.
Thiết kế kiến trúc phần mềm
Hệ thống được thiết kế theo mô hình tách biệt Frontend và Backend thông qua giao tiếp RESTful API:
- Phía máy chủ (Backend): Sử dụng framework Django (Python). Backend đảm nhận việc nạp trọng số các mô hình PyTorch, tiền xử lý dữ liệu đầu vào nhận từ client (lọc chuỗi, tính toán ma trận spectrogram từ file audio tải lên hoặc luồng ghi âm), thực thi quá trình suy luận (inference) và đóng gói kết quả phản hồi dưới dạng JSON hoặc tệp tin âm thanh.
- Phía người dùng (Frontend): Sử dụng framework Angular. Giao diện được xây dựng tương thích trên trình duyệt, tích hợp API MediaStream Recorder để thu âm trực tiếp giọng nói từ microphone máy tính, đồng thời cung cấp các biểu mẫu tải tệp âm thanh độc lập và khung hội thoại nhắn tin thời gian thực.
Nội dung chính theo từng chương
Chương 1: Cơ sở lý thuyết
Chương 1 hệ thống hóa các lý thuyết nền tảng từ học máy, học sâu đến xử lý ngôn ngữ tự nhiên. Tác giả đi sâu vào các cấu trúc mạng tuần tự: mô hình toán của RNN với nút xử lý trạng thái ẩn qua hàm kích hoạt tanh, hạn chế về bùng nổ và triệt tiêu đạo hàm; mô hình LSTM với 4 cổng chức năng (cổng quên $f_t$, cổng đầu vào $i_t$, cổng ẩn $\tilde{C}_t$, cổng đầu ra $o_t$) giúp kiểm soát thông tin dài hạn.
Nội dung trọng tâm của chương là việc trình bày chi tiết kiến trúc Transformer:
- Cơ chế Scaled-dot Product Attention với công thức toán học:
$$\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}} + \text{mask} \cdot (-\infty)\right)V$$
- Mô hình mạng truyền thẳng Position-wise Feed Forward Network (FFN) với hai phép biến đổi tuyến tính qua hàm kích hoạt ReLU:
$$\text{FFN}(x) = \max(0, xW_1 + b_1)W_2 + b_2$$
- Cơ chế kết nối tắt và chuẩn hóa (Residual Connection & Layer Normalization) giúp gradient truyền trực tiếp, chống hiện tượng quá khớp và ổn định quá trình tối ưu.
- Lý thuyết mô hình sinh luồng chuẩn hóa WaveGlow, giải thích chi tiết phép biến đổi Affine Coupling Layer, cấu trúc ma trận tam giác Jacobian và phương pháp tối ưu hóa hàm mất mát:
$$l = -\log(p_\theta(z)) - \sum_{i=1}^k \log|\det(J(f_i^{-1}(x_i)))|$$
Chương 1 cũng cung cấp cơ sở xử lý văn bản (phương pháp mã hóa từ điển, Tokenizer dạng từ và Byte Pair Encoding - BPE) cùng lý thuyết tín hiệu âm thanh (đồ thị dao động biên độ sóng, biến đổi Fourier, thang đo Mel và biểu đồ Log-Mel Spectrogram).
Chương 2: Thiết kế mô hình
Chương 2 mô tả chi tiết việc xây dựng cấu trúc nội tại của 4 mô hình học sâu bằng mã nguồn PyTorch:
- Mô hình GPT: Thiết kế theo cấu trúc Decoder-only Transformer. Tác giả lập trình khối Text & Position Embed kết hợp vector nhúng từ (Embedding) và vector vị trí (Positional Encoding). Khối GPT Decoder gồm nhiều tầng lặp lại của Masked Multi-Head Attention và Position-wise Feed-Forward Network, kết thúc bằng một tầng tuyến tính dự đoán xác suất token tiếp theo. Thiết lập bảng siêu tham số mô hình GPT (Bảng 3).
- Mô hình Whisper: Thiết kế theo cấu trúc Encoder - Decoder. Tầng Mel Extractor ở đầu vào Encoder gồm 2 lớp tích chập một chiều (Conv1D) kết hợp hàm kích hoạt GeLU để học các đặc trưng âm thanh từ tần số thấp đến cao. Khối Encoder sử dụng Sinusoidal Positional Encoding cố định, trong khi khối Decoder sử dụng Learned Positional Encoding để học ngữ cảnh văn bản. Thiết lập bảng siêu tham số mô hình Whisper (Bảng 4).
- Mô hình Tacotron2: Thiết kế khối Encoder gồm các lớp Conv1D kết hợp mạng hồi quy hai chiều (Bi-LSTM). Bộ giải mã (Decoder) tích hợp cơ chế tập trung nhạy vị trí (Location Sensitive Attention) sử dụng tích chập để tính toán độ tương quan ngữ cảnh dựa trên trọng số tập trung của bước thời gian trước đó. Khối Pre-Net đóng vai trò điều hòa dữ liệu đầu vào và khối Post-Net gồm 5 lớp tích chập hiệu chỉnh biểu đồ Log-Mel Spectrogram đầu ra. Thiết lập bảng siêu tham số mô hình Tacotron2 (Bảng 5).
- Mô hình WaveGlow: Hiện thực hóa các tầng tích chập khả nghịch $1 \times 1$ (Invertible $1 \times 1$ Convolution) để trộn các kênh dữ liệu, mạng WN (WaveNet-like network) với các khối tích chập giãn nở kết hợp cơ chế cổng phi tuyến tính gated
tanh và sigmoid. Thiết lập bảng siêu tham số mô hình WaveGlow (Bảng 6).
Chương 3: Huấn luyện mô hình
Chương 3 trình bày các thiết lập thực nghiệm, thông số huấn luyện và diễn biến hội tụ của các mô hình:
- Huấn luyện GPT: Mô hình được cấu hình các siêu tham số huấn luyện cụ thể (Bảng 7). Khóa luận theo dõi số lượng tham số huấn luyện của từng lớp mạng (Hình 74), đồ thị hàm mất mát trên tập huấn luyện (train loss) và tập kiểm định (validation loss) giảm đều qua các epoch (Hình 75), đồng thời đo lường chất lượng sinh ngôn ngữ bằng điểm số BLEU Score trên tập validation (Hình 76).
- Huấn luyện Whisper: Khóa luận ghi nhận cấu hình huấn luyện (Bảng 8), tổng hợp số lượng tham số các khối Encoder và Decoder (Hình 77). Quá trình tối ưu hàm mất mát Cross-Entropy được biểu diễn qua biểu đồ train loss và validation loss (Hình 78). Chất lượng nhận dạng tiếng nói được đánh giá khách quan qua chỉ số tỷ lệ lỗi từ WER (Word Error Rate) trên tập dữ liệu kiểm định (Hình 79).
- Huấn luyện Tacotron2: Cung cấp thông tin huấn luyện chi tiết (Bảng 9) và thống kê tham số (Hình 80). Đồ thị hàm mất mát kết hợp giữa sai số trung bình bình phương (MSE) của phổ Mel trước và sau Post-Net cùng mất mát phân loại điểm dừng (Stop token) được trình bày cụ thể (Hình 81).
- Huấn luyện WaveGlow: Cung cấp cấu hình huấn luyện mô hình luồng chuẩn hóa (Bảng 10) và số lượng tham số (Hình 82). Đồ thị hàm mất mát Log-Likelihood trên tập train và validation qua các bước lặp được phân tích chi tiết (Hình 83).
Chương 4: Ứng dụng
Chương 4 trình bày việc hiện thực hóa các mô hình thành sản phẩm phần mềm thực tế với 4 phân hệ chức năng:
- Phân hệ Chatbot (sử dụng GPT): Thiết kế luồng xử lý nhận chuỗi văn bản từ giao diện, mã hóa token, đưa qua mô hình GPT để suy luận chuỗi phản hồi và hiển thị trên giao diện nhắn tin đàm thoại trực quan.
- Phân hệ Chuyển giọng nói thành văn bản (sử dụng Whisper): Hiện thực 2 phương thức nhập liệu: thu âm trực tiếp qua microphone trên trình duyệt và tải tệp tin âm thanh có sẵn từ thiết bị người dùng. Hệ thống hiển thị kết quả văn bản giải mã tương ứng.
- Phân hệ Chuyển văn bản thành âm thanh (sử dụng Tacotron2 và WaveGlow): Người dùng nhập văn bản, hệ thống chuyển đổi qua biểu đồ Log-Mel Spectrogram nhờ Tacotron2, sau đó WaveGlow khôi phục tín hiệu sóng âm và cung cấp trình phát audio trực tiếp trên giao diện web.
- Phân hệ Voicebot tích hợp: Kết hợp tuần tự cả 4 mô hình: lắng nghe giọng nói người dùng qua micro -> Whisper chuyển thành văn bản -> GPT tạo câu trả lời -> Tacotron2 và WaveGlow chuyển câu trả lời thành giọng nói phát lại cho người dùng.
Chương này cũng tổng kết các kết quả đạt được, phân tích nhược điểm tồn tại và vạch ra hướng phát triển tiếp theo của đề tài.
Kết quả và đóng góp
Khóa luận đã hoàn thành toàn bộ các mục tiêu đặt ra từ lý thuyết đến xây dựng phần mềm thực nghiệm:
Kết quả kỹ thuật và tham số thực nghiệm
Dưới đây là bảng tổng hợp các thành phần mô hình học sâu được thiết kế, huấn luyện và tích hợp trong khóa luận:
| Mô hình |
Loại kiến trúc |
Vai trò chức năng trong hệ thống |
Phương thức / Độ đo đánh giá |
Công cụ / Thư viện phụ trợ |
| GPT |
Decoder-only Transformer |
Chatbot, sinh văn bản phản hồi đàm thoại |
Train Loss, Validation Loss, BLEU Score |
PyTorch, SpaCy, Regular Expression |
| Whisper |
Encoder - Decoder Transformer |
Nhận dạng giọng nói thành văn bản (Speech-to-Text) |
Train Loss, Validation Loss, WER Score |
PyTorch, Librosa (Mel Extractor) |
| Tacotron2 |
Encoder - Decoder (Conv1D + Bi-LSTM) |
Chuyển văn bản thành biểu đồ Log-Mel Spectrogram (TTS) |
Train Loss (MSE Mel + BCE Stop Token), Val Loss |
PyTorch, Location Sensitive Attention |
| WaveGlow |
Normalizing Flow (Generative Model) |
Bộ tổng hợp giọng nói Vocoder (Mel-to-Audio Wave) |
Log-Likelihood Loss, Validation Loss |
PyTorch, Invertible 1x1 Conv, WN Block |
Hệ thống ứng dụng web được triển khai hoàn chỉnh gồm 4 phân hệ chức năng độc lập và tích hợp, đáp ứng đầy đủ tương tác đa phương thức qua môi trường mạng nội bộ.
Đóng góp của đề tài
- Hiện thực hóa kiến trúc học sâu chuẩn mực từ đầu: Thay vì sử dụng các API đóng gói sẵn từ các nhà cung cấp dịch vụ đám mây, tác giả đã tự lập trình chi tiết cấu trúc toán học của các khối mạng (Multi-Head Attention, Sinusoidal/Learned Positional Encoding, Invertible 1x1 Convolution, WN network) bằng framework PyTorch.
- Làm chủ pipeline xử lý đa phương thức: Xây dựng quy trình tiền xử lý dữ liệu phức tạp từ dạng chuỗi văn bản (tokenization, padding mask, look-ahead mask) đến tín hiệu âm thanh số (STFT, Mel filterbank, chuẩn hóa Log-Mel Spectrogram).
- Tích hợp hệ thống ứng dụng khép kín: Hiện thực hóa thành công chuỗi mô hình kết hợp (Whisper $\rightarrow$ GPT $\rightarrow$ Tacotron2 $\rightarrow$ WaveGlow) trên nền tảng ứng dụng web hiện đại (Django - Angular), chứng minh khả năng đưa các mô hình học sâu nghiên cứu vào sản phẩm phần mềm thực tế.
Hạn chế và hướng nghiên cứu tiếp
Khóa luận tự chỉ ra một số hạn chế kỹ thuật trong quá trình thực hiện:
- Độ trễ hệ thống: Khi vận hành phân hệ Voicebot tích hợp, việc thực thi tuần tự cả 4 mô hình học sâu quy mô lớn trên luồng xử lý tạo ra độ trễ thời gian (latency) nhất định, chưa đạt trạng thái phản hồi tức thì theo thời gian thực (real-time).
- Tài nguyên phần cứng: Do giới hạn về năng lực tính toán phần cứng máy tính trong thời gian làm đồ án, kích thước các siêu tham số mô hình và tập dữ liệu huấn luyện thử nghiệm chưa đạt đến quy mô công nghiệp lớn.
- Độ tự nhiên của âm thanh: Chất lượng giọng nói tổng hợp trong một số trường hợp vẫn còn âm sắc nhân tạo, phụ thuộc chặt chẽ vào dữ liệu mẫu ban đầu.
Các hướng phát triển tiếp theo được đề xuất trong văn bản:
- Nghiên cứu tối ưu hóa kích thước mô hình (nén mô hình, lượng tử hóa trọng số) để tăng tốc độ suy luận, giảm thiểu độ trễ cho phân hệ Voicebot.
- Mở rộng tập dữ liệu huấn luyện đa dạng hơn về ngữ điệu, vùng miền và ngữ cảnh đàm thoại.
- Nghiên cứu tích hợp hệ thống phần mềm với các vi điều khiển và thiết bị phần cứng để xây dựng mô hình robot hoặc trợ lý ảo vật lý hoàn chỉnh.
Giá trị tham khảo
Báo cáo khóa luận là tài liệu tham khảo có giá trị học thuật và kỹ thuật chuyên sâu cho:
- Sinh viên và học viên cao học thuộc các ngành Công nghệ Thông tin, Khoa học Máy tính, Trí tuệ Nhân tạo thực hiện đồ án, luận văn liên quan đến Xử lý ngôn ngữ tự nhiên (NLP), Nhận dạng tiếng nói (ASR) và Tổng hợp tiếng nói (TTS).
- Các lập trình viên và nhà nghiên cứu muốn tìm hiểu chi tiết cách hiện thực hóa cấu trúc toán học của kiến trúc Transformer, cơ chế mã hóa vị trí, và mô hình luồng chuẩn hóa (Normalizing Flow) từ mức mã nguồn PyTorch thuần túy.
- Kỹ sư phần mềm cần tham khảo kiến trúc tích hợp hệ thống đa mô hình học sâu phức tạp vào ứng dụng web thực tế sử dụng cặp framework Django và Angular.
Câu hỏi thường gặp
1. Tại sao cơ chế Positional Encoding trong mô hình Transformer lại được tác giả giải thích dựa trên chu kỳ thay đổi bit của số nhị phân?
Khóa luận giải thích rằng trong biểu diễn nhị phân, các bit thay đổi luân phiên giữa 0 và 1 theo các chu kỳ tuần hoàn (bit thấp có chu kỳ 1, bit tiếp theo có chu kỳ 2, 4, 8...). Tuy nhiên, việc sử dụng trực tiếp chuỗi bit rời rạc sẽ gây lãng phí bộ nhớ và khó biểu diễn tính liên tục. Tác giả chứng minh việc sử dụng hàm số thực liên tục sin (cho vị trí chẵn) và cos (cho vị trí lẻ) với chu kỳ tăng dần theo cấp số nhân từ $2\pi$ đến $10000 \times 2\pi$ mô phỏng chính xác nguyên lý thay đổi bit này, tạo ra các vector vị trí duy nhất cho từng từ mà không làm gián đoạn không gian biểu diễn liên tục.
2. Thành phần Mel Extractor trong mô hình Whisper có cấu trúc và nhiệm vụ gì?
Theo thiết kế của mô hình Whisper trong khóa luận, Mel Extractor là lớp tiền xử lý đầu vào của khối Encoder, nhận dữ liệu biểu đồ phổ Log-Mel Spectrogram. Khối này bao gồm 2 lớp tích chập một chiều (Conv1D) kết hợp với hàm kích hoạt phi tuyến GeLU ngay sau mỗi lớp. Lớp Conv1D thứ nhất có nhiệm vụ học các đặc trưng cấp thấp của âm thanh như tần số và thời gian; lớp Conv1D thứ hai tiếp tục trích xuất các đặc trưng biểu diễn âm thanh ở cấp độ cao hơn trước khi đưa vào các tầng Encoder Transformer.
3. Kỹ thuật Location Sensitive Attention trong mô hình Tacotron2 giải quyết vấn đề gì khác biệt so với Attention thông thường?
Trong bài toán tổng hợp tiếng nói (Text-to-Speech), việc phát âm các từ trong câu phải diễn ra tuần tự và có tính liên tục theo thời gian, tránh việc mô hình nhảy cóc từ hoặc lặp lại từ. Khóa luận nêu rõ Location Sensitive Attention là sự mở rộng của cơ chế tập trung, trong đó các trọng số tập trung tại bước thời gian hiện tại không chỉ phụ thuộc vào trạng thái ẩn của bộ giải mã mà còn phụ thuộc vào các trọng số tập trung của những bước thời gian trước đó (thông qua việc đưa lịch sử tập trung qua các phép tích chập). Điều này giúp mô hình nhận biết được vị trí đang đọc trên chuỗi văn bản đầu vào, duy trì tính tuần tự ổn định cho giọng nói sinh ra.
4. Mô hình WaveGlow sử dụng nguyên lý nào để chuyển đổi từ Log-Mel Spectrogram sang dạng sóng âm thanh?
WaveGlow là một mô hình sinh dữ liệu theo luồng (Flow-based model) sử dụng phương pháp Normalizing Flow. Thay vì sinh mẫu tuần tự chậm chạp như WaveNet, WaveGlow học cách ánh xạ một phân phối xác suất đơn giản (phân phối chuẩn Gaussian) thành phân phối xác suất phức tạp của sóng âm thanh thực tế. Quá trình này được thực hiện thông qua một chuỗi các hàm biến đổi khả nghịch gồm tầng tích chập $1 \times 1$ khả nghịch (Invertible $1 \times 1$ Convolution) và tầng kết hợp Affine (Affine Coupling Layer) có điều kiện dựa trên biểu đồ Log-Mel Spectrogram.
5. Cấu trúc mặt nạ Look-ahead Mask trong khối Decoder của Transformer được xây dựng bằng thuật toán nào?
Khóa luận chỉ ra rằng Look-ahead Mask không chỉ đơn thuần là một ma trận tam giác trên để che các từ phía sau trong câu, mà còn phải xử lý đồng thời các giá trị đệm vô nghĩa (padding). Thuật toán được tác giả triển khai là: tạo ma trận tam giác trên chứa các giá trị 1 ở nửa trên đường chéo chính, tạo ma trận Padding Mask chứa giá trị 1 tại các vị trí đệm 0; sau đó lấy giá trị lớn nhất (hàm maximum) theo từng vị trí giữa hai ma trận này. Ma trận kết quả được nhân với số âm vô cùng ($-\infty$) rồi cộng vào ma trận trọng số trước khi tính Softmax, giúp mô hình vừa học tuần tự ngữ cảnh vừa bỏ qua hoàn toàn các token đệm.
Kết luận
Khóa luận tốt nghiệp "Ứng dụng học sâu trong xây dựng chatbot" của tác giả Nguyễn Đức Trí là một công trình nghiên cứu kỹ thuật và phát triển phần mềm có hàm lượng chuyên môn cao trong lĩnh vực Trí tuệ nhân tạo. Tác giả đã phân tích thấu đáo các mô hình học sâu hiện đại hàng đầu (GPT, Whisper, Tacotron2, WaveGlow) từ cơ sở toán học đến việc lập trình chi tiết cấu trúc mạng bằng PyTorch. Toàn bộ chuỗi mô hình nhận dạng giọng nói, xử lý ngôn ngữ và tổng hợp âm thanh đã được tích hợp thành công trên nền tảng ứng dụng web Django - Angular, tạo thành một hệ thống Voicebot đa phương thức hoàn chỉnh. Công trình là tài liệu tham khảo chuẩn mực, cung cấp nhiều giá trị thực tiễn cho cộng đồng nghiên cứu và sinh viên chuyên ngành Khoa học Máy tính.