Adversarial Attack

Xem dạng PDF

Gửi bài giải

Điểm: 100,00 (OI)
Giới hạn thời gian: 60.0s
Giới hạn bộ nhớ: 64M

Tác giả:
Dạng bài
Ngôn ngữ cho phép
Output Only

⚠️ Thông báo: Hệ thống chấm tự động của task này hiện đang tạm thời không khả dụng do việc đánh giá submission yêu cầu GPU riêng cho inference. Thí sinh vẫn có thể tải dataset, checkpoint và code inference để tự đánh giá locally.

1. Bối cảnh thực tế & Mục tiêu

Trong lĩnh vực Trí tuệ nhân tạo, các mô hình Deep Learning hiện đại đạt hiệu năng rất cao trên nhiều bài toán như phân loại ảnh, nhận diện đối tượng, .... Tuy nhiên, các mô hình này tồn tại một điểm yếu quan trọng: chúng có thể bị đánh lừa bởi những nhiễu rất nhỏ mà con người gần như không thể nhận ra. Những nhiễu này được gọi là Adversarial Perturbations, và quá trình tạo ra chúng được gọi là Adversarial Attack.

Một cuộc tấn công adversarial nhằm tạo ra một ảnh mới:

$$ I_{adv} = I + \epsilon $$

trong đó:

  • I là ảnh gốc,
  • epsilon là nhiễu rất nhỏ được thêm vào,
  • I_adv là ảnh sau khi bị perturb.

Mục tiêu của adversarial attack là khiến mô hình dự đoán sai dù ảnh gần như không thay đổi đối với mắt người.

Trong đề thi này, thí sinh sẽ:

  • Tìm hiểu cách hoạt động của các kỹ thuật Adversarial Attack trong Computer Vision và Multimodal AI.
  • Tấn công mô hình đạt hạng cao nhất của tuần trước (bài toán VQA).
  • Tạo ra các perturbation có khả năng đánh lừa mô hình nhưng vẫn giữ chất lượng hình ảnh gần như nguyên vẹn.
  • Đánh giá chất lượng attack bằng hai tiêu chí:

    • Khả năng làm mô hình dự đoán sai.
    • Độ khó nhận biết của perturbation thông qua chỉ số PSNR.

Ngoài ra, bài toán cũng phản ánh các vấn đề thực tế:

  • Kiểm tra độ robust của hệ thống AI.
  • Nghiên cứu cơ chế phòng thủ trước adversarial examples.
  • Ứng dụng adversarial noise trong bảo vệ dữ liệu và bản quyền hình ảnh (ví dụ: Glaze, Nightshade).

2. Nhiệm vụ

Xây dựng một hệ thống Adversarial Attack có khả năng tạo ra ảnh nhiễu từ ảnh đầu vào nhằm đánh lừa mô hình VQA mục tiêu.

Đầu vào của hệ thống gồm:

  • Một hình ảnh gốc.
  • Một câu hỏi văn bản tương ứng.

Đầu ra của hệ thống là:

  • Một ảnh adversarial mới có kích thước và nội dung tương tự ảnh gốc nhưng khiến mô hình VQA dự đoán sai.

Yêu cầu quan trọng

  • Không được thay đổi câu hỏi văn bản.
  • Chỉ được phép perturb trên ảnh.
  • Ảnh sau khi attack phải gần như không thể phân biệt với ảnh gốc bằng mắt thường.

Mô hình mục tiêu là:

  • Checkpoint đạt kết quả tốt nhất (Top 1) của bài toán VQA tuần trước.

Dữ liệu attack bao gồm:

  • 962 ảnh
  • Tương ứng với 1000 câu hỏi

Hướng triển khai gợi ý

Thí sinh có thể triển khai theo nhiều hướng khác nhau:

  • Gradient-based Attacks

    • FGSM (Fast Gradient Sign Method)
    • PGD (Projected Gradient Descent)
    • ...

⚠️ Lưu ý: Mục tiêu không chỉ là làm mô hình dự đoán sai, mà còn phải đảm bảo perturbation đủ nhỏ để giữ chất lượng hình ảnh theo ràng buộc PSNR.


3. Tiêu chí đánh giá

Thước đo chính được sử dụng là:

Attack Success Rate (ASR)

Một sample chỉ được tính là attack thành công nếu đồng thời thỏa mãn cả hai điều kiện:

(1) Misclassification

Mô hình VQA dự đoán sai trên ảnh adversarial.

Tức là:

  • Prediction trên ảnh adversarial phải khác prediction trên ảnh gốc.
(2) Imperceptibility Constraint

Ảnh adversarial phải đạt:

$$ PSNR \ge 45 $$

Trong đó:

  • PSNR (Peak Signal-to-Noise Ratio) đo mức độ giống nhau giữa ảnh gốc và ảnh sau perturbation.
  • PSNR càng cao thì nhiễu càng khó nhận biết bằng mắt thường.

Công thức PSNR

PSNR được tính như sau:

$$ PSNR = 10 \log_{10}\left(\frac{MAX^2}{MSE}\right) $$

Trong đó:

  • MAX là giá trị pixel lớn nhất có thể.
  • MSE là Mean Squared Error giữa ảnh gốc và ảnh adversarial.

Công thức tính điểm

Điểm cuối cùng được tính bằng:

$$ ASR = \frac{\#\ successful\ attacks}{\#\ total\ samples} \times 100% $$

Trong đó:

  • successful attacks là số sample thỏa cả điều kiện misclassification và PSNR.
  • total samples là tổng số sample trong tập test.

4. Data và Baseline

  • Target Model: Checkpoint Top 1 của bài toán VQA tuần trước.
  • Dataset: Bao gồm 962 ảnh cùng 1000 câu hỏi tương ứng.
  • Baseline: Không cung cấp baseline chính thức.
  • Dataset, model checkpoint và code inference có thể được tìm thấy tại đây
  • Slide giới thiệu: link

5. Dataset và Submission Format

5.1 Cấu trúc Dataset

dataset/
│
├── images/
│   ├── clean/          # Ảnh gốc dùng để attack
│
└── questions/
    ├── test.json       # Danh sách câu hỏi và thông tin ảnh

5.2 Chi tiết file JSON

File test.json chứa danh sách các câu hỏi tương ứng với từng ảnh cần attack.

Mỗi phần tử gồm:

  • image_index: ID của ảnh trong dataset.
  • question_index: ID của câu hỏi.
  • image_filename: Tên file ảnh tương ứng.
  • question: Nội dung câu hỏi.
  • qid: Mã định danh duy nhất cho mỗi câu hỏi.
  • ... (các mục còn lại không cần quan tâm)

5.3 Nhiệm vụ dự đoán

Dựa trên:

  • ảnh gốc,
  • câu hỏi tương ứng,
  • mô hình VQA mục tiêu,

thí sinh cần tạo ra:

  • ảnh adversarial tương ứng cho từng ảnh đầu vào.

5.4 Submission Format

File nộp bài là một file .zip chứa toàn bộ ảnh adversarial.

Cấu trúc:

submission.zip
├── image_0001.png
├── image_0002.png
├── ...
Quy định
  • Tên file ảnh adversarial phải giữ nguyên như ảnh gốc.
  • Số lượng ảnh phải đầy đủ.
  • Kích thước ảnh không được thay đổi.
  • Chỉ được phép thay đổi giá trị pixel.

5.5 Lưu ý

  • Không được sử dụng dữ liệu ngoài để huấn luyện surrogate model bổ sung.
  • Các perturbation gây lỗi đọc file hoặc phá hỏng định dạng ảnh sẽ bị loại.

Chúc các bạn phá model thành công!


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.