
[CVPR 2025-ADVML] المستودع الرسمي لـ `Attacking Attention of Foundation Models Effectively Disrupts Downstream Tasks`
التنفيذ الرسمي لـ PyTorch للورقة "مهاجمة انتباه النماذج الأساسية تعطل المهام النهائية بفعالية"، مقبولة في ورشة عمل التعلم الآلي العدائي على الرؤية الحاسوبية: النماذج الأساسية + X (ADVML) ضمن مؤتمر CVPR 2025.
"مهاجمة انتباه النماذج الأساسية تعطل المهام النهائية بفعالية"
هوندامونيجي براسانا سيلفا، فيديريكو بيكاتيني، ولورينزو سيديناريالملخص: تمثل النماذج الأساسية أحدث تحول نموذجي بارز في الذكاء الاصطناعي. النماذج الأساسية هي نماذج كبيرة، مدربة على بيانات واسعة تحقق دقة عالية في العديد من المهام النهائية، غالباً دون ضبط دقيق. لهذا السبب، أصبحت نماذج مثل CLIP أو DINO أو محولات الرؤية (ViT) الأساس الذي تقوم عليه العديد من التطبيقات الصناعية المدعومة بالذكاء الاصطناعي. ومع ذلك، فإن الاعتماد على النماذج الأساسية المدربة مسبقاً يقدم أيضاً مخاوف أمنية كبيرة، حيث أن هذه النماذج عرضة للهجمات العدائية. تتضمن هذه الهجمات مدخلات مصممة عمداً لخداع أنظمة الذكاء الاصطناعي، مما يعرض موثوقيتها للخطر. تدرس هذه الورقة نقاط الضعف في النماذج الأساسية للرؤية، مع التركيز بشكل خاص على CLIP و ViTs، وتستكشف قابلية نقل الهجمات العدائية إلى المهام النهائية. نقدم هجوماً جديداً يستهدف بنية المعماريات القائمة على المحولات بطريقة غير مرتبطة بمهمة محددة. نثبت فعالية هجومنا على عدة مهام نهائية: التصنيف، التسمية التوضيحية، استرجاع الصور/النصوص، التجزئة، وتقدير العمق.
conda env create -f environment.yml
pip install .
pip instlal -e . # If you want in edit mode!
attack-attention
├─ .gitignore
├─ .pre-commit-config.yaml
├─ LICENSE
├─ README.md
├─ checkpoint
│ ├─ albef
│ └─ tcl
├─ data
│ ├─ flickr30k-images
│ └─ val2014
├─ SGA
│ └─ ...
├─ data_annotation
│ ├─ coco_test.json
│ └─ flickr30k_test.json
├─ environment.yml
├─ eval_clip-vit2albef.py
├─ eval_clip-vit2clip-cnn.py
├─ eval_clip.py
├─ models
│ ├─ __init__.py
│ ├─ clip_model
│ │ ├─ model.py
│ │ └─ ..
│ └─ ..
└─ std_eval_idx
├─ flickr30k
└─ mscoco
أنشئ مجلد checkpoint داخل المجلد الجذر وقم بتنزيل نماذج TCL و ALBEF.
نقاط التفتيش الخاصة بنماذج VLP المضبوطة بدقة متاحة في ALBEF، TCL.
أنشئ مجلد data داخل المجلد الجذر وقم بتنزيل FLICKR30K، MSCOCO.
اطلع على readme.md داخل مجلد SGA.
لتقييم الهجوم without trasferability
python eval_clip.py --config ./configs/Retrieval_coco.yaml \
--source_model ViT-B/16 --original_rank_index ./std_eval_idx/mscoco/ \
--loss atn --method 1;
لتقييم الهجوم مع قابلية النقل (ALBEF)
python eval_clip-vit2albef.py --config ./configs/Retrieval_flickr.yaml \
--source_model ViT-B/16 --target_model ALBEF --target_ckpt ./checkpoint/albef/flickr30k.pth \
--original_rank_index ./std_eval_idx/flickr30k/ --loss atn --method 1
لتقييم الهجوم مع قابلية النقل (TCL)
python eval_clip-vit2albef.py --config ./configs/Retrieval_flickr.yaml \
--source_model ViT-B/16 --target_model TCL --target_ckpt ./checkpoint/tcl/checkpoint_flickr_finetune.pth \
--original_rank_index ./std_eval_idx/flickr30k/ --loss atn --method 1
لتقييم الهجوم مع قابلية النقل (CLIP-CNN)
python eval_clip-vit2clip-cnn.py --config ./configs/Retrieval_flickr.yaml \
--source_model ViT-B/16 --target_model RN101 \
--original_rank_index ./std_eval_idx/flickr30k/ --loss atn --method 1
--source_model ViT-B/16 --method 3 --loss emb
إذا وجدت هذا العمل مفيداً، فيرجى التفكير في الاستشهاد به:
@InProceedings{Silva_2025_CVPR,
author = {Silva, Hondamunige Prasanna and Becattini, Federico and Seidenari, Lorenzo},
title = {Attacking Attention of Foundation Models Disrupts Downstream Tasks},
booktitle = {Proceedings of the Computer Vision and Pattern Recognition Conference (CVPR) Workshops},
month = {June},
year = {2025},
pages = {3534-3543}
}
| المعامل | الافتراضي | النوع | الوصف |
|---|
--config | ./configs/Retrieval_flickr.yaml | str | المسار إلى ملف إعدادات YAML. |
--seed | 42 | int | بذرة لتوليد الأرقام العشوائية لضمان قابلية إعادة الإنتاج. |
--source_model | ViT-B/16 | str | اسم النموذج المصدر المستخدم للتقييم. |
--source_text_encoder | bert-base-uncased | str | بنية ترميز النصوص للنموذج المصدر. |
--source_ckpt | None | str | المسار إلى نقطة التفتيش للنموذج المصدر، إن وجدت. |
--target_model | ALBEF | str | النموذج الهدف للتقييم. |
--target_text_encoder | bert-base-uncased | str | ترميز النصوص للنموذج الهدف. |
--target_ckpt | ./checkpoint/albef/flickr30k.pth | str | المسار إلى نقطة التفتيش للنموذج الهدف. |
--original_rank_index_path | ./std_eval_idx/flickr30k/ | str | المسار إلى الملف الذي يحتوي على مؤشرات الترتيب الأصلية. |
--alpha | 90 | int | وزن دالة الخسارة أثناء التحسين العدائي. |
--loss | atn | str | نوع دالة الخسارة المستخدمة. |
--method | 1 | int | معرّف طريقة الهجوم؛ راجع دالة my_attack للتفاصيل. |
--index | 11 | int | فهرس الطبقة المراد مهاجمتها في النموذج الهدف. |