文章目录

  • 1 引入
  • 2 白盒攻击
  • 2.1 Biggio
  • 2.2 Szegedy's limited-memory BFGS (L-BFGS)
  • 2.3 Fast gradient sign method (FGSM)
  • 2.4 DeepFool
  • 2.5 Jacobian-based saliency map attack (JSMA)
  • 2.6 Basic iterative method (BIM) / Projected gradient descent (PGD) attack
  • 2.7 Carlini & Wagner′s attack (C&W′s attack)
  • 2.8 Ground truth attack
  • 2.9 其他 lp攻击
  • 2.10 全局攻击 (universal attack)
  • 2.11 空间转换攻击 (spatially transformed attack)
  • 2.12 无约束对抗样本
  • 3 物理世界攻击
  • 3.1 物理世界的对抗样本探索
  • 3.2 道路标志的Eykholt攻击
  • 3.3 Athaly的3D对抗对象
  • 4 黑盒攻击
  • 4.1 替换模型
  • 4.2 ZOO:基于零阶优化的黑盒攻击
  • 4.3 高效查询黑盒攻击
  • 5 灰盒攻击
  • 6 中毒攻击
  • 6.1 Biggio在SVM上的中毒攻击
  • 6.2 Koh的模型解释
  • 6.3 毒青蛙 (poison frogs)
  • 参考文献


1 引入

  相较于其他领域,图像领域的对抗样本生成有以下优势
  1)真实图像与虚假图像于观察者是直观的;
  2)图像数据与图像分类器的结构相对简单。
  主要内容:以全连接网络和卷积神经网络为例,以MNIST、CIFAR10,以及ImageNet为基础样本,研究基于逃避对抗,包括白盒、黑盒、灰盒,以及物理攻击的图像对抗样本生成。

2 白盒攻击

图像检索java_黑盒与受害样本 (victim sample) 图像检索java_黑盒_02 后,其目标是合成一张在感知上与原始图像相似,但可能误导分类器给出错误预测结果的虚假图像:
图像检索java_黑盒_03其中图像检索java_图像_04用于度量图像检索java_图像检索java_05图像检索java_图像_06的不相似性,通常为图像检索java_黑盒_07范数。接下来介绍该攻击手段下的主要方法。

2.1 Biggio

  在MNIST数据集上生成对抗样本,攻击目标是传统的机器学习分类器,如SVM和3层全连接神经网络,且通过优化判别函数来误导分类器。
  例如图1中,对于线性SVM,其判别函数图像检索java_黑盒_08。假设有一个样本图像检索java_图像_06被正确分类到3。则对于该模型,biggio首先生成一个新样本图像检索java_图像检索java_05,其在最小化图像检索java_因吉与皮卡墨_11的同时保持图像检索java_图像_12最小。如果图像检索java_黑盒_13图像检索java_图像检索java_05将被误分类。

图像检索java_图像检索java_15


图1:Biggio攻击在SVM分类器上的示意

2.2 Szegedy’s limited-memory BFGS (L-BFGS)

  首次应用在用于图像分类的神经网络上,其通过优化以下目标来寻找对抗样本:
图像检索java_图像检索java_16  通过引入损失函数来近似求解该问题:
图像检索java_因吉与皮卡墨_17其中图像检索java_因吉与皮卡墨_18是一个规模参数。通过调整图像检索java_因吉与皮卡墨_18,可以找到一个与图像检索java_图像_06足够相似的图像检索java_图像检索java_05,且同时误导分类器图像检索java_黑盒

2.3 Fast gradient sign method (FGSM)

  Goodfellow等人设计了一个一步到位的快速对抗样本生成方法:

图像检索java_因吉与皮卡墨_23  在目标攻击设计下,该问题可以通过一步梯度下降求解:

图像检索java_图像检索java_24  FGSM快速的一个原因是其仅需一次反向传播,因此适应于生成大量对抗样本的情况,其在ImageNet上的应用如图2

图像检索java_图像_25


图2:只需一些扰动,熊猫图便会被误判

2.4 DeepFool

图像检索java_图像_26围绕数据点的决策边界,试图找到一条可以超越决策边界的路径,如图3,从而误分类样本点图像检索java_图像_06。例如,为误判类别为4的样本图像检索java_因吉与皮卡墨_28到类别3,决策边界可以被描述为图像检索java_图像检索java_29。令图像检索java_因吉与皮卡墨_30,在每次攻击中,它将使用泰勒展开图像检索java_对抗攻击与防御_31来线性化决策超平面,并计算图像检索java_图像检索java_32到超平面图像检索java_图像检索java_33的正交向量图像检索java_因吉与皮卡墨_34。向量图像检索java_因吉与皮卡墨_34可以作为扰动使得图像检索java_因吉与皮卡墨_28游离于超平面。通过移动图像检索java_因吉与皮卡墨_34,算法将找到可以被分类为3的对抗样本图像检索java_图像_38

图像检索java_黑盒_39


图3:决策边界

  DeepFool的实验结果展示,对于一般性的DNN图像分类器,所有的测试样本都非常接近决策边界。例如LeNet在MNIST数据集上训练好后,只需些许扰动,超过90%的样本都将被误分类,这表面DNN分类器对扰动是不健壮的。

2.5 Jacobian-based saliency map attack (JSMA)

图像检索java_图像_26雅可比矩阵的方法,其迭代地操作对模型输出影响最大的像素,可被视为一种贪心攻击算法。
  具体地,作者使用雅可比矩阵图像检索java_图像_41来对图像检索java_图像_42响应图像检索java_图像_06变化时的改变建模。在目标攻击设置下,攻击者试图将样本误分类为图像检索java_因吉与皮卡墨_44。因此,JSMA反复地搜索和操作这样的像素,其增加/减少将导致图像检索java_图像检索java_45增加/减少图像检索java_对抗攻击与防御_46。最终分类器将在类别图像检索java_因吉与皮卡墨_44上给图像检索java_图像_06更大的分数。

2.6 Basic iterative method (BIM) / Projected gradient descent (PGD) attack

图像检索java_图像检索java_05
图像检索java_图像_50  这里的图像检索java_图像_51表示将接收内容投影到图像检索java_图像_06图像检索java_黑盒_53邻域超球图像检索java_因吉与皮卡墨_54的函数。步长图像检索java_图像检索java_55通常被设置为一个相当小的值,例如使得每个像素每次只改变一个单位,步数用于保证扰动可以到达边界,例如图像检索java_对抗攻击与防御_56。如果图像检索java_图像_06是随机初始化的,该算法也可被叫做PGD。
  BIM启发性地于样本图像检索java_图像_06邻域图像检索java_对抗攻击与防御_59内搜寻具有最大损失的样本图像检索java_图像检索java_05,这样的样本也被称为“最具对抗性”样本:当扰动强度被限定后,这样的样本有最强的攻击性,其最可能愚弄分类器。找到这样的对抗样本将有助于探测深度学习模型的缺陷。

2.7 Carlini & Wagner′s attack (C&W′s attack)

  C&W′s attack用于对抗在FGSM和L-BFGS上的防御策略,其目标是解决L-BFGS中定义的最小失真扰动。使用以下策略来近似公式2
图像检索java_因吉与皮卡墨_61其中图像检索java_对抗攻击与防御_62图像检索java_对抗攻击与防御_63用于获取softmax前的网络层输入。通过最小化图像检索java_黑盒_64可以找到一个在类别图像检索java_因吉与皮卡墨_44上得分远大于其他类的图像检索java_图像检索java_05。接下来运用线性搜索,将找到一个离图像检索java_图像_06最近的图像检索java_图像检索java_05
  函数图像检索java_因吉与皮卡墨_69可以看作是关于数据图像检索java_黑盒_02的损失函数:可以惩罚一些标签图像检索java_黑盒_71的得分图像检索java_图像检索java_72的情况。C&W’s attack与L-BFGS的唯一区别是前者使用图像检索java_图像_73来代替后者的交叉熵图像检索java_黑盒_74。这样的好处在于,当分类器输出图像检索java_图像_75时,损失图像检索java_黑盒_76,算法将直接最小化图像检索java_图像检索java_05图像检索java_图像_06的距离。
  作者宣称他们的方法是最强的攻击策略之一,其击败了很多被反击手段。因此,该方法可以作为DNN安全检测的基准点,或者用于评估对抗样本的质量。

2.8 Ground truth attack

图像检索java_图像_26和数据图像检索java_黑盒_02编码为类线性编程系统的主题,并通过检查样本图像检索java_图像_06的邻域图像检索java_图像_82是否存在一个能够误导分类器的样本图像检索java_图像检索java_05来处理该系统。通过缩小邻域直至不存在图像检索java_图像检索java_05,那么由于最后一次搜寻到的图像检索java_图像检索java_05图像检索java_图像_06之间具有最小不相似性,此时的图像检索java_图像检索java_05便被叫做基本事实对抗样本 (ground truth adversarial example)。
  Ground truth attack是首次严肃精确分类器健壮性的方法。然而,这种方法使用了可满足性模理论 (satisfiability modulo theories, SMT) 求解器 (一种检查一系列理论可满足性的复杂算法),这将使其速度缓慢且无法扩展到大型网络。后续则有工作着手提升其效率效率。

2.9 其他图像检索java_黑盒_07攻击

图像检索java_因吉与皮卡墨_89图像检索java_对抗攻击与防御_59约束下的扰动,这里则介绍一些其他的:
  1)One-pixel attack:与L-BFGS区别在于约束种使用图像检索java_对抗攻击与防御_91,好处是可以限制允许改变的像素的数量。该工作展示,在CIFAR10数据集上,仅需改变一个像素就可以令训练良好的CNN分类器预判一半以上的样本;
  2)Elastic-net attack (ENA):与L-BFGS的区别在于同时使用图像检索java_对抗攻击与防御_92图像检索java_因吉与皮卡墨_89范数来约束。

2.10 全局攻击 (universal attack)

图像检索java_图像_06进行攻击。而该攻击旨在误导分类器在所有测试集上的结果,其试图找到满足以下条件的扰动图像检索java_图像检索java_95
  1)图像检索java_图像检索java_96
  2)图像检索java_因吉与皮卡墨_97
  在相应实验中,成功找到了一个扰动图像检索java_图像检索java_95,使得ResNet152网络在ILSVRC 2012数据集上的图像检索java_黑盒_99的样本受到攻击。

2.11 空间转换攻击 (spatially transformed attack)

  传统的对抗性攻击算法直接修改图像中的像素,这将改变图像的颜色强度。空间转换攻击通过在图像上添加一些空间扰动来进行攻击,包括局部图像特征的平移扭曲、旋转,以及扭曲。这样的扰动足以逃避人工检测,亦能欺骗分类器,如图4

图像检索java_对抗攻击与防御_100


图4:空间转换攻击

2.12 无约束对抗样本

  2.1–11的工作均在图像上添加不引入注意的扰动,该工作则生成了一些无约束的对抗样本:这些样本无需看起来和受害图像类似,而是能够愚弄分类器且在观察者眼中合法的图像。
  为了攻击分类器图像检索java_黑盒,增强类对抗生成网络 (AC-GAN) 图像检索java_图像_102首先基于图像检索java_对抗攻击与防御_103类噪声向量图像检索java_对抗攻击与防御_104生成一个合法样本图像检索java_图像_06。然后找到一个接近图像检索java_对抗攻击与防御_104的噪声向量图像检索java_因吉与皮卡墨_107,其使得图像检索java_图像检索java_108可以误导图像检索java_黑盒。由于图像检索java_因吉与皮卡墨_107在潜在空间中与图像检索java_对抗攻击与防御_104相似,输出图像检索java_图像检索java_108依然具备标签图像检索java_对抗攻击与防御_113,从而达到攻击的目的。

3 物理世界攻击

  章节2中的所有攻击方法都以数字形式应用,其被攻击方将输入图像直接提供给机器学习模型。然而,在某些情况下并非总是如此,例如使用摄像头、麦克风或其他传感器接收信号作为输入的情况。这种情况下依然通过生成物理世界对抗对象来攻击这些系统吗?这样的攻击方式是存在的,例如将贴纸贴在道路标志上,这会严重威胁自动驾驶汽车的标志识别器。这类对抗性对象对深度学习模型的破坏性更大,因为它们可以直接挑战DNN的许多实际应用,例如人脸识别、自动驾驶等。

3.1 物理世界的对抗样本探索

  例如通过检查生成的对抗图像 (FGSM、BIM) 在自然变换 (如改变视点、光照等) 下是否“稳健”来探索制作物理对抗对象的可行性。在这里,“健壮”是指制作的图像在转换后仍然是对抗性的。为了应用这种转换,首先打印出精心制作的图像,并让测试对象使用手机为这些打印输出拍照。在这个过程中,拍摄角度或光照环境不受限制,因此获取的照片是从先前生成的对抗样本转换而来的样本。实验结果表明,在转换后,这些对抗样本中的很大一部分,尤其是FGSM生成的样本,仍然与分类器对抗。这些结果表明物理对抗对象的可能性可以在不同环境下欺骗传感器。

3.2 道路标志的Eykholt攻击

  图5中,通过在信号标志的适当位置粘贴胶带以愚弄信号识别器。作者的攻击手段包括:

  1)图像检索java_图像检索java_114范数的攻击用于粗略定位扰动区域,这些区域后面将粘贴胶带;

  2)在粗略定位区域,使用基于图像检索java_因吉与皮卡墨_89范数的攻击生成胶带的颜色;

  3)指定区域粘贴指定颜色胶带。这样的攻击方式从不同角度不同距离混淆自动驾驶系统。

图像检索java_图像检索java_116


图5:交通信号标志上粘贴胶带

3.3 Athaly的3D对抗对象

  一个成功制作物理3D对抗对象的工作如图 6 所示。作者使用3D打印来制造对抗性乌龟。为了实现目标,他们实施了3D渲染技术。给定一个带纹理的3D对象,首先优化对象的纹理,使渲染图像从任何角度来看都是对抗性的。在这个过程中,还确保扰动在不同环境下保持对抗性:相机距离、光照条件、旋转,以及背景。在找到3D渲染的扰动后,他们打印3D对象的一个实例。

图像检索java_图像_117


图6:3D对抗对象

4 黑盒攻击

4.1 替换模型

图像检索java_图像_06后获取的标签信息图像检索java_对抗攻击与防御_113来执行攻击。此外,攻击者可以有以下可用信息:
  1)分类数据的领域;
  2)分类器的框架,例如CNN还是RNN。
  该工作探索了对抗样本的可迁移性:一个样本图像检索java_图像检索java_05如果可以攻击分类器图像检索java_黑盒_121,那么它同样可以攻击与图像检索java_黑盒_121结构类似的分类器图像检索java_图像_123。因此,作者训练了一个替换模型图像检索java_对抗攻击与防御_124以对受害模型图像检索java_图像_26进行模拟,然后通过攻击图像检索java_对抗攻击与防御_124来生成对抗样本,其主要步骤如下:
  1)合成替换训练数据集:例如手写识别任务中,攻击者可以复刻测试样本或者其他手写数据;
  2)训练替换模型:将合成数据集图像检索java_图像检索java_127输入受害者模型以获取标签图像检索java_对抗攻击与防御_128,随后基于图像检索java_图像检索java_129训练DNN模型图像检索java_对抗攻击与防御_124。攻击者将基于自身知识,从训练模型中选择一个与受害者模型结构最相似的图像检索java_对抗攻击与防御_124
  3)数据增强:迭代增强图像检索java_因吉与皮卡墨_132并重训练图像检索java_对抗攻击与防御_124。这个过程将提升复刻数据的多样性并提升 图像检索java_对抗攻击与防御_124的精度;
  4)攻击替换模型:利用已有方法如FGSM来攻击图像检索java_对抗攻击与防御_124,生成的对抗样本将用于戏耍图像检索java_图像_26😏
  应该选择如何的攻击方法攻击图像检索java_因吉与皮卡墨_137?一个成功的替换模型黑盒攻击应当具备可迁移性,因此我们选择具有高迁移性的攻击方法如FGSM、PGD,以及动量迭代攻击。

4.2 ZOO:基于零阶优化的黑盒攻击

  该方法假设可以从分类器获取预测置信度,这种情况下便无需建立替换数据集和替换模型。Chen等人通过调整图像检索java_图像_06的像素来观测图像检索java_图像_42的置信度变化,以获取图像检索java_图像_06相关的梯度信息。如公式8所示,通过引入足够小的扰动图像检索java_对抗攻击与防御_141,我们能够通过输出信息来推着梯度信息:
图像检索java_图像_142

4.3 高效查询黑盒攻击

  4.1-2中的方式需要多次查询模型的输出信息,这在某些应用中是禁止的。因此在有限次数内提高黑盒攻击对抗样本的生成效率是有必要的。例如引入自然进化策略来高效获取梯度信息,其基于图像检索java_图像_06的查询结果进行采样,然后评估图像检索java_图像_26的梯度在图像检索java_图像_06上的期望。此外,他们利用遗传算法来为对抗样本搜寻受害图像的邻域。

5 灰盒攻击

  灰盒攻击的策略,例如,首先针对感兴趣模型训练一个GAN,然后直接基于对抗生成网络生成对抗样本。该作者认为基于GAN的攻击方式能够加速对抗样本的生成,且能获取更多自然且不易察觉的图像。随后这种策略也被用于人脸识别系统的入侵上。

6 中毒攻击

  已有的讨论均是在分类器训练后进行,中毒攻击则在训练前生成对抗样本:生成一些对抗样本嵌入到训练集中,从而降低分类模型的总体精度或者影响特定类别的样本。通常,该设置下的攻击者拥有后续用于训练中毒数据的模型结构。中毒攻击通常用于图神经网络,这些因为它需要特定的图知识。

6.1 Biggio在SVM上的中毒攻击

图像检索java_因吉与皮卡墨_146,其混入训练数据后,将导致习得的SVM模型图像检索java_黑盒_147在验证集上有很大的损失。这样的攻击方法对SVM是奏效的,然而对于深度学习,找到这样的一个样本是困难的。

6.2 Koh的模型解释

  Koh和Liang引入一种神经网络的解释方法:如果训练样本改变,模型的预测结果会有如何的变化?当只修改一个训练样本时,他们的模型可以明确量化最终损失的变化,而无需重新训练模型。 通过找到对模型预测有很大影响的训练样本,这项工作可以自然地用于中毒攻击。

6.3 毒青蛙 (poison frogs)

图像检索java_图像检索java_148的目标测试样本图像检索java_图像_149,攻击者首先使用标签为图像检索java_黑盒_150的基准样本图像检索java_图像_151,并通过以下优化找到图像检索java_图像检索java_05
图像检索java_黑盒_153  由于图像检索java_图像检索java_05图像检索java_图像_151最近,基于训练集图像检索java_图像_156训练的模型将会把图像检索java_图像检索java_05预测为图像检索java_黑盒_150。使用新模型去预测图像检索java_图像_149,优化目标将会强制拉近图像检索java_图像_149图像检索java_图像检索java_05的预测得分,即将图像检索java_图像_149预测为图像检索java_黑盒_150

参考文献

【1】Adversarial Attacks and Defenses in Images, Graphs and Text: A Review