Visual Question Answering on Synthetic Data
Xem dạng PDF1. Bối cảnh thực tế & Mục tiêu
Trong lĩnh vực Trí tuệ nhân tạo, việc kết hợp giữa thị giác máy tính (Computer Vision) và xử lý ngôn ngữ tự nhiên (NLP) là một thách thức lớn. Bài toán Visual Question Answering (VQA) yêu cầu mô hình không chỉ "nhìn" thấy các đối tượng trong ảnh mà còn phải "hiểu" mối quan hệ logic, không gian và thuộc tính của chúng để trả lời các câu hỏi phức tạp.
Sử dụng các tập dữ liệu tổng hợp như CLEVR và CLOSURE giúp chúng ta đánh giá khả năng suy luận logic thuần túy của mô hình, loại bỏ các yếu tố nhiễu từ thế giới thực và tránh việc mô hình "học vẹt" dựa trên các định kiến ngôn ngữ (language bias).
Trong đề thi này, thí sinh sẽ:
- Tiếp cận kiến trúc đa phương thức (Multimodal) kết hợp Image Feature và Text Embedding.
- Huấn luyện mô hình trên dữ liệu tổng hợp để giải quyết các bài toán truy vấn thuộc tính (màu sắc, hình dáng, chất liệu) và suy luận không gian.
- Đánh giá kết quả bằng thước đo độ chính xác: Accuracy.
2. Nhiệm vụ
Xây dựng một hệ thống VQA có khả năng nhận đầu vào là một hình ảnh và một câu hỏi văn bản, sau đó đưa ra câu trả lời chính xác nhất.
Thí sinh có thể triển khai theo nhiều hướng khác nhau:
- Baseline Approach: Sử dụng CNN (ResNet, VGG) để trích xuất đặc trưng ảnh và RNN (LSTM, GRU) cho câu hỏi, sau đó kết hợp qua các lớp Fully Connected.
- Attention Mechanism: Sử dụng Spatial Attention hoặc Co-Attention để mô hình tập trung vào các vùng ảnh quan trọng tương ứng với từ khóa trong câu hỏi.
- Modern Architectures: Sử dụng Transformer-based models (như ViT, LXMERT, hoặc các biến thể của CLIP).
- ...
⚠️ Lưu ý: Khuyến khích thí sinh tự thiết kế tầng Fusion (gộp đặc trưng) để tối ưu khả năng suy luận logic giữa hai miền dữ liệu ảnh và chữ.
3. Tiêu chí đánh giá
Thước đo chính được sử dụng là Accuracy trên từng tập dữ liệu.
Kết quả cuối cùng trên bảng xếp hạng được tính bằng trung bình điều hòa (Harmonic Mean) giữa Accuracy của hai tập CLEVR và CLOSURE, nhằm đảm bảo mô hình phải hoạt động tốt trên cả hai miền dữ liệu:
$$ Score = \frac{2 \cdot Acc_{CLEVR} \cdot Acc_{CLOSURE}}{Acc_{CLEVR} + Acc_{CLOSURE}} $$
Ví dụ:
Giả sử một mô hình đạt:
- Accuracy trên CLEVR: 80%
- Accuracy trên CLOSURE: 60%
Khi đó điểm số được tính như sau:
$$ Score = \frac{2 \cdot 80 \cdot 60}{80 + 60} = \frac{9600}{140} \approx 68.57 $$
Ngoài ra, hệ thống cũng công bố Accuracy riêng trên từng tập để tham khảo.
4. Data và Baseline
- Dataset: Truy cập tại đây
- Baseline Code: Tham khảo Notebook tại đây.
- Slide giới thiệu: Tham khảo tại đây
- Lưu ý: Khuyến khích phát triển lên từ baseline. Không được sử dụng model pretrained trên những tập dữ liệu khác ImageNet.
5. Dataset và Submission Format
5.1 Cấu trúc Dataset
Bộ dữ liệu dựa trên CLEVR (câu hỏi logic cơ bản) và CLOSURE (kiểm tra khả năng suy luận mở rộng), bao gồm:
dataset/
│
├── images/
│ ├── train/ # Chứa file ảnh .png dùng để huấn luyện
│ └── test/ # Chứa file ảnh .png dùng để kiểm tra
│
└── questions/
├── train.json # Chứa danh sách câu hỏi, tên ảnh và nhãn (answer)
└── test.json # Chứa danh sách câu hỏi, tên ảnh (không có nhãn)
Chi tiết file JSON: Mỗi phần tử trong danh sách câu hỏi có cấu trúc:
image_filename: Tên file ảnh tương ứng.question: Nội dung câu hỏi bằng tiếng Anh.answer: Câu trả lời (chỉ có trong filetrain.json).qid: Mã định danh duy nhất cho mỗi câu hỏi.- ...
5.2 Nhiệm vụ dự đoán
Dựa vào hình ảnh và câu hỏi trong tập test, mô hình cần dự đoán câu trả lời phù hợp nhất (thường là một từ đơn như: red, cube, yes, no, 3, metal...).
5.3 Submission Format
File nộp bài có định dạng CSV gồm 2 cột: qid (mã câu hỏi) và answer (câu trả lời dự đoán).
| qid | answer |
|---|---|
| clevr_val_0001 | blue |
| clevr_val_0002 | cylinder |
| clevr_val_0003 | yes |
| ... | ... |
Ví dụ file submission.csv:
qid,prediction
clevr_val_0001,blue
clevr_val_0002,cylinder
clevr_val_0003,yes
5.4 Lưu ý
- Kết quả dự đoán phải bao gồm đầy đủ tất cả các
qidcó trong filetest.json. - Câu trả lời cần được viết thường (lowercase) và khớp với tập từ vựng (vocabulary) của tập train.
- Không được sử dụng dữ liệu bên ngoài để gán nhãn thủ công cho tập test.
6. Tryhard (optional)
Các bạn có thể sử dụng playground sau để làm quen với cách tương tác và code với mô hình nhỏ (Gemma-4-26B-A4B-IT), tương tự môi trường thi thật: AI Playground (Gemma-4-26B-A4B-IT)
Mục đích là giúp thí sinh luyện cách viết prompt, kiểm tra logic và thử nghiệm pipeline trong điều kiện giống khi thi (giới hạn model, không internet).
Chúc các bạn hoàn thành tốt bài thi!
Bình luận