Transfer Learning Trong VQA: Backbone Ảnh Và Mô‑Đun Xử Lý Văn Bản Thường Dùng

Tác giả: AI VIET NAM (AI VIET NAM)

Keywords: VQA, Transfer Learning, Backbone Ảnh, Xử Lý Văn Bản, ViT, BERT

Mở đầu

Trong các bài toán Vision–Question Answering (VQA), nhiều người dễ gặp bối rối khi kết hợp hai nguồn dữ liệu có bản chất khác nhau: ảnh và câu hỏi dạng văn bản. Khi đọc tài liệu, thường thấy những tên mô‑đun như ResNet, ViT, BERT, RoBERTa… nhưng lại không rõ lý do chúng được chọn và vai trò của từng phần trong một mô hình VQA hoàn chỉnh. Nội dung dưới đây đi thẳng vào hai thành phần cốt lõi: backbone xử lý ảnh và mô‑đun xử lý văn bản khi áp dụng transfer learning.

Backbone Ảnh Trong VQA Dùng Gì?

Trong VQA, backbone ảnh đóng vai trò trích xuất đặc trưng hình ảnh trước khi đưa vào phần kết hợp (fusion). Một vài kiến trúc thường gặp:

  • ResNet (thường ResNet‑50 hoặc ResNet‑152)
    Được dùng rộng rãi trong các phiên bản VQA đời đầu. Cấu trúc residual giúp mạng học sâu mà không gặp vấn đề biến mất gradient. Pre‑trained trên ImageNet, dễ tích hợp vào pipeline.

  • Faster R‑CNN hoặc các mô hình region-based
    Trong VQA 2.0 và nhiều mô hình như Bottom‑Up and Top‑Down Attention, Faster R‑CNN được dùng để trích xuất feature theo vùng (object-level). Cách này giúp mô hình “chú ý” đến từng đối tượng trong ảnh thay vì toàn cảnh.

  • ViT (Vision Transformer) hoặc các nhánh chuyển đổi sang patch embedding

    Với sự phát triển của kiến trúc transformer trong Computer Vision (liên quan đến nhóm kiến thức Deep Learning 2 và CV trong module 9), ViT ngày càng được dùng nhiều nhờ khả năng tạo embedding giàu thông tin và phù hợp khi kết hợp với text transformers. Nhìn chung, backbone ảnh thường là mô hình đã được huấn luyện trước trên ImageNet hoặc COCO, sau đó tinh chỉnh nhẹ khi triển khai vào VQA.

Mô‑Đun Xử Lý Văn Bản Trong VQA

Với câu hỏi đầu vào, mục tiêu là tạo ra embedding giàu ngữ nghĩa để mô hình hiểu nội dung câu hỏi:

  • LSTM / GRU
    Xuất hiện trong các nghiên cứu VQA giai đoạn đầu. Chuỗi từ được chuyển thành embedding rồi đưa qua LSTM để tạo vector biểu diễn toàn câu.

  • BERT
    Một trong những lựa chọn phổ biến nhất hiện nay. Pre‑trained transformer này có khả năng nắm ngữ cảnh tốt, phù hợp khi cần hiểu cấu trúc câu hỏi phức tạp. Thường chỉ cần fine‑tune tầng cuối cùng khi áp dụng cho VQA.

  • RoBERTa, DistilBERT hoặc các mô hình tương đương

    Tùy tài nguyên và yêu cầu dự án. RoBERTa cho chất lượng ổn định, còn DistilBERT phù hợp môi trường cần nhẹ và nhanh. Mô‑đun text thường sử dụng tokenization và embedding tương tự kiến thức trong module NLP (tokenization, embedding vector, contextual embedding).

Ví Dụ Mô Hình VQA Thường Gặp

Một pipeline quen thuộc trong các bài nghiên cứu:

  • Ảnh được đưa vào Faster R‑CNN để trích xuất N vùng và đặc trưng của từng vùng.
  • Câu hỏi được đưa qua BERT để tạo embedding câu.
  • Hai nguồn đặc trưng được đưa vào module fusion (ví dụ: attention, bilinear pooling).
  • Output cuối cùng thường là phân loại trên vocab các câu trả lời.

Góc Nhìn Khi Làm Dự Án VQA

Khi xây dựng hệ thống VQA thực tế, việc lựa chọn backbone phụ thuộc vào bốn yếu tố:

  • Độ phức tạp của ảnh (cảnh đơn giản hay nhiều vật thể)
  • Ngữ cảnh câu hỏi (ngắn, dài, dạng đếm, dạng so sánh)
  • Tài nguyên tính toán
  • Yêu cầu latency

Trong nhiều dự án, việc giữ nguyên backbone pre‑trained và chỉ fine‑tune tầng fusion giúp tiết kiệm thời gian huấn luyện. Đây là cách làm quen thuộc khi triển khai ứng dụng CV/NLP trong thực tế và cũng tương đồng với hướng tiếp cận trong các module từ Deep Learning đến NLP.

Liên Hệ Với Kiến Thức Nền AI

Để hiểu rõ pipeline này, người học thường đi qua một chuỗi kiến thức:

  • Từ nền tảng Python, NumPy (module 1–2)
  • Đến cách xử lý dữ liệu dạng ảnh và văn bản (module 3, module 9–10)
  • Rồi học về mô hình hóa (module ML, Pre‑DL, DL)
  • Cuối cùng mới kết hợp CV và NLP trong bài toán đa phương thức như VQA.

Lời Khuyên Cho Người Bắt Đầu

Bạn có thể thử áp dụng một backbone đơn giản như ResNet kết hợp LSTM trước, sau đó thay thế từng thành phần bằng các mô‑đun mạnh hơn để quan sát thay đổi về chất lượng. Cách làm này giúp hiểu rõ từng khối trong hệ thống.

Hỏi Đáp Nhanh Về Chủ Đề

Q: VQA có dùng backbone ảnh đã huấn luyện trước không?
A: Có. Hầu hết mô hình đều tận dụng backbone pre‑trained.

Q: Có thể dùng LSTM cho phần text của VQA không?
A: Có, dù transformer hiện phổ biến hơn.

Q: ViT có phù hợp cho VQA không?
A: Có, đặc biệt khi cần đồng nhất kiến trúc với mô‑đun text.

Q: BERT có cần fine‑tune khi dùng cho VQA không?
A: Thường có fine‑tune nhẹ ở tầng cuối.

FAQ Về Chương Trình AIO

Q1. Con số 0 thì học nổi không?
Ans: Chỉ cần bạn có thời gian học. Điều quan trọng nhất không phải giỏi hay không, mà là có học đều mỗi ngày. Kiến thức – tài liệu – môi trường đã có team lo. Nếu bạn không có thời gian thì nên cân nhắc.

Q2. Ai dạy AIO?
Ans: Đội admin dạy toàn bộ. Admin trực tiếp hướng dẫn và hỗ trợ mọi câu hỏi của bạn trong suốt quá trình học.

Q3. Admin có “xịn” không?
Ans: Admin đều là người làm nghề thật, mỗi người một cách dạy. Quan trọng là bạn cảm thấy hợp cách truyền đạt. Admin không dám nói xịn, chỉ dạy bằng hết sức.

Q4. AIO có gì khác những nơi khác?
Ans: AIO không phải trung tâm. Đây là dự án học tập cộng đồng, được cải tiến qua từng khóa. Tinh thần của AIO: Cùng nhau học – cùng nhau khổ – cùng nhau lớn. Nếu hợp tinh thần đó, bạn sẽ thấy phù hợp.

Tài Nguyên Học AI: