littlebot
Published on 2025-04-17 / 2 Visits
0

【源码】基于PaddlePaddle框架的图像分类模型对抗测试工具

项目简介

本项目是基于PaddlePaddle框架开发的图像分类模型对抗测试工具。项目实现了多种深度学习模型,运用多种攻击策略与数据处理方法,通过对比原始图像和攻击后图像的指标,评估图像分类模型对攻击的鲁棒性。此项目在百度AI安全对抗赛初赛获第一名,决赛获第五名。

项目的主要特性和功能

  1. 模型库:实现ResNet、MobileNetV2、DarkNet等多种深度学习模型,并提供不同版本。
  2. 攻击策略:采用添加噪声、改变像素值、改变图像大小等策略测试模型鲁棒性。
  3. 数据处理:提供图像预处理、数据增强、批量归一化等操作,调整图像格式并增强数据多样性。
  4. 评估指标:计算原始图像和攻击后图像的指标(如MSE、L2范数等)评估模型抗攻击能力。
  5. 日志记录:运行过程中记录攻击结果、模型性能等日志,便于后续分析和改进。

安装使用步骤

环境准备

安装PaddlePaddle框架(1.5.1版本或更高版本)和相关的依赖库,使用以下命令建立环境: conda create -n adversary python=3.7 pip install paddlepaddle-gpu==1.5.1.post97

代码下载

复制项目代码文件: cd baidu_AI_adversary

数据准备

准备图像分类任务的测试数据集,同时下载预训练模型,下载地址:https://aistudio.baidu.com/aistudio/datasetdetail/19746,解压模型: tar xvf pretrained.tar.bz2

运行程序

激活环境并运行dog_ensemble_final.py脚本,开始图像分类模型攻击测试: conda activate adversary python dog_ensemble_final.py 运行时间比较长,可考虑在后台运行: nohup python -u dog_ensemble_final.py& 通过以下命令查看 log: tail -f nohup.out

结果查看

查看输出文件路径datasets/outputs,获取攻击结果和评估指标。

注意:运行时间可能较长,需要耐心等待。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】