Trustworthy-AI-Group/TransferAttack
TransferAttack is a pytorch framework to boost the adversarial transferability for image classification.
TransferAttack – 전이 가능한 적대적 공격을 위한 PyTorch 툴킷
기능 소개
TransferAttack은 PyTorch 기반의 연구용 Python 라이브러리로, 이미지 분류 모델(CNN, Vision Transformers 등)에 대한 전이 가능한 적대적 예제를 생성하고 평가할 수 있습니다. 전이 가능한 공격은 하나의 모델에서 생성되었음에도 불구하고 학습되지 않은 다른 모델에 대해서도 효과를 유지하며, 이는 딥 비전 시스템의 견고성을 조사하는 핵심적인 방법입니다.
주요 특징
- 벤치마크 스위트 – 80개 이상의 공개된 비표적 공격을 기술별(기울기 기반, 입력 변환, 고급 목적 함수)로 그룹화하여 제공합니다. README에는 각 방법의 간단한 설명과 인용 정보가 나열되어 있습니다.
- 플러그 앤 플레이 모델 인터페이스 – 일반적인 ImageNet 호환 모델(예: ResNet-50, ViT)을 로드하고 단일 명령줄 플래그(
--attack mifgsm --model=resnet50)를 사용하여 공격을 실행할 수 있습니다. - 평가 모드 – 적대적 이미지를 생성한 후
--eval을 실행하면 사전 학습된 모델 세트 전반에 걸쳐 표준화된 전이성 테스트가 수행됩니다. - 재현 가능한 데이터셋 – 1,000개의 이미지로 구성된 소규모 ImageNet 스타일 PNG 데이터셋이 포함되어 있으며, 다운로드 링크(Google Drive / Hugging Face)가 제공됩니다.
- 확장성 – 기본 공격 클래스를 상속받고 기울기 업데이트 규칙을 구현하여 새로운 공격을 쉽게 추가할 수 있도록 코드가 구성되어 있습니다.
일반적인 워크플로우
# 의존성 설치
pip install -r requirements.txt
# ResNet-50에서 MI-FGSM을 사용하여 적대적 이미지 생성
python main.py \
--input_dir ./data \
--output_dir adv_data/mifgsm/resnet50 \
--attack mifgsm \
--model=resnet50
# 다른 모델에서의 전이 성공률 평가
python main.py \
--input_dir ./data \
--output_dir adv_data/mifgsm/resnet50 \
--eval
동일한 패턴이 나열된 모든 공격(예: --attack dim, --attack tap)에 적용됩니다.
중요성
- 각각 고유한 코드베이스를 가진 수십 개의 최근 적대적 전이 관련 논문을 재현하기 위한 단일하고 일관된 환경을 제공합니다.
- 연구자들이 새로운 방어 기법이나 모델 아키텍처가 광범위한 공격에 어떻게 대응하는지 빠르게 테스트할 수 있도록 돕습니다.
- 함께 제공되는 조사 논문(arXiv:2602.23117)과 엄선된 참고 문헌이 해당 분야의 맥락을 제공합니다.
시작하기
- 저장소를 복제하고 필요한 Python ≥ 3.6, PyTorch ≥ 1.12.1, torchvision 및
timm을 설치합니다. - 제공된 1k 이미지 데이터셋을 다운로드합니다.
- 원하는 공격 및 모델 플래그와 함께
main.py를 실행합니다. adv_data/에 생성된 적대적 PNG를 검사하거나 내장된 평가 기능을 사용하여 전이율을 확인합니다.
인용 이 코드나 벤치마크를 출판물에서 사용하는 경우, 관련 arXiv 논문(2026)을 인용하십시오.
위의 모든 세부 정보는 저장소의 README에서 직접 가져온 것이며, 추가적인 기능은 추론하지 않았습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트