Procedural Noise Adversarial Examples for Black-Box Attacks on Deep Neural Networks 论文笔记(2)

程序化噪声方法

该文章提出一种利用程序化噪声来生成对抗样本的方法, 所提出的方法和那些通过梯度不断修改以至于到达分类器的边界的方法不一样, 上述方法需要对目标的模型有一定的了解.

使用一类现实和自然纹理来生成对抗样本, 利用扰动对机器学习算法最终的结果产生不同. 程序化噪声广泛应用于计算机图形学, 并且在电影和视频游戏中有大量的应用, 用来生成仿真的纹理来细化自然的细节, 进而增强图像, 特别地, 比如玻璃, 树木, 大理石和动画(比如云, 火焰和波纹)的纹理. 由于这些特征, 假设程序化的噪声可以容易地骗过图片的分类算法, 并且给出的扰动和图片的背景和前景都有着相似的地方.

这样的噪声方法被设计为可以扩展到大图片数据集上, 能够很快进行分析并且实现低的内存使用. 这样的方法是参数化的, 使用相同的函数可以生成不同的噪声模式, 这样的性质使得可以被用做实际的黑盒攻击.

如果想要对程序化噪声有更深刻的了解, 可以细看

A. Lagae, S. Lefebvre, R. Cook, T. DeRose, G. Drettakis, D. S. Ebert, J. P. Lewis, K. Perlin, and M. Zwicker, “A Survey of Procedural Noise Functions,” in Computer Graphics Forum, vol. 29, no. 8, 2010, pp. 2579– 2600.

A. 躲避分类器

作为一种生成对抗样本的方法, 需要解释程序性噪声是如何欺骗现存的图片分类器的.

可以宽松地定义"自然纹理"来作为图片的扰动, 该扰动为真实图片的复制或者和自然模式有一些隐藏的结构相似性. 直觉是通过自然纹理对图片进行覆盖, 图片分类器会对这些加上去的形状和模式进行解释并作为特征, 这些特征将会影响最后的结果.

在合适的小的扰动之下, 生成的纹理将不会破坏原有的图片, 并且欺骗分类器.

传统的随机噪声, 比如高斯噪声或者椒盐噪声, 都是像素级别的, 对于像素级别的噪声对于神经网络是没有作用的, 原因是有卷积层和dropout来进行过滤, 另一方面, 复制自然图片的基于特征的噪声几何属性和其他图像是相似的. 由于现有的图像分类器被训练用于区分自然图片, 基于特征的噪声更有可能去影响最后的预测效果.

许多基于梯度的方法都是寻找一些分类器决策边界的几何相关性, 假定通过纹理或者模式在图片中也可以使用这种几何相关性, 并实现有效的攻击.

文章观察到在UAP中的攻击具有一些模式或者结构, 如下图所示

UAP

这些模式或者结构对于人类是无法识别的. UAP吸引人的地方在于, 大量的图片只使用同一个对抗扰动即可. 对于程序化的噪声, 如同下图的第三行

perlin noise

即生成一些和UAP相似的噪声模式, 可以期望令程序化噪声的模式和UAP有相似的属性, 实现给定图片集合中的一大部分的错分类.

使用Perlin噪声作为程序化噪声是由于其易于使用, 流行并且简单, 虽然Perlin噪声不是最有效或者无伪影的噪声函数, 其简单的实现对于低成本的黑盒攻击而言十分有效.

Perlin噪声是一种梯度噪声, 梯度噪声是利用一个伪随机梯度的方格来生成的噪声, 对这些点积然后插值得到噪声.

Perlin噪声的实现可以归结为三个步骤:

  1. 伪随机梯度向量的方格定义
  2. 对距离-梯度向量进行点乘操作
  3. 在这些值之间进行插值

对于一个给定的点, perlin噪声的值通过在方格上的最邻近的

个点的伪随机的梯度上进行样条插值, 其中

是图像的维度. 样条插值使用其平滑变化可以构造自然外观的图像, 因此区别于线性插值.

对于二维的图像(

), 在点

上的噪声通过以下方法进行推导: 令

为方格的四个点, 其中

以及

, 那么可以得到四个梯度

, 预计算的数组

是伪随机的数组,

包含一个伪随机的排列和相应的伪随机的单位梯度, 四个线性函数

, 然后通过利用

双线性插值, 其中

, 所得的结果就是Perlin噪声值

,

在该文章中, 规定了其中的参数, 频率

, 倍频的数目

, 缺项

, 频率对应着临近像素值的改变的速率, 它影响了图片的视觉平滑性. 倍频的数目则是与外加噪声的多少有关, 缺项则是倍频之间的频率乘子, 如果该项越大则细节越多.

因此Perlin噪声就变为

, 为了便于记忆, 我们写成

颜色映射(Colour Map) 颜色映射通常被用来在图片的颜色和模式上来创造额外的变化, 颜色图如何影响视觉外观的一个例子可见上图, 在本文中, 使用一个正弦函数和一个频率参数

来映射颜色, 使用一个灰度颜色映射, 三通道的RGB也是一样的, 牺牲噪声的复杂性使得可以针对优化问题在一个更小的解空间里面去搜索, 所需要优化的参数也变小了

我们用噪声值

定义它, 函数

. 正弦函数的周期性在图像中产生不同的带, 以实现类似于图2中的对抗性扰动的外观.

虽然这减少了我们可以探索的各种模式, 但是增加额外的复杂性需要更多的查询才能使黑盒攻击成功. 图5示出了使用灰度正弦彩色图足以用极少量的查询来制作成功的攻击. 同样的推理适用于我们选择的Perlin噪声函数.

扩展性: 我们定义我们的生成函数

, 它由Perlin噪声和灰度正弦彩色映射组合而成, 在点

的噪声为:

现在, 我们的参数为

我们的噪声函数的这种可参数化特性极大地减少了对抗扰动的搜索空间. 我们不是在ImageNet上搜索整个图像空间(最大可达268,203像素), 而是针对较小的搜索空间优化算法, 在我们的例子中是4个特征. 功能数量的大幅减少极大地提高了攻击的可扩展性和速度.

在限制性设置中, 可以应用像贝叶斯优化这样的黑盒优化技术来进一步减少对目标模型的查询数量. 在攻击者旨在避免检测的对抗设置中, 这是非常理想的.

4. 攻击实现

在本节中, 我们定义了威胁模型并描述了Perlin噪声攻击. 威胁模型允许我们将黑盒攻击置于上下文中, 并正式定义目标, 功能和约束. 尽管攻击的形式与所考虑的数据类型或分类问题无关, 但产生的扰动旨在欺骗计算机视觉任务中的机器学习系统.

我们提出的攻击是一种基于查询的黑盒算法, 它利用了程序噪声的属性. 在选择了具有参数

的程序噪声函数

之后, 我们首先创建图像扰动以添加到原始“干净”图像. 然后将使用此更改的图像查询目标模型. 如果攻击不成功, 我们将使用贝叶斯优化更新我们后续的查询

, 旨在优化攻击者的目标函数.

A. 威胁模型

为了使对抗能力和目标形式化, 我们还有一些额外的符号. 给定

类和分类器

的多分类问题, 让

为输入

的输出概率分数. 因此,

维概率向量, 其中

,

中的第

个元素, 表示

属于类

的概率.

当存在大量类时(例如, ImageNet数据集具有1,000个类标签), 分类器的性能通常以“前

个”精度来衡量, 即, 当正确的标签在

个最高概率分数中时. 设

为给定输入

的第

个最高概率分数. 在

的情况下, 我们有

, 它是分类器对

的预测标签. 设

表示对象

的真实标签. 当

时, 出现前n个逃避, 其中“逃避”指的是目标分类器无法预测n个最高概率分数内的真实标签的情况.

是对抗者选择的生成噪声函数,

是其参数. 我们将

定义为所得的对抗扰动, 即应用于每个像素坐标以生成整个图像的函数

. 我们将对侧示例

表示为输入

和生成的对抗扰动

之和, 即

.

对手知识 目标模型是一个已经完成学习的黑盒分类器. 我们假设攻击者没有目标分类器的内幕知识, 例如其学习算法, 训练数据和模型设置. 虽然对手知道分类器的输入, 输出和类标签的数据类型.

对手能力 攻击者可以使用任何输入x查询目标分类器F, 并且知道这些输入的真实类标签τ(x). 在某些情况下, 图像分类器提供概率向量作为输出, 以显示分类器的置信度和替代预测. 因此, 对手可以观察输出类概率F(x)是合理的. 我们还考虑了这种概率输出向量不可用的情况.

对手目标 在给定合法输入的情况下, 对手希望在目标分类器中产生Top n evasion, 因为有限的预算会增加原始输入的扰动. 对手的主要目标是通过降低具有对抗性示例

的真实类别标签

的概率来实现错误分类. 当真正的输入

已经错误分类时, 这是微不足道的. 与[21]类似, 我们专注于不分青红皂白而非目标错误分类, 尽管我们的攻击方法可以应用于两者.

攻击者在最大限度地减少用于制造攻击的扰动的约束是根据原始输入x和头部对侧输入

之间的一些距离度量

来定义的. 这相当于限制扰动

的范数, 其中

. 这种扰动幅度的上限允许我们为攻击者建模可检测性约束. 我们还通过限制攻击者的查询数量来强加进一步的可检测性限制. 这是因为在实际情况下, 大量类似的请求会引起怀疑并且可以检测到攻击者. 尽管在一些有关黑盒攻击的相关工作[23], [25], [44]中已经提到了对查询数量的限制, 但在大多数情况下并未考虑这种限制.

B. 目标函数

我们现在可以定义用于生成对抗性示例的约束优化问题. 给定具有k类的学习分类F, 对手具有他们想要改变的输入x, 使得新输入x0 = x +δ被F的前n个误分类, 对距离||δ||<ε和数量的约束, 查询q <qmax.

与相关工作一致, 我们假设我们的扰动预算ε足够小, 因此它不会以显着的方式在视觉上修改图像, 并且对于任何生成的x0, 原始标签都保留

. 该算法的目标是在参数θ上优化我们选择的生成函数G, 因此我们在目标函数中用δ(θ)代替δ. 当

时发生前n个逃避, 因此优化问题的形式如下:

target function

对于所考虑的图像分类数据集, 我们将像素值标准化为[0,1]. G(θ)和x + G(θ)的分量分别被剪切为[-ε, ε]和[0,1]以满足这些约束. 对于前n个逃避, 我们的目标函数小于0是足够的. 因此, 我们的算法的停止条件是

C. 贝叶斯优化

贝叶斯优化是一种基于序列模型的优化算法, 主要用于在黑盒设置中有效地找到最优参数θ[27], [28]. 事实证明, 该技术可以有效地解决各种问题, 如超参数调整, 强化学习, 机器人和组合优化[50].

贝叶斯优化由两部分组成, 首先是概率代理模型, 通常是高斯过程(GP), 第二是指导其查询的获取函数. 该算法使用此获取功能来选择输入以查询目标分类器并观察输出. 然后更新统计模型的先验信念以产生函数的后验分布, 其在给定观察数据的情况下更具代表性. 一旦最佳目标函数值停止改进或算法达到最大迭代次数(查询)[50], 算法就会停止. 该算法具有查询效率, 因为它在其更新的后验中使用过去查询提供的所有信息, 同时还考虑了关于目标函数的模型的不确定性.

高斯过程 贝叶斯优化的第一个组成部分是我们目标函数的概率替代模型. GP是对函数分布的高斯分布的推广, 通常用作贝叶斯优化的替代模型[51]. 我们使用GPs, 因为它们引起了对分析易处理的目标函数的后验分布. 这使我们能够在每次迭代后更新我们对目标函数的看法[28].

GP是一个非参数模型, 完全由先验均值和正定的核函数来描述[50]. 正式地, GP是随机变量的集合, 其中任何有限数量形成高斯分布. 非正式地, 它可以被认为是具有无限长矢量的隐藏(未知)函数, 并且GP描述其分布, 类似于如何通过n维高斯分布来描述一组n维矢量.

GP对丰富的函数分布进行建模的能力取决于其核函数, 该函数控制函数分布的重要属性, 如平滑度, 可微分性, 周期性和幅度[50], [51]. 目标函数的任何先验知识都在内核的超参数中编码. 但是, 由于对手几乎不了解目标模型, 因此对手必须采用更通用的核函数[28].

内核函数的常见选择包括自动相关性确定(ARD)平方指数和Mat'ern内核. 对于我们的实验, 我们遵循Snoek等人的观点. [28]在选择Mat'ern 5/2内核时, 他们声称像ARD这样的其他常见选择对于实际优化问题是不切实际的平滑[28]. Mat'ern 5/2内核产生两次可微分函数, 这一假设与流行的黑盒优化算法(如准牛顿方法, 不需要ARD的平滑性)相对应.

获取函数 贝叶斯优化中的第二个组件是一个获取函数, 它描述了查询的最佳性. 直观地, 采集函数评估候选点在下一次评估中的效用, 并且通常将其定义为使得高采集对应于目标函数的潜在最优值[52].

获取函数必须平衡探索和利用之间的权衡. 探索寻求高方差区域, 即目标函数值不确定性较高的区域. 剥削寻找目标函数的不确定性和估计平均值较低的地方[50], 即模型与目标函数的估计值相关. 太少的探索可能会使其陷入局部极值, 而太多的探索并未充分利用所做的观察.

考虑到黑盒设置, 我们选择通用的采集功能. 两种最受欢迎的选择是优化预期改进(EI)或高斯过程上限(UCB). EI和UCB都被证明在真正的黑盒优化问题中是有效的和数据有效的[28]. 然而, 大多数工作已经发现EI收敛接近最优, 不需要调整自己的参数, 并且在一般情况下比UCB表现更好[28], [50], [52]. 这使得EI成为我们收购功能的最佳候选人.

D. 参数选择

在本节的其余部分, 我们将讨论如何选择参数(θ), 边界(ε, qmax)和度量(||·||). 我们还概述了参数优化策略, 同时考虑了我们的威胁模型.

参数边界 如前面部分所述, G的参数是θ= {ν, ω, κ, νsine}, 即:Perlin噪声函数的频率, 倍频的数量, 缺项和正弦颜色映射函数的频率. 优化这些参数需要我们首先确定它们的边界, 超出这些边界的变化不会影响所得图像的外观.

网格搜索标识当参数值被扰动时所生成的噪声继续具有显着变化的范围. 这些范围将是参数的搜索边界. “明显的变化”是通过视觉检查和“2下降范围”来衡量的. 我们松散确定的边界是ν∈[20,80], ω∈{1,2,3,4}, κ∈[1.7,2.2]和νsine∈[2,32].

参数优化

  • 随机. 我们随机选择噪声函数的参数. 这用作基线性能并且对应于非自适应攻击, 其中对手不接收反馈或者不能访问目标模型的输出概率. 更多查询导致发现一组实现逃避的参数的可能性更高. 在这种情况下, 攻击者不需要访问F(x)中每个标签的概率, 而只需要访问前n个类的标签.
  • 贝叶斯优化. 我们使用具有Mat'ern 5/2内核的高斯过程来选择参数, 以对可能的目标函数放置先验信息, 然后通过在每次查询之后更新后验来依次重新确定参数的选择. 我们使用预期改进(EI)获取功能来指导下一个查询. 后验代表了观察到的数据点的更新信念[50].

由于对查询数量的限制, 诸如网格搜索和基于梯度的优化之类的详尽且查询密集的超参数搜索方法是不可行的. 我们只选择贝叶斯优化作为查询效率参数选择策略.

最大查询数 通过我们的生成函数可以实现对逃避的实现, 因此我们设置最大预算qmax以将查询数量保持在合理的范围内. 对于贝叶斯优化, 高斯过程回归中的精确推断是O(q3), 其中q是观察或查询的数量. 该成本是由于在更新后验时协方差矩阵的反演. 由于这个限制, 并且基于我们的初步实验, 我们设置qmax = 100.这个上限被证明是足够的, 因为实验表明攻击者在q接近这个qmax之前的性能平稳. 我们可以通过稀疏GP来降低计算复杂度[53], [54], 这提供了估计精度和可扩展性之间的权衡. 然而, 鉴于攻击的有效性, 标准GP对我们来说是一个非常合适的选择.

距离度量 距离度量是用于量化图像之间的相似性的有用启发法. 通常的度量标准是“p”范数, 因为如果图像的差异r满足||r|| <ε, 那么图像在视觉上是相似的, 以获得足够小的ε. 对于∞范数, 任何坐标之间的最大可能差异是由ε限制的, 因此我们对所有点都有||ri|| <εi. 由于其像素方式构造, 我们的噪声函数最好用∞范数测量. 对于ImageNet数据集, 我们遵循先前研究[20]和[21]中的∞≤16/256的∞范数上界

5. 实验和结果

A. 实验设置

我们进行了两次实验来测量Perlin噪声攻击的性能. 在第一个实验中, 我们一次攻击一个图像, 目的是尽可能多地规避. 在第二个实验中, 我们的目标是找到一组“强大的”Perlin噪声设置(扰动), 可以在尽可能多的图像中欺骗分类器. 在本节中, 我们将详细介绍模型体系结构, 训练方法, 我们使用的攻击以及我们如何评估攻击性能.

模型 我们使用经过预先训练的ImageNet模型[19], 它们具有Inception v3 [55]和Inception ResNet v2 [56]架构. 这些模型实现了最先进的性能, 在标准数据集上训练时, 前5个损失精度分别为6.1%和4.8%. 这些网络将尺寸为299×299×3的图像作为输入.

我们还采用了更强大的Inception ResNet v2的对抗训练版本:Tramer等. [21]按照[20]的方法对抗Inception ResNet v2, 该网络将被称为IRv2adv. 然后他们使用整体对抗训练来进一步开发他们自己的模型, 我们将其称为IRv2adv-ens. 有关对抗和整体对抗训练过程的完整细节, 我们请读者参考[20]和[21]. 从[21]中获取模型使我们能够更好地与使用现有针对ImageNet分类器的快速攻击的结果进行比较:FGSM, Step-LL和Iter-LL.

个体攻击 在我们的第一个实验中, 我们对来自验证集的1,000个随机图像进行每个图像的攻击, 每个图像的预算最多为100个查询.

我们测试三种不同的攻击方法. 首先是逐像素随机噪声扰动来设置生成对抗性示例的基线, 我们将其称为随机. 在∞范数约束内随机均匀地选择像素的图像噪声值. 如果我们的攻击性能并不比这个随机噪声好, 那么我们不认为它是一种有效的攻击.

我们接下来的两次攻击使用Perlin噪声, 如上一节所述. 两种变化之间的差异在于参数选择算法. 第一次攻击将使用随机选择的参数生成函数, 我们称之为Perlin-R. 给定单个图像, 我们迭代随机参数设置, 直到该图像被规避.

第二次攻击利用贝叶斯优化来选择生成函数的参数, 我们将其称为Perlin-BO. 给定单个图像, 我们使用贝叶斯优化更新我们的参数选择, 直到该图像被回避. 这种攻击是自适应的, 允许更有效的查询.

通用攻击 在我们的第二个实验中, 我们的目标是找到强大的对抗性Perlin噪声设置, 这些设置可以在整个验证集中进行推广. 这些攻击在来自验证集的8,000个随机图像上进行评估.

我们测试了两个Perlin噪声攻击, Perlin-R和PerlinBO. 参数选择算法与第一个实验类似, 但每个攻击的性能都是在所有验证图像上测量的. 对于Perlin-R, 我们迭代1000个随机Perlin噪声设置, 并测量所有验证图像上每个设置的错误率. 由于Perlin-R不使用其他信息, 因此攻击无需更改.

对于Perlin-BO, 我们使用贝叶斯优化来发现强烈的Perlin噪声扰动, 从而最大化错误分类的验证图像的数量. 我们将图像数据集分成两个独立的部分, 用于培训和评估阶段. 实际上, 这对应于校准和攻击阶段. 训练集将针对不同大小进行测试, 范围从10到2,000个图像, 预算为50次迭代, 用于贝叶斯优化. 贝叶斯优化的目标函数将是最大化训练集中错误分类的图像数量. 在评估阶段, 我们测量验证图像上产生的“最佳”Perlin噪声设置的错误率.

评价标准 攻击性能使用前1和前5错误率来衡量. 这些被评估为小于或等于

的∞范数扰动约束. 相应Clean数据集上的分类器的错误率被用作参考. 对于单个攻击, 我们在几个ε和qmax设置中比较此错误率. 我们后来将我们的结果与[21]及其对这些分类的FGSM和Step-LL攻击进行了比较.

B. 个体的Perlin噪声攻击

我们得到的结果已经报告在表I中. 尽管自然图像的误差很小, 并且对随机扰动具有合理的性能, 但是对于我们的Perlin噪声对抗性示例, 分类器具有显着更高的误差.

个体Perlin攻击

最脆弱的目标模型在所有图像上成功回避. 在最坏的情况下, Inception v3在清洁图像上的前1错误为21.8%, 对PerlinBO有100%的错误. 在模型中, IRv2adv-ens中最强大的, 在清晰图像上的前1个误差为20.6%, 对Perlin-BO为89.5%, 效果不是很好. Perlin噪声对抗性的例子.

对于前5个错误, 分类更好, 因为更容易做出正确的前5个预测. 然而, 对于所有类别的图像几乎一半的对抗性示例仍然会出现错误分类. 在最糟糕的情况下, Inception v3在清洁图像上的前5个误差为7.5%, 对Perlin-BO的前5个误差为71.2%. 最强大的分类器IRv2adv-ens在干净图像上有5%的前5个误差, 对Perlin-BO有45.2%的误差.

分类器的比较 Inception ResNet v2神经网络比Inception v3神经网络更具弹性, 与[21]的结果一致. 这可以归因于具有更多参数和层的网络. 在Inception ResNet v2网络中, 对抗和整体训练略微提高了其对抗Perlin噪声攻击的稳健性. 这种边际改进可以归因于在增强数据集上训练的分类器, 其中图像包含结构化的对抗性噪声. 但是, 我们注意到这些改进仅为Perlin噪音攻击提供了边际防御.

攻击性的比较 Perlin噪声攻击都大大优于像素随机攻击. 最强大的攻击是Perlin-BO, 但Perlin的两次噪声攻击都会对分类器造成严重的错误率.

对于整体性能, Perlin-BO优于Perlin-R. 这是合理的, 因为前者使其查询适应输出而后者不适应. 然而, Perlin-BO优于Perlin-R的优势在于前1个错误比前5个错误更大. 他们的前5个错误之间的差距非常小, 所有结果的差距不到5个百分点. 这表明我们使用的程序性噪声函数受限于它能够以多大的精度逃避目标分类器的程度. 我们假设可以通过为生成函数添加更多复杂性来改进这一点.

从理论上讲, Perlin-BO优于Perlin-R的主要优点是它可以使用较少的查询来实现规避. 但是, 在比较前5个错误与查询数量时, 这一点并不明显. 如图2中的第二个图所示, 对于前5个误差, Perlin噪声攻击的性能没有太大分离. 这个结果可能归因于增加前5个误差的困难以及我们选择的程序噪声函数的简单性. 我们假设我们当前的Perlin噪声攻击已经达到了这个设置中前5个误差的最佳可能性能.

当控制ε时, 攻击在较低的扰动预算中自然不太有效, 如图4所示. 这阻碍了我们的攻击, 因为它限制了我们产生的Perlin噪声的空间. 对于ε= 4/256, 我们的Perlin噪声攻击几乎不会对随机噪声产生影响, 特别是对于前5个误差. 这种性能差距并不显着, 这意味着我们的攻击在这种极其严格的限制环境中无效. 之后, Perlin噪声攻击得到改善, Perlin-BO的性能从ε≥8/256处起飞. 实际上, 较小的ε扰动预算导致更具说服力的对抗性示例, 因为对原始图像的篡改并不明显. 即使有更严格的ε, Perlin攻击也会导致50%或更多的前1个错误.

攻击性比较

查询次数的比较 在图5中, 我们观察到分类错误在第一个5到10个查询中显着增加, 并且改进开始在大约20个查询时减慢. 前者显示了分类的脆弱性, 因为对抗性的Perlin噪声攻击的初始查询足以导致错误分类.

随着查询数量的增加, 性能有一个稳定的基础, 这表明我们基本的Perlin噪声攻击的有效性的理论上限, 考虑到它的设置和约束. 以Perlin-BO为100个查询作为我们的上限, 我们观察到Perlin-R和Perlin-BO在他们的前几个查询(20以下)中接近这个上限. 注意Perlin-BO如何比PerlinR更均匀或更差, 但是在超过10个查询时它会超过它. 由于攻击在100次查询之前的性能水平很高, 因此不需要更大的查询预算.

我们的初步结果表明神经网络对Perlin噪声攻击非常脆弱. 这很明显, 对于大部分图像, 我们成功的对抗性示例仅使用少量查询(少于20个)生成. 相比之下, 其他不可转移的黑盒攻击, 如[12], [22], [23], 需要数千个查询来逃避ImageNet中的单个图像. 即使使用随机非自适应Perlin-R攻击, 我们也可以在几个查询中达到上限. 这进一步证明了测试分类器对Perlin噪声对抗性实例的不稳定性.

这些结果提出了单个Perlin噪声攻击在多个图像中作为对抗扰动的概括性的问题. 给定一组固定的参数θ, 我们想要知道所有图像中所得到的对抗扰动G(θ)的逃逸率. 另外, 我们想知道这种情况发生的程度, 以及我们是否可以找到一组最佳参数来逃避给定分类器的最大数量的图像.

C. 通用的Perlin噪声攻击

通用perlin

Perlin-R 我们测试了1,000个随机选择的Perlin噪声设置并在我们的验证集上评估了它们的性能. 清洁图像上分类器的前1和5错误分别约为20%和6%.

对于前1个错误, 图6显示Perlin噪声在所有分类器中达到至少26%的误差. 因此, 分类器非常脆弱, 因为每个随机选择的Perlin噪声设置本身就是对大部分图像的有效对抗扰动. 对于对侧训练的模型IRv2adv和IRv2adv-ens, 至少有一半的Perlin噪声设置达到最小40%的误差. 同样, 至少有一半的Perlin噪声攻击分别对IRv2和v3分类器至少有50%和60%的误差.

应该强调的是, 单一扰动会导致这种规模的错误分类. 对于IRv2adv和IRv2adv-ens, 实验中最佳单个Perlin噪声扰动所达到的最大误差为约52%, 而对于IRv2和v3, 该数值分别为约62%和76%. 这些对抗性扰动的普遍性是显着的, 特别是随着这些Perlin噪声设置的随机选择.

对于前5个错误, 结果并不像通常情况下的结果那样明显. 尽管如此, 结果仍然认为至少有一半的Perlin噪声设置将导致所有分类图像的至少一个图像的错误分类, 如图6所示.

Perlin-BO 在这里, 训练或验证阶段使用贝叶斯优化来进行单一的Perinnoise扰动, 从而最大化从训练数据集中逃避的图像数量. 我们最初认为拥有更大的训练集会使验证集上的性能显着提高. 但是, 我们的结果表明, 相对于训练集大小, 改进是递增的. 这具有显着的意义, 因为黑盒对手可以通过较小的训练集实现类似的攻击性能, 这意味着校准攻击所需的数据和查询更少

BO

我们在表II中显示了IRv2分类器的所有训练集大小的完整结果. 其他分类的尺寸差异很大, 因此我们不在此处加以说明.

与不同训练集合大小相关的差异最多为7个绝对百分点. 这与训练集之间的差异形成鲜明对比, 训练集之间的差异是彼此相比的2到200倍. 结果的差异可归因于Perlin-BO对训练数据的过度拟合, 对于较小的训练集, 这一点更为明显. 尽管有这样的解释, 结果仍然在一个狭窄的范围内. 我们的验证集中的图像和标签分布非常均匀, 因此结果的相似性表明, 除了可能导致逃避的常见Perlin噪声模式之外, 所有类别的共同点都存在.

在表III中, 我们关注的是100个样本的中等训练集. 此设置可平衡攻击性能和查询数量. 我们看到Perlin噪声设置的一小部分实现了类似于我们广义Perlin-BO攻击的性能. 例如, Perlin-BO在分类器v3上实现了59.1%的前5个逃避, 而图6中的Perlin-R结果表明, 在相同的分类器中, 不到2%的Perlin噪声设置达到至少58%的前1个逃避

测试结果

由于Perlin-BO和Perlin-R的结果具有相似性, 因此可以合理地假设这是我们选择的程序噪声函数中最强的对抗性扰动. 然而, 这可以通过更复杂的生成函数来改进.

D. 相关工作的对比

对低维数据集(如MNIST和CIFAR)的攻击在文献中更为突出. 其中许多攻击也是白盒, 或者不容易扩展到大型图像数据集. 此外, 这些攻击通常需要每个图像多达数千次迭代, 如[22]和[23]. 我们的工作处于不同的环境中, 具有更现实的约束.

现有的黑盒攻击对查询来说是无效的; 那些提高效率的人依赖于可转移性, 这就是一个更强大的对手. 尽管这些攻击在[20]和[25]中相对成功, 但它们仍然会产生构建和训练替代模型的额外开销. 它不仅成本高昂, 特别是对于大型数据集, 而且还需要访问类似的数据集和与目标模型相当的模型.

可转移性攻击使用快速梯度方法快速生成对抗性示例. 通常, 在通过重试执行可转移性时, 每个样本需要一些查询. 我们考虑的攻击是FGSM, Step-LL, R + StepLL, 以及[20]和[21]中所示的两步Iter-LL. 作为参考, 我们还将我们的结果与这些快速梯度攻击的白盒版本进行比较. 我们将这些攻击组称为“快速渐变攻击”(FGA), 并在用作白盒(FGA-W)和黑盒(FGA-B)攻击时进行区分.

为了比较, 我们在FGA的相同分类中使用[21]的结果. 为了补偿测试数据集的变化, 我们比较了干净图像错误率与攻击产生的错误率之间的差异. 由于网络具有相同的权重并且测试图像来自相似的分布, 因此在95%的置信区间内结果的差异应该可以忽略不计.

我们将现有方法与我们个别的Perlin噪声攻击进行比较, 因为它们旨在最大化每个图像的规避, 而广义版本的目的是找到避开许多图像的单个扰动. 表IV中报告的结果表明, Perlin噪声攻击均显着优于基于可转移性的黑盒攻击FGAB. 应该注意的是, 对抗性和整体对抗性训练被设计为对抗FGAB的防御, 因此IRv2adv和IRv2adv-ens的这个结果应该不足为奇. 如前所述, 对抗性训练使得这些分类训练略微好一点, 但对于Perlin噪音攻击并没有那么明显.

两种Perlin噪声攻击都比快速白盒攻击更好. 对于FGA-W, 应该注意的是, IRv2adv经过对抗训练可以直接抵御白盒攻击, 并且IRv2adv-ens上的整体训练并没有使他们的模型对FGA-W具有鲁棒性[21]. 特别是Perlin-BO攻击, 即使我们考虑90%的置信区间, 也能通过显着的边缘获得更好的结果. 同样有趣的是, Perlin-R实现了与白盒攻击相当或更好的结果, 因为它的参数选择完全是随机的.

关于查询效率, FGA-B消除了我们的Perlin噪声攻击, 因为代理模型允许他们在查询目标模型之前重新确定其对抗性示例. 然而, Perlin噪声攻击能够在每个图像的前10个查询中导致其 大部分逃逸, 这对于黑盒攻击来说是相当低的. 通过使用Perlin-BO的通用版本创建可转移性攻击, 还可以将查询数量大大减少到类似于FGA-B的级别.

我们假设我们的Perlin噪声攻击利用了学习算法中的固有弱点以及它们对图像中模式的解释. 相比之下, 诸如FGA的现有方法主要关注基于梯度的优化以解决目标函数. 由于高维度, 基于梯度的算法变得难以解决, 计算成本昂贵, 并且可能陷入局部最优的口袋中.

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏机器之心

教程 | 从超参数到架构,一文简述模型优化策略

模型可以在训练过程中通过修正超参数而逐步建立。这在迁移学习中最为常见,在这种环境中,我们试图将现有模型的知识应用到新领域或新任务中。这是持续学习中更常见的问题,...

853
来自专栏数据派THU

清华朱军团队包揽三项冠军 | NIPS 2017对抗样本攻防竞赛总结(附学习资料)

4705
来自专栏量子位

亚马逊专家揭秘:如何建立自动检测乳腺癌的深度学习模型

安妮 编译自 Insight Data Science 量子位出品 | 公众号 QbitAI 本文作者Sheng Weng,现亚马逊Alexa项目组数据专家,莱...

3508
来自专栏YoungGy

卡尔曼滤波简介

卡尔曼滤波是一种在不确定状况下组合多源信息得到所需状态最优估计的一种方法。本文将简要介绍卡尔曼滤波的原理及推导。 ? 什么是卡尔曼滤波 首先定义问题:对于某一系...

4415
来自专栏量子位

怎样构建深度学习模型?六步走,时刻小心过拟合 | 入门指南

1182
来自专栏新智元

【重磅】AI 学会“脑补”:神经网络超逼真图像补完从 0 到 1

1 新智元编译 来源:arXiv、Github 编译:张易 【新智元导读】自动图像补全是计算机视觉和图形领域几十年来的研究热点和难点。在神经网络的帮助下,来...

3325
来自专栏小詹同学

深度学习神经网络第①篇——感知器及其Python实现

感知器是由美国计算机科学家罗森布拉特(F.Roseblatt)于1957年提出的。感知器可谓是最早的人工神经网络。单层感知器是一个具有一层神经元、采用阈值激活函...

1654
来自专栏AI科技评论

干货 | 浙大博士生刘汉唐带你回顾图像分割的经典算法

AI科技评论按:图像语义分割是 AI 领域中一个重要的分支,是机器视觉技术中关于图像理解的重要一环。近年的自动驾驶技术中,也需要用到这种技术。车载摄像头探查到图...

4005
来自专栏算法channel

@all: 新浪 机器学习算法岗 面试实录

二面面试官来了。是个算法大佬。是个专门做算法的。直接手出题,他说时间不多,就让我说思路。

1772
来自专栏机器之心

构建深度神经网络,我有20条「不成熟」的小建议

在我们的机器学习实验室中,我们已经在许多高性能的机器上进行了成千上万个小时的训练,积累了丰富的经验。在这个过程中,并不只有电脑学习到了很多的知识,事实上我们研究...

1161

扫码关注云+社区

领取腾讯云代金券