目录
思路
- 白盒攻击
- 假设我们图像的数组为x,模型已经正确分类到y_true,这时我们需要进行白盒攻击,微小地修改图像数组x使得模型将其分类到y1
- 给模型输入(x,y1)获取到模型在输入x上的梯度,这里的x便是图像的数组表示
- 依据梯度,在图像上进行调整,以达到减小误差,判断是否此时模型将其分类到y1
- 重复2、3步,直到模型将其分类到y1或者超出时间限制
-
注意:使用的算法主要有两个思想:每次将梯度等比放大,至少最大值达到某个阈值(代码中为7);同时限定对图像调整的幅度noise在一定范围以内(代码中noise_limit为50,当太小时则会收敛的非常慢!比如为5)
- 黑盒攻击
- 黑盒攻击与白盒不同地便是,第二步,无法得到梯度,只能随机地调整图像,直到模型将其分类到y1或者超出时间限制
-
使用的算法是one-pixel-attack,通过随机得修改若干个像素点,进行攻击。
实验总结
- 基于