Bối cảnh và vấn đề nghiên cứu

Trong lĩnh vực Xử lý ngôn ngữ tự nhiên (NLP), tác vụ Đọc hiểu tự động (Machine Reading Comprehension - MRC) và Hỏi đáp tự động (Question Answering - QA) đóng vai trò nền tảng trong việc truy xuất và rút trích thông tin. Phần lớn các bộ dữ liệu đọc hiểu tiếng Việt hiện có (như UIT-ViQuAD, ViNewsQA, VIMMRC) đều tập trung vào văn bản viết chính quy từ bách khoa toàn thư Wikipedia, sách giáo khoa hoặc báo điện tử. Các văn bản này có cấu trúc ngữ pháp chặt chẽ, từ ngữ chuẩn mực và định dạng rõ ràng. Tuy nhiên, sự bùng nổ của các nền tảng mạng xã hội đa phương tiện như YouTube kéo theo nhu cầu trích xuất thông tin trực tiếp từ các video dài, nơi dữ liệu tồn tại dưới dạng ngôn ngữ nói (spoken language).

Ngôn ngữ nói trong các video thực tế đặt ra nhiều thách thức lớn cho các mô hình ngôn ngữ:

  • Ngữ âm và phương ngữ: Tiếng Việt có ba vùng phương ngữ chính (Bắc, Trung, Nam) cùng sự biến thiên phát âm phong phú, gây khó khăn cho các hệ thống nhận dạng giọng nói tự động (ASR).
  • Chất lượng âm thanh: Tạp âm từ môi trường ngoại cảnh (tiếng ồn đường phố, tiếng gió trong video du lịch) và nhạc nền lớn làm giảm độ chính xác của bản gỡ băng (transcript).
  • Định dạng của transcript: Văn bản transcript từ YouTube không có dấu câu để ngắt câu hợp lý, phân chia văn bản theo các mốc thời gian nhỏ và thiếu tính nhất quán trong việc viết hoa các thực thể tên riêng.
  • Độ dài transcript: Các video dài chứa chuỗi hội thoại hoặc độc thoại liên tục, đòi hỏi mô hình phải xử lý văn cảnh dài và lọc bỏ nhiều thông tin không liên quan.
  • Hiện tượng nhập nhằng trong tiếng Việt: Hiện tượng đồng âm, đa nghĩa của từ ngữ (ví dụ từ "bò" vừa là danh từ vừa là động từ) gây khó khăn cho việc định vị ngữ nghĩa.
  • Khả năng diễn đạt của người nói: Tình trạng nói lắp, nói quá nhanh, dùng từ đệm ngắt quãng làm xuất hiện nhiều từ ngữ trùng lặp hoặc văn bản gỡ băng bị sai lệch.

Khóa luận xác định các mục tiêu và nhiệm vụ nghiên cứu cụ thể:

  1. Xây dựng bộ dữ liệu đọc hiểu tự động dạng trích xuất (Extractive MRC) đầu tiên trên ngữ liệu ngôn ngữ nói tiếng Việt thu thập từ YouTube mang tên VlogQA.
  2. Xây dựng quy trình gán nhãn, bộ hướng dẫn chi tiết và kiểm định chất lượng bộ dữ liệu thông qua các độ đo đồng thuận giữa những người gán nhãn (Inter-rater agreement) và hiệu năng con người (Human performance).
  3. Đánh giá thực nghiệm hiệu năng của các mô hình ngôn ngữ dựa trên kiến trúc Transformer (cả đa ngôn ngữ và đơn ngôn ngữ) trên bộ dữ liệu đề xuất, kết hợp thực nghiệm huấn luyện chéo (cross-dataset) với bộ dữ liệu văn bản viết UIT-ViQuAD.
  4. Xây dựng ứng dụng web demo hỗ trợ tương tác hỏi đáp trực tiếp trên dữ liệu transcript video YouTube.

Đối tượng nghiên cứu của đề tài là các văn bản transcript tiếng Việt trích xuất từ 1.230 video vlog YouTube thuộc hai chủ đề Ẩm thực (Food) và Du lịch (Travel). Phạm vi thời gian và dữ liệu được thu thập từ các kênh YouTube tiếng Việt phổ biến có lượng người theo dõi trên 200.000 lượt (tính đến thời điểm thực hiện năm 2023).

Cơ sở lý thuyết và phương pháp nghiên cứu

Nghiên cứu định nghĩa bài toán dưới dạng Đọc hiểu trích xuất (Extractive Question Answering). Với mỗi văn cảnh transcript $t$ và một câu hỏi $q$, mô hình có nhiệm vụ xác định vị trí bắt đầu và kết thúc của chuỗi ký tự câu trả lời $a$ nằm nguyên vẹn trong $t$ (bộ ba dữ liệu $(q, t, a)$).

Các cơ sở lý thuyết và mô hình ngôn ngữ được sử dụng gồm:

  • Kiến trúc Transformer: Cơ chế tự chú ý (Self-attention) cho phép mô hình nắm bắt quan hệ ngữ cảnh hai chiều giữa các từ trong văn bản dài.
  • Mô hình đa ngôn ngữ (Multilingual models): mBERT (huấn luyện trên 104 ngôn ngữ Wikipedia với mục tiêu Masked Language Modeling - MLM) và XLM-RoBERTa (huấn luyện trên tập dữ liệu Common Crawl đa ngôn ngữ quy mô lớn).
  • Mô hình đơn ngôn ngữ (Monolingual models): ALBERT (kiến trúc rút gọn tham số), Longformer (cơ chế chú ý cục bộ mở rộng cho văn bản dài) trên tiếng Anh, và PhoBERT (mô hình RoBERTa tiền huấn luyện chuyên biệt cho tiếng Việt phát triển bởi VinAI Research).
  • Công cụ phân tách từ tiếng Việt: Sử dụng thư viện pyvi để thực hiện tokenization ở cấp độ từ phức.

Phương pháp xây dựng ngữ liệu và đánh giá thực nghiệm:

  • Thu thập dữ liệu: Sử dụng thư viện youtube-transcript-api trong môi trường Python để trích xuất phụ đề tự động và phụ đề thủ công từ YouTube.
  • Quy trình gán nhãn 4 bước: (1) Thu thập transcript; (2) Sinh cặp câu hỏi-đáp; (3) Hiệu chỉnh bộ dữ liệu (tự đánh giá, thống nhất quy tắc và đánh giá chéo); (4) Kiểm nghiệm bộ dữ liệu.
  • Độ đo đánh giá độ đồng thuận giữa người gán nhãn: Thống kê Cohen's Kappa, Fleiss' Kappa, Hệ số Krippendorff's Alpha, cùng các độ đo trùng khớp chuỗi ROUGE (ROUGE-N, ROUGE-L).
  • Độ đo đánh giá mô hình đọc hiểu: Độ khớp chính xác hoàn toàn (Exact Match - EM) và Điểm F1 (F1-score).

Nội dung chính theo từng chương

Chương 1. Tổng quan đề tài

Chương 1 phân tích động lực nghiên cứu bắt nguồn từ nhu cầu tìm kiếm, trích xuất thông tin trên các nền tảng video trực tuyến. Tác giả trình bày chi tiết 6 thách thức kỹ thuật của ngôn ngữ nói tiếng Việt đối với các hệ thống NLP truyền thống (ngữ âm, tạp âm, định dạng transcript, độ dài, sự nhập nhằng ngữ nghĩa và cách diễn đạt). Đồng thời, chương này phân loại các dạng thức QA (Extractive QA, Open Generative QA, Closed Generative QA, Closed Domain và Open Domain) và xác định phạm vi của đề tài là Extractive QA trên miền dữ liệu mở hạn chế theo chủ đề.

Chương 2. Giới thiệu

Chương 2 trình bày bối cảnh chung của bài toán đọc hiểu máy trên thế giới và tại Việt Nam. Tác giả nêu bật vai trò của nền tảng YouTube (nền tảng video lớn thứ hai thế giới và Việt Nam với khoảng 2,5 tỷ người dùng hàng tháng) và giải thích lý do lựa chọn hai chủ đề Du lịch và Ẩm thực: các video này phản ánh chân thực các cuộc hội thoại đời thường, cách nói tự nhiên không theo kịch bản có sẵn, bảo lưu trọn vẹn đặc trưng phương ngữ và từ ngữ khẩu ngữ.

Chương 3. Những công trình nghiên cứu liên quan

Chương 3 tổng quan các bộ dữ liệu đọc hiểu tiếng Việt tiêu biểu: UIT-ViQuAD 1.0 (23.074 câu hỏi trích xuất từ Wikipedia), UIT-ViQuAD 2.0 (bổ sung 9.217 câu hỏi không có câu trả lời), UIT-ViWikiQA (phát hiện câu), ViNewsQA (22.057 câu hỏi y tế từ VnExpress), VIMMRC 1.0 và 2.0 (trắc nghiệm từ sách giáo khoa Ngữ văn), UIT-ViCoV19QA (hỏi đáp COVID-19) và VIMQA (hỏi đáp đa bước multi-hop). Chương này cũng khảo sát các tập dữ liệu tiếng nói quốc tế như Spoken SQuAD (tiếng Anh, tạo bằng công cụ Text-to-Speech) và ODSQA (tiếng Trung, ghi âm bởi người thật), từ đó chỉ ra khoảng trống nghiên cứu về dữ liệu nói tự nhiên trong tiếng Việt.

Chương 4. Bộ dữ liệu cho tác vụ đọc hiểu trên dữ liệu nói

Chương 4 chi tiết hóa quy trình 4 giai đoạn xây dựng tập dữ liệu VlogQA:

  • Tiêu chí nguồn kênh: Lựa chọn các kênh YouTube có trên 200.000 lượt theo dõi. Chủ đề Du lịch gồm Challenge Me (4,02M), Khoai Lang Thang (2,12M), FOHOKA Xê Dịch (805K), Nếm TV (544K), Tung Tăng TV (259K). Chủ đề Ẩm thực gồm Món Ăn Ngon (1,99M), Vành Khuyên Lê (1,45M), Cô Ba Bình Dương (1,49M), NathaFood (845K), Nhamtran FV (397K).
  • Quy tắc gán nhãn: Mỗi người gán nhãn đọc hiểu transcript và đặt tối thiểu 5 câu hỏi; câu trả lời là một cụm từ liên tục trong văn cảnh; khuyến khích đa dạng hóa các dạng câu hỏi (Cái gì, Khi nào, Ở đâu, Như thế nào, Bao nhiêu, Tại sao) và sử dụng từ đồng nghĩa.
  • Kiểm nghiệm: Đánh giá độ đồng thuận trên tập 100 câu hỏi ngẫu nhiên và thiết lập mức hiệu năng con người (Human Performance) trên tập kiểm thử độc lập.

Chương 5. Xử lí và phân tích bộ dữ liệu

Chương 5 cung cấp số liệu thống kê chi tiết về cấu trúc bộ dữ liệu VlogQA (10.076 câu hỏi từ 1.230 transcript; chia theo tỷ lệ 8:1:1 thành 8.047 câu Train, 1.017 câu Dev, 1.012 câu Test). Kích thước tập từ vựng đạt 39.211 từ. So sánh với UIT-ViQuAD, VlogQA có 25.564 từ vựng mới không trùng lặp, chứa nhiều khẩu ngữ đặc trưng như "ừ", "nhé", "nè", "mình", "rất là". Thời lượng video trung bình là 1.272,95 giây (~21,22 phút). Phân bố loại câu hỏi gồm: What (47,82%), How (32,57%, trong đó How-quantity chiếm 25,59% và How-quality chiếm 6,98%), Where, When, Who, Why và Others. Điểm đồng thuận Cohen's Kappa, Fleiss' Kappa và Krippendorff's Alpha đều đạt xấp xỉ 0,44.

Chương 6. Mô hình ngôn ngữ

Chương 6 trình bày nền tảng lý thuyết và cơ chế hoạt động của các mô hình học sâu được áp dụng: hai mô hình đa ngôn ngữ (mBERT, XLM-RoBERTa) và ba mô hình đơn ngôn ngữ (ALBERT, Longformer cho tiếng Anh; PhoBERT cho tiếng Việt). Tác giả phân tích ưu điểm chia sẻ trọng số của mô hình đa ngôn ngữ đối với ngôn ngữ có tài nguyên hạn chế, cũng như điểm nghẽn của các mô hình tiền huấn luyện trên văn bản chuẩn mực khi xử lý dữ liệu nói chứa nhiễu.

Chương 7. Kết quả thực nghiệm

Chương 7 trình bày thiết lập môi trường huấn luyện trên Google Colab (GPU Tesla T4, batch size 8, 10 epochs, max_length 512, riêng PhoBERT max_length 256). Trên tập Test của VlogQA, mô hình XLM-R_large đạt hiệu năng cao nhất với EM = 53,97% và F1 = 75,34%, vượt qua hiệu năng con người ở độ đo EM (48,97%) và tiệm cận ở F1 (76,25%). Kết quả huấn luyện chéo trên UIT-ViQuAD cho thấy sự sụt giảm mạnh về hiệu năng khi chuyển vùng ngữ liệu. Phân tích lỗi chỉ ra câu hỏi Where và How-quantity có tỷ lệ lỗi EM thấp nhất (33,96% và 34,93%), trong khi câu hỏi Why có tỷ lệ lỗi cao nhất (74,70%).

Chương 8. Ứng dụng web cho mô hình ngôn ngữ

Chương 8 giới thiệu thiết kế và cấu trúc giao diện ứng dụng web hỗ trợ song ngữ (tiếng Việt và tiếng Anh). Hệ thống tích hợp mô hình XLM-RoBERTa đã tinh chỉnh để thực hiện suy luận câu trả lời từ đường dẫn video YouTube hoặc đoạn transcript đầu vào.

Chương 9. Tổng kết

Chương 9 đúc kết các thuận lợi về nguồn dữ liệu phong phú, các khó khăn trong xử lý transcript tự động và đề xuất các phương hướng phát triển tiếp theo như mở rộng chủ đề, áp dụng các kỹ thuật tiền xử lý làm sạch transcript và nâng cao khả năng suy luận cho các câu hỏi phức tạp.

Thiết kế và triển khai ứng dụng thử nghiệm

Nhằm trực quan hóa khả năng suy luận của mô hình ngôn ngữ trên dữ liệu nói thực tế, nhóm tác giả đã xây dựng một ứng dụng web phục vụ thử nghiệm với các thông số triển khai được ghi nhận trong văn bản:

  • Giao diện người dùng: Thiết kế hỗ trợ hai ngôn ngữ hiển thị (tiếng Việt và tiếng Anh). Trang chủ cung cấp thông tin tổng quan về kiến trúc mô hình, quy trình huấn luyện, các ví dụ mẫu từ tập dữ liệu VlogQA kèm liên kết video YouTube gốc, cùng các cảnh báo về giới hạn dữ liệu nói.
  • Khung mô hình phục vụ (Serving Model): Sử dụng mô hình đã tinh chỉnh xlm-roberta để tiếp nhận đầu vào gồm transcript và câu hỏi.
  • Luồng xử lý: Khi người dùng cung cấp liên kết video hoặc văn bản transcript cùng câu hỏi, hệ thống trích xuất văn cảnh, đưa qua bộ tokenizer và mô hình suy luận để xác định đoạn trích câu trả lời; nếu độ tin cậy của phản hồi dưới ngưỡng cho phép, ứng dụng sẽ xuất thông báo phản hồi có độ tin cậy thấp.

Kết quả và đóng góp

1. Thống kê tập dữ liệu VlogQA và so sánh với UIT-ViQuAD

Dữ liệu phân tích trong khóa luận cho thấy sự khác biệt rõ rệt giữa dữ liệu đọc hiểu ngôn ngữ nói (VlogQA) và ngôn ngữ viết bách khoa (UIT-ViQuAD):

Đặc trưng thống kê Tập dữ liệu VlogQA (Đề tài) Tập dữ liệu UIT-ViQuAD 1.0
Tổng số đoạn văn (Context/Transcript) 1.230 174
Số đoạn văn (Train / Dev / Test) 945 / 130 / 155 137 / 18 / 18
Tổng số cặp câu hỏi - đáp 10.076 23.074
Số câu hỏi (Train / Dev / Test) 8.047 / 1.017 / 1.012 18.579 / 2.285 / 2.210
Độ dài trung bình đoạn văn (từ) 2.751,7 101 – 200
Độ dài trung bình câu hỏi (từ) 10,40 ~10,0
Độ dài trung bình câu trả lời (từ) 3,24 8,18
Kích thước tập từ vựng (từ) 39.211 42.545
Số từ vựng mới đóng góp 25.564 —
Số từ vựng trùng lặp giữa 2 bộ 13.674 13.674

2. Kết quả thực nghiệm các mô hình trên tập dữ liệu VlogQA

Bảng tổng hợp kết quả của các mô hình ngôn ngữ và con người trên tập phát triển (Dev) và tập kiểm thử (Test):

Mô hình / Đánh giá Dev EM (%) Dev F1 (%) Test EM (%) Test F1 (%)
mBERT 41,20 63,78 40,81 63,12
XLM-R_large 54,18 75,82 53,97 75,34
ALBERT 18,29 36,45 17,98 35,80
Longformer 16,52 34,10 16,11 33,65
PhoBERT 20,45 39,80 19,86 38,92
Human Performance (Con người) — — 48,97 76,25

3. Phân tích tỷ lệ dự đoán sai theo loại câu hỏi (mô hình XLM-R_large)

Đánh giá tỷ lệ lỗi trên tập phát triển phân theo từng loại câu hỏi:

Loại câu hỏi Số lượng câu hỏi sai (EM = 0) Tỷ lệ lỗi EM (%)
Where (Ở đâu) 36 33,96%
How-quantity (Bao nhiêu) 87 34,93%
When (Khi nào) 42 41,18%
What (Cái gì) 248 49,30%
Who (Ai) 39 52,70%
How-quality (Như thế nào) 48 64,86%
Why (Tại sao) 62 74,70%

4. Các đóng góp chính của đề tài

  • Xây dựng thành công bộ ngữ liệu đọc hiểu trích xuất trên ngôn ngữ nói tiếng Việt đầu tiên (VlogQA) gồm 10.076 cặp câu hỏi-đáp từ 1.230 transcript video YouTube.
  • Bổ sung 25.564 từ vựng mang đặc trưng ngôn ngữ nói đời thường vào tài nguyên xử lý ngôn ngữ tự nhiên tiếng Việt.
  • Chứng minh tính hiệu quả vượt trội của mô hình đa ngôn ngữ quy mô lớn XLM-RoBERTa trong việc xử lý văn bản nói dài và chứa nhiễu, thiết lập mức chuẩn (baseline) cho các nghiên cứu tiếp theo.

Hạn chế và hướng nghiên cứu tiếp

Khóa luận ghi nhận các hạn chế cụ thể từ thực tế nghiên cứu:

  • Chất lượng transcript tự động: 1.166/1.230 transcript (chiếm hơn 94%) được sinh tự động bởi ASR của YouTube, dẫn đến tồn tại các lỗi sai chính tả, mất dấu thanh, thiếu dấu câu và lỗi nhận dạng từ ngữ địa phương.
  • Giới hạn phần cứng: Do dung lượng bộ nhớ RAM/VRAM hạn chế trên môi trường Google Colab, mô hình PhoBERT chỉ có thể huấn luyện với chiều dài chuỗi tối đa (max_length) là 256 token, làm giảm khả năng bao quát toàn bộ ngữ cảnh transcript dài.
  • Độ phức tạp câu hỏi: Mô hình gặp khó khăn lớn đối với các câu hỏi dạng giải thích nguyên nhân (Why có tỷ lệ lỗi 74,70%) và tính chất phương thức (How-quality có tỷ lệ lỗi 64,86%).
  • Phạm vi chủ đề: Dữ liệu mới chỉ tập trung vào hai lĩnh vực Du lịch và Ẩm thực, chưa bao quát các chủ đề chuyên sâu khác như khoa học, giáo dục, tin tức hay luật pháp.

Hướng phát triển được đề xuất bao gồm:

  • Mở rộng quy mô tập dữ liệu sang các chủ đề nội dung khác trên các nền tảng mạng xã hội.
  • Nghiên cứu tích hợp các công cụ phục hồi dấu câu (punctuation restoration) và hiệu chỉnh lỗi ASR trước khi đưa vào mô hình đọc hiểu.
  • Thử nghiệm các kiến trúc mô hình ngôn ngữ lớn (LLM) và các cơ chế xử lý văn cảnh siêu dài.

Giá trị tham khảo

Tài liệu khóa luận mang lại giá trị tham khảo chuyên môn cho các đối tượng:

  • Sinh viên và học viên ngành Khoa học Dữ liệu, Trí tuệ Nhân tạo, CNTT: Tham khảo chi tiết phương pháp luận thiết kế một tập dữ liệu NLP chuẩn mực, từ khâu thu thập qua API, xây dựng guideline gán nhãn, tính toán các chỉ số độ đồng thuận (Kappa, Alpha) đến đánh giá mức hiệu năng con người.
  • Các nhóm nghiên cứu về Xử lý ngôn ngữ tự nhiên tiếng Việt: Kế thừa tập dữ liệu VlogQA và các kết quả benchmark thực nghiệm để phát triển các mô hình đọc hiểu tự động, trợ lý ảo hoặc hệ thống tóm tắt/truy vấn video tiếng Việt.
  • Kỹ sư phát triển hệ thống tìm kiếm đa phương tiện: Tham khảo quy trình tích hợp mô hình Transformer phục vụ tác vụ rút trích thông tin từ phụ đề video.

Câu hỏi thường gặp

1. Bộ dữ liệu VlogQA có quy mô và nguồn gốc từ đâu? VlogQA gồm 10.076 cặp câu hỏi - đáp được trích xuất từ 1.230 tệp transcript của các video YouTube tiếng Việt có lượng người theo dõi trên 200.000, tập trung vào hai chủ đề Du lịch (665 video) và Ẩm thực (565 video).

2. Điểm khác biệt lớn nhất về từ vựng giữa VlogQA và UIT-ViQuAD là gì? Mặc dù tổng số từ vựng của VlogQA (39.211 từ) tương đương UIT-ViQuAD (42.545 từ), VlogQA đóng góp tới 25.564 từ vựng mới không xuất hiện trong UIT-ViQuAD. Các từ này chủ yếu là từ đệm, đại từ và khẩu ngữ tự nhiên trong giao tiếp hàng ngày như "ừ", "nè", "nhé", "mình", "rất là".

3. Mô hình ngôn ngữ nào đạt hiệu năng cao nhất và kết quả ra sao so với con người? Mô hình XLM-R_large đạt kết quả cao nhất trên tập kiểm thử với Exact Match (EM) là 53,97% và F1-score là 75,34%. Kết quả này vượt qua con người ở độ đo EM (Human Performance đạt 48,97%) và tiệm cận con người ở độ đo F1 (Human Performance đạt 76,25%).

4. Vì sao mô hình PhoBERT lại đạt kết quả thấp hơn các mô hình đa ngôn ngữ trong nghiên cứu này? PhoBERT đạt kết quả thấp (EM 19,86%, F1 38,92% trên tập Test) do hai nguyên nhân chính: công cụ phân tách từ pyvi gặp khó khăn trước ngôn ngữ nói chứa từ đệm, nói lắp và thiếu dấu câu; đồng thời giới hạn phần cứng buộc mô hình chỉ được thiết lập max_length = 256, không bao quát được các transcript có độ dài hàng nghìn từ.

5. Mô hình dự đoán chính xác nhất và kém nhất trên những loại câu hỏi nào? Theo phân tích lỗi trên mô hình XLM-R_large, loại câu hỏi có tỷ lệ lỗi thấp nhất là câu hỏi về địa điểm Where (tỷ lệ lỗi 33,96%) và số lượng How-quantity (34,93%). Ngược lại, loại câu hỏi có tỷ lệ lỗi cao nhất là câu hỏi giải thích lý do Why (tỷ lệ lỗi 74,70%) và tính chất How-quality (64,86%).

Kết luận

Khóa luận của nhóm sinh viên Ngô Phước Thịnh và Đặng Trần Anh Khoa đã giải quyết bài toán Đọc hiểu tự động trên ngôn ngữ nói tiếng Việt thông qua việc xây dựng bộ ngữ liệu VlogQA gồm 10.076 cặp câu hỏi-đáp từ 1.230 transcript YouTube. Nghiên cứu thực nghiệm chứng minh mô hình XLM-RoBERTa đạt hiệu năng vượt trội với F1-score 75,34%, mở ra khả năng ứng dụng thực tế cho tác vụ truy xuất thông tin từ video đa phương tiện. Công trình đóng góp nguồn ngữ liệu và kết quả benchmark học thuật giá trị cho cộng đồng nghiên cứu Xử lý ngôn ngữ tự nhiên tiếng Việt.