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) 和精选参考书目为该领域提供了背景信息。

入门指南

  1. 克隆存储库并安装所需的 Python ≥ 3.6、PyTorch ≥ 1.12.1、torchvision 和 timm。
  2. 下载提供的 1k 张图像数据集。
  3. 使用所需的攻击和模型标志执行 main.py。
  4. 检查 adv_data/ 中生成的对抗性 PNG,或使用内置评估功能查看迁移率。

引用 如果您在出版物中使用此代码或基准测试,请引用相关的 arXiv 论文 (2026)。


以上所有细节均直接取自存储库的 README;未推断任何额外功能。

相关

  • 项目
  • 项目
  • 项目
  • 项目