
[CVPR 2025-ADVML] `Attacking Attention of Foundation Models Effectively Disrupts Downstream Tasks` के लिए आधिकारिक रिपॉज़िटरी
पेपर "Attacking Attention of Foundation Models Effectively Disrupts Downstream Tasks" का आधिकारिक PyTorch कार्यान्वयन, जिसे CVPR 2025 के एडवरसैरियल मशीन लर्निंग ऑन कंप्यूटर विज़न: फाउंडेशन मॉडल + X (ADVML) कार्यशाला में स्वीकार किया गया है।
# फाउंडेशन मॉडलों के ध्यान पर आक्रमण प्रभावी रूप से डाउनस्ट्रीम कार्यों को बाधित करता है
होंडामुनिगे प्रसन्ना सिल्वा, फेडेरिको बेकातिनी और लोरेंज़ो सीडेनारीसार: फाउंडेशन मॉडल कृत्रिम बुद्धिमत्ता में सबसे प्रमुख और हालिया प्रतिमान बदलाव का प्रतिनिधित्व करते हैं। फाउंडेशन मॉडल बड़े मॉडल होते हैं, जो व्यापक डेटा पर प्रशिक्षित होते हैं और कई डाउनस्ट्रीम कार्यों में उच्च सटीकता प्रदान करते हैं, अक्सर बिना फाइन-ट्यूनिंग के। इस कारण से, CLIP, DINO या विज़न ट्रांसफॉर्मर (ViT) जैसे मॉडल कई औद्योगिक AI-संचालित अनुप्रयोगों की आधारशिला बन रहे हैं। हालाँकि, पूर्व-प्रशिक्षित फाउंडेशन मॉडलों पर निर्भरता महत्वपूर्ण सुरक्षा चिंताएँ भी उत्पन्न करती है, क्योंकि ये मॉडल एडवरसैरियल आक्रमणों के प्रति संवेदनशील हैं। ऐसे आक्रमणों में जानबूझकर तैयार किए गए इनपुट शामिल होते हैं जिन्हें AI प्रणालियों को धोखा देने के लिए डिज़ाइन किया गया है, जिससे उनकी विश्वसनीयता खतरे में पड़ती है। यह पेपर विज़न फाउंडेशन मॉडलों की कमजोरियों का अध्ययन करता है, विशेष रूप से CLIP और ViTs पर ध्यान केंद्रित करता है, और एडवरसैरियल आक्रमणों की डाउनस्ट्रीम कार्यों में स्थानांतरणीयता का पता लगाता है। हम एक नया आक्रमण प्रस्तुत करते हैं, जो ट्रांसफॉर्मर-आधारित आर्किटेक्चर की संरचना को कार्य-अज्ञेयवादी तरीके से लक्षित करता है। हम कई डाउनस्ट्रीम कार्यों पर अपने आक्रमण की प्रभावशीलता प्रदर्शित करते हैं: वर्गीकरण, कैप्शनिंग, छवि/पाठ पुनर्प्राप्ति, विभाजन और गहराई अनुमान।
conda env create -f environment.yml
pip install .
pip instlal -e . # यदि आप एडिट मोड में चाहते हैं!
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 डाउनलोड करें।
SGA फ़ोल्डर के अंदर readme.md देखें।
आक्रमण का मूल्यांकन बिना स्थानांतरणीयता के करने के लिए
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 | लक्ष्य मॉडल में आक्रमण करने के लिए परत सूचकांक। |