天天看点

Spatially transformed adversarial examples

本文为转载,原作者地址https://zhuanlan.zhihu.com/p/47419905

Spatially transformed adversarial examples

文章目录

    • Spatially transformed adversarial examples
      • 背景
      • 空间转换
      • 问题建模
      • 实验结果
      • 空间转换可视化
      • 防御模型下的攻击效率
      • CAM图
      • 总结

背景

以往的攻击算法多是通过改变图片中某些像素点的值来生成对抗样本,本文将分享一篇不走寻常路的方法,通过改变像素点的位置来达成攻击。作者不仅测试了自己的攻击算法的有效性,还通过攻击基于对抗训练所得的防御模型,验证了此类防御算法对其无效。作者期望能够开拓对抗攻击的新方向,促使大家研究能够抵御结构转化类对抗攻击的防御算法。

paper:https://arxiv.org/pdf/1801.02612.pdf

以往的论文(例如FGSM,C&W,)主要通过改变原始图片中像素点的值来生成对抗样本,现有的防御算法也都是针对这类攻击研究的。在这篇文章中,作者首次提出了通过空间转化来生成对抗样本,即通过改变原始样本中像素点的位置生成可以使分类器误判的图片。改文章的作者总结了此论文有以下主要贡献:

1)文章提出了基于空间转换来生成对抗样本的方法,并在MNIST,CIFAR-10,ImageNet 等数据集上进行了相关实验,证实了攻击的有效性;

2)本文可视化了对抗样本与原始样本之间的空间差异,证实了这种改变是微弱并局部光滑的,这一特点也保证了所生成对抗样本的视觉感知体验;

3)本文通过对现有的一些防御系统进行攻击实验,证实了由stAdv所生成的对抗样本更能够欺骗现有的防御系统;

4)最后,作者绘制了各类攻击算法生成的对抗样本的激活图,证实了stAdv所生成的对抗样本更能够持续性地误导现有的模型。

空间转换

在现有的计算机视觉和图像文学领域,决定一个图像的外观的主要有以下两个方面:(1)亮度和材质,即像素点的亮度和目标的材质所共同决定的像素点的值;(2)几何图形,即像素点的位置。现有的算法多是假设在扰动前后像素点的空间位置不变,改变的前者。

神经网络中的模型几何转换起源于Hinton等人提出的“capsules”,最初是通过局部转换输入的计算单元,从而建模2D和3D的几何变化。后来,Jaderberg等人(2015)证明了类似的计算单元,即空间转化器,可以改善许多现有的计算机视觉任务。在2016年,Zhou等人采用空间转换器来合成同一对象的新视图,并表明与纯基于像素的方法相比,几何方法可以产生更真实的结果。

问题建模

首先,我们先看所谓的“空间转换”到底如何实现,如下图所示,对于一张原始图片 x, (u(i), v(i)) 表示图像中第 i 个像素点的位置, fi = ( Δ \Delta Δu(i), δ \delta δv(i)) 表示第 i 个像素点的位移场(displacement field),( Δ \Delta Δu(i)adv, δ \delta δv(i)adv) 表示所生成的对抗样本中像素点 i 的位置。

Spatially transformed adversarial examples

在本问题中,作者试图寻找一个最佳的位移场集合 f ,使原始图像 x 经过 f 转化后生成的 sadv 被原分类器错分。计算 x(i)adv 的公式如下:

Spatially transformed adversarial examples

其中 N(u(i), v(i)) 是位置 (u(i), v(i)) 四周(左上、右上、左下、右下)的四个像素点的集合。

接下来就到建立目标方程的时候了,目标方程由两部分组成,一部分试图最大化所生成对抗样本被误分类的可能,一部分对所生成对抗样本与原始样本的差异进行约束。之前的基于改变像素点值的攻击方法通常用 Lp 范数度量扰动前后图像的差别,在这篇文章中,作者引入了一种新的度量方程 Lflow 。以下是本论文的目标方程:

Spatially transformed adversarial examples

其中 Ladv(x, f) 的目的是让分类器将对抗样本识别为不同于真实标签 y 的目标标签 t ,即促使 g(xadv) = t 。在本文中,作者引入了C&W算法中的损失函数:

Spatially transformed adversarial examples

目标方程的后半部分代表对扰动大小的限制, Lflow 通过计算任意两个相邻像素的空间运动距离之和得到,表达式如下:

Spatially transformed adversarial examples

实验结果

作者分别在MNIST,CIFAR-10,ImageNet等数据集上进行了攻击实验,并对其中一些样本攻击前后的空间转化进行了可视化操作,使读者能够更直观地观察到各像素点的空间转化量。

1)MNIST实验

下表中列举了用于识别MNIST图片识别的三个模型的结构参数:

Spatially transformed adversarial examples

在下表中,我们可以看到对于三个不同的CNN,在攻击之前,它们对MNIST数据集的识别率都达到了98+%,但是这样的识别率是非常易于攻破的,本攻击算法攻击他们的成功率接近100%。

Spatially transformed adversarial examples

上图展示了基于三个模型所生成的有目标攻击对抗样本,划红线部分表示原始图像。以第一副图第一行第二列的图片为例,该图片代表由模型A生成的,原来被模型A识别为0,现在被该模型识别为1的对抗样本。

  1. CIFAR-10实验

针对CIFAR-10的实验分别用ResNet32和ResNet34实现,下面的表和图与MNIST实验中的内容相似,其中0-9代表十种类别。

Spatially transformed adversarial examples
Spatially transformed adversarial examples

3)不同对抗样本的对比

下图中,作者展示了不同攻击算法所生成的对抗样本,由于FGSM和C&W都是改变像素点值,所以可以明显看出图片中有一些噪声出现(MNIST上尤为明显),如果单从人眼无法识别这一要求上来看,明显stAdv生成的对抗样本更满足人眼不可见的要求。

Spatially transformed adversarial examples

空间转换可视化

作者在主要贡献中提到了文章中将空间变化可视化,使得读者可以清楚地看到像素点的空间转换量。可以看出,变化最大的是目标所在区域(fig. 6和fig. 7中尤为明显)。

Spatially transformed adversarial examples
Spatially transformed adversarial examples

防御模型下的攻击效率

为了验证本文所提的攻击算法是否能攻破现有的防御系统,作者进行了一些实验。本文中所有的防御策略如下:(1)FGSM对抗训练(Adv.);(2)集成对抗训练(Ens.);(3)PGD对抗训练(PGD)。下表分别展示了MNIST和CIFAR-10上的实验结果,stAdv将针对防御系统的攻击成功率平均提高了30%~40%,效果值得肯定。

Spatially transformed adversarial examples

CAM图

CAM(Class Activation Mapping)是2016年提出的可以可视化图片中对类别响应最大的区域的方法,看过弱监督语义分割方向的朋友可能对它比较熟悉。如下图所示,原图的label是“影院”,响应最大的区域包括塔和建筑,当以“导弹”为目标生成对抗样本后,对抗样本的响应区域只包含了图中塔的部分。而进行防御后,FGSM和C&W所生成的对抗样本都没能继续误导分类器,只有stAdv生成的样本可以继续对分类器产生误导。

Spatially transformed adversarial examples

总结

本文是对对抗样本方向一个很有意义的拓展,这将开辟一个新的研究方向,既包括基于空间转换的攻击算法的研究,又包括抵御此类攻击的防御算法的研究。但文章还是有一些地方没有交代清晰,例如在ImageNet上的实验并没有给出具体的成功率,也没有进行黑盒攻击实验等。

继续阅读