深度卷积 络中产生黑盒攻击的程序性噪声对抗样本

引用

Kenneth T. Co, Luis Mun?oz-Gonza?lez, Sixte de Maupeou, and Emil C. Lupu. 2019. Procedural Noise Adversarial Examples for Black-Box Attacks on Deep Convolutional Networks. In 2019 ACM SIGSAC Conference on Computer and Communications Security (CCS ’19), November 11–15, 2019, London, United Kingdom. ACM, New York, NY, USA, 15 pages.

摘要

1 介绍

· 我们展示了 DCN 在计算机视觉任务中对程序噪声扰动的脆弱性。这些函数表征了具有高普适闪避的噪声模式分布,并且在小数据集上优化的普遍扰动类推到 10 到 100 倍大的数据集。据我们所知,这是第一个模型未知的通用对抗性扰动的黑盒生成。

· 我们提出贝叶斯优化作为增强黑盒攻击的有效工具。它可以使用我们的程序噪声来制作低价的通用的和特定于输入的黑盒攻击。它将随机参数选择的查询效率提高了 5 倍,并且始终优于流行的 L-BFGS 优化算法。针对现有的查询效率黑盒攻击,在保持有竞争力的成功率的同时,将查询效率提高了 100 倍。

· 我们的程序噪声 UAPs 似乎利用了 DCN 中的低级特征,并且该漏洞可能被利用来创建跨应用程序的通用对抗性扰动。我们还强调了对抗性训练的缺点,并提出了与输入无关的防御措施,以降低模型对于对抗性扰动的敏感性。

2 攻击分类

我们的研究侧重于测试时的攻击,也称为闪避攻击。为了确定攻击在实际环境中的可行性和影响,我们根据三个因素对它们进行分类🙁a)其扰动的普遍性,(b) 对手所需的访问和知识,以及(c)期望的输出。

2.1 普遍性

对抗性扰动的普遍性是指它们应用于整个数据集或其他模型的能力,可以用可转移性和通用性来描述。可转移性是指,当扰动应用于同一输入时,扰动可以欺骗多个模型。相同的对抗性输入会降低多个模型的性能,并使通过代理模型进行黑盒攻击成为可能。通用性是指,相同的对抗性扰动可以成功应用于大部分输入数据集以欺骗分类器。跨模型通用扰动既是可转移的又是通用的,即它们可以泛化大部分输入和跨模型。

2.2 知识程度

对于闪避攻击,我们假设攻击者可以访问测试输入和输出。根据对手的知识和能力范围,攻击可以大致分为:白盒、灰盒或黑盒 。在白盒设置中,攻击者拥有模型架构、参数和训练数据的完整知识。在灰盒设置中,对手可以构建类似规模的代理模型,并可以访问与用于训练目标系统的训练数据类似的训练数据。在黑盒设置中,对手不了解目标模型,也无法访问代理数据集,与目标模型的唯一交互是查询。

2.3 期望输出

对手的目标根据应用程序和利用系统获得的预期回 而有所不同。通常,攻击被视为有针对性或无针对性。在有针对性的攻击中,对手的目标是将特定的输入子集误分类为他们选择的输出。在非针对性攻击中,攻击者旨在对输入的子集造成分类错误。

3 程序性噪音

我们引入程序性噪声函数以在黑盒设置中生成对抗样本。程序性噪声函数是用于生成图像模式的算法技术,旨在快速评估、扩展到大尺寸并且具有低内存占用。

3.1 动机

我们假设在视觉上表现出与 UAP 相似的模式的程序噪声也可以充当 UAP。程序噪声易于实现, 计算速度快,并且不需要构建、训练或访问 DCN 来生成 对抗性扰动的额外开销。程序噪声的参数化更简单,这会导致搜索空间减少,从而可以实现查询有效的黑盒攻击,这在大规模应用中特别有用 。

3.2 Perlin 噪声

Perlin 噪声有一个简单的实现,这使得它适用于廉价的黑盒攻击,因为它只由几个参数控制。

二维 Perlin 噪声的正式构造:用(i, j)定义格子正方形的四个顶点,其中 i = {|x|, |x| +1} 且 j= {|y|, |y| +1}。四个梯度由 qij = V[Q[Q[i] + j]] 给出,其中预先计算过的数组 Q 和 V ,分别包含一个伪随机排列和伪随机单位梯度向量。四个线性函数 qij(x ? i, y? j) 由s(x ? |x|) 和 s(y ? |y|)进行双线性插值, 其中 s(t) = 6t_5 ? 15t_4 + 10t_3 ,从而得到坐标(x, y)处的 Perlin 噪声值p(x, y)。

Perlin 噪声函数有几个参数来确定噪声的视觉外观。在我们的实现中,波长λx ,λy 和八度音阶 Ω 对视觉变化的贡献最大。参数为 δper = {λx ,λy , Ω} 的点 (x, y) 处的噪声值变为

为了实现更清晰的视觉模式,我们使用带有附加频率参数 φsine 的正弦颜色图。噪声值 p 的颜色图由 C(p) = sin(p · 2π?sine)定义。正弦函数的周期性在图像中创建了不同的带,以实现高频率的边缘。在 x, y 点产生的噪声生成函数 Gper 被定义为我们的 Perlin 噪声函数和正弦颜色图的组合, G_per(x,y) = C(S_per(x, y)) = sin((S_per(x, y) ·2π?sine) ,组合参数 δper = {λx ,λy , Ω}。

3.3 Gabor 噪声

Gabor 噪声比其他程序噪声函数具有更准确的频谱控制,其中频谱控制是指控制噪声外观的能力,由其沿每个频带的能量测量。Gabor 噪声可以在空间中的任何一点快速评估,并且只用几个参数来表征,例如方向、频率和带宽。

其中 δ是高斯的宽度,λ 和 ω是谐波函数的周期和方向。

我们添加了一个额外的离散参数 ξ 来控制 Gabor 噪声的各向同性。 ξ = 1 会导致各向异性噪声,其指向一个方向。逐渐增大的 ξ 使其在所有方向上都更加均匀。实施这些更改提供了更新的公式

为了获得高频模式并去除不需要的低对比度振荡,我们对 Gabor 噪声的方差谱进行归一化。 我们尝试将正弦颜色映射应用于 Gabor 噪声,但它掩盖了 Gabor 核结构。类似地,我们尝试对 Perlin 噪声的方差谱进行归一化,但这导致图像边缘很少且没有明显的模式。具有归一化方差谱的最终噪声生成函数 Gper 具有参数 δ_gab= {σ,λ,ω,ξ}。

4 对程序噪音的脆弱度

在本节中,我们凭经验证明了不同 DCN 架构对 ImageNet 分类任务的程序噪声的脆弱性。我们展示了随机选择的程序噪声扰动作为针对这些分类器的有效 UAP。程序噪声 UAP 大大超过了基线均匀随机噪声,平均而言,在不同模型中超过一半的数据集上是通用的,并且在考虑特定于输入的闪避时,可以在超过 72% 的数据集上欺骗每个模型。

4.1 实验设置

使用的数据是来自 ILSVRC2012 ImageNet 分类任务验证集的 5,000 张随机图像。

模型:使用预训练的四种不同的 DCN 架构,VGG-19、 ResNet-50、Inception v3、Inception ResNet v2(IRv2)。

扰动:Perlin 噪声的参数 λx , λy, ?sine 以及 Gabor 噪声的参数σ, λ 设为正且上限为图片长度d。ξ ∈ [1, 12] ,? ∈ [1, 4],ω ∈ [0, 2π] 。

度量:设模型输出为f,输入x∈X,扰动s,且ε>0, τ(x)是x的真实类别标签。最终指定输入的闪避率为

实验:扰动由 1000Gabor 噪声和 1000 个 Perlin 噪声生成,以及 10000 个随机扰动,每张图像进行 1000 次查询。

4.2 扰动的普遍性

程序性噪声扰动似乎既通用又可跨模型转移。图 2 表明模型对扰动的鲁棒性从低到高依次是:VGG-19、 ResNet-50、Inception v3、IRv2,然后是 IRv2ens。这并不奇怪,因为这些模型的泛化误差以相同的顺序出现,泛化误差越大表示模型鲁棒性越差。对抗性训练的集成模型,也针对对抗样本进行了强化,因此预计其影响较小。然而,集成对抗训练并没有完全消除程序噪声的影响。

Gabor 和 Perlin 噪声都具有更高的普遍性闪避率。在图 2a, 我们使用其在所有 10,000 次扰动中的普遍闪避率的中位数来表示随机噪声。程序噪声函数创建一个分布,其模式具有很高的普遍闪避率。表 1 在 Inception v3 上显示了一个示例,其中超过一半的 Perlin 噪声扰动在超过 57% 的数据集上实现了闪避。

总体而言,结果表明程序噪声扰动在所有模型中都充当 UAP。这是跨模型 UAP 的第一个黑盒生成,程序噪声使我们能够从具有高平均普遍闪避的分布中提取扰动。

4.3 模型对输入的敏感性

模型的灵敏度可能因输入数据集而异,我们用单个输入对所有扰动的平均灵敏度来衡量这一点。结果如图 2b 表明数据集的平均灵敏度对于所有模型和两个过程噪声函数都是双峰的。数据有两个不同的子集: 一个在右侧非常敏感,另一个在左侧对扰动非常不敏感。剩余的数据点均匀地分布在中间。这表明,从最敏感到最不敏感的模型与从最稳健到最不稳健的模型保持一致。在相同模型上两个程序噪声函数之间输入的平均灵敏度相关性很高,这表明两个程序噪声扰动对每个模型的输入组产生的影响非常相似。

我们考虑将我们的无目标黑盒攻击用作特定于输入的攻击的情况。表 2 表明 VGG-19 和 ResNet-50 特别脆弱,因为即使是随机噪声也会大大降低它们的性能。尽管 Inception 模型更健壮,但两种程序噪声扰动仍然实现了超过 72% 的闪避。虽然集成对抗训练提高了 IRv2 的鲁棒性,但它仍然没有减轻程序噪声攻击的影响。集成对抗训练的想法是将对抗训练集的生成与原始模型解耦,但这是有限的,因为它仅用于基于梯度的攻击。我们认为防御应该更加与输入无关,以避免必须针对所有类型的攻击进行训练。

对于给定的程序噪声扰动,我们将其顶部标签定义为导致错误分类最多的类标签。作为结果,仍然可以使用程序噪声来创建针对特定类别标签的通用目标 UAP。然而,我们可以针对的类别标签取决于程序噪声,并且通用针对性攻击的整体成功可能是有限的,因为它更难以使扰动同时具有通用性和针对性。

4.4 讨论

最近的工作表明,对抗样本利用了模型学习但人类无法理解的“非鲁棒性” 特征。UAP 很可能正在利用 DCN 学到的“通用”非鲁棒性特征。 程序噪声攻击专门作为具有自然高普遍闪避的无目标黑盒扰动。在进攻端,这可以用作大规模的无针对性的攻击,并在防御方面用作机器学习服务的标准测试。我们将在以下各节中扩展这一观点。

5 高效的黑盒攻击

在本节中,我们比较了针对特定输入攻击和通用攻击的几种黑盒优化技术,并表明贝叶斯优化是一种在此类黑盒攻击中选择参数的有效方法。

5.1 贝叶斯优化

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

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

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

5.2 通用黑盒攻击

实验 我们将贝叶斯优化与有限内存 BFGS (L-BFGS)进行比较,后者是一种常用于黑盒优化和机器学习的拟牛顿优化算法。由于程序噪声函数是不可微的,我们使用有限微分近似估计梯度。这种梯度近似类似于用于其他黑盒攻击的方法,但这里它应用于明显更小的搜索空间。当 L-BFGS 收敛时,可能收敛到局部最优值,我们用不同的随机初始点重新开始优化,在达到查询限制时停止并选择找到的最佳最优值。

我们在训练集 Xtrain 上设置了 1000 次通用闪避评估的最大查询限制。在贝叶斯优化的前 100 个查询内和 L-BFGS 的前 250 个查询内,两种算法都更快地收敛到它们的最优值。

结果 从训练集计算出的最佳程序噪声 UAP 可以很好地推广到更大的验证集,在 Perlin 噪声的验证集上始终达到 70% 或更多的普遍闪避,优于 Gabor 噪声,后者在验证集上平均有 58% 的普遍闪避率。

表 3 显示,贝叶斯优化在训练集上的通用闪避率和验证集上产生的通用闪避率方面优于 L-BFGS。贝叶斯优化、随机选择和用于 Gabor 噪声扰动的 L-BFGS 之间出现了类似的趋势。

5.3 输入特定的黑盒攻击

在本节中,我们将过程噪声用于特定于输入的黑盒算法。对手的目标是闪避数据集中尽可能多的输入,最大限度地提高 模型没有错误分类的输入的特定于输入的闪避率。这里的一个重要指标是这些攻击的查询效率,因为在实际场景中要求每个样本进行大量查询变得不切实际。

表 4 显示了贝叶斯优化达到了 91.6% 的高成功率, 在 100 个查询限制下,每次成功逃避平均只有 7 个查询。 这极大地将随机参数的查询效率提高了 5 倍,同时获得了相同的准确性。对于两个过程噪声函数,贝叶斯优化将平均查询效率比 L-BFGS 和随机参数选择提高 7 倍,同时保持了大于 83%的成功率。

贝叶斯优化等黑盒优化技术能够利用程序噪声的搜索空间大幅减少的优势,连同其自然的高普遍闪避,我们表明程序噪声会引起低代价但有效的无目标黑盒攻击,无论是特定于输入的还是通用的。

6 其他应用

在本节中,我们展示了程序噪声攻击如何通过攻击 YOLO v3 模型扩展到对象检测 DCN。然后,我们讨论如何利用 DCN 对低级特征的敏感性(如程序噪声攻击)可以推广到其他应用领域中的 DCN 通用攻击。

6.1 攻击目标检测

对象检测需要识别图像中对象的位置和类别。我们测试了我们对 YOLO v3 的攻击,我们使用召回率和精确率以及 mAP(mean average precision)作为我们的主要指标。在对象检测中,分类器预测边界框以识别对象的位置并为该框分配类标签。Intersection Over Union (IOU) 是预测边界框和真实边界框之间的交叉区域与联合区域的比值。通常设置一个阈值来确定什么 IOU 构成正分类。

程序噪声扰动显着降低了模型的 mAP,精度和召回率也下降了。同样,Perlin 噪声的平均性能优于 Gabor 噪声,但 Gabor 噪声的最小值较小。与均匀随机噪声相比,Perlin 和 Gabor 噪声对模型性能的影响更大。

在图 3 中, 对于所有类别的指标,我们可以观察到精度保持或降低,而召回率和 mAP 降低。一些扰动降低了所有三个指标,这表明这些因素一致地导致误 和漏 。 当扰动提高精度同时降低召回率和 mAP 时,噪声可能会掩盖对象,而不是将新对象引入图像。

在图 3, person 的指标遵循与所有类别的指标相似的趋势。但是,精度的提高与 Perlin 噪声引起的召回率和 mAP 的大幅下降相比,非常小。精度越高表示假阳性越少,而召回率的下降表示假阴性越多。这表明分类器总体上做出的预测较少,这意味着噪声掩盖了图像中的人。但对于不少其他类,所有指标都减少了,这表明存在许多误 和漏 。但是,因为这些标签在测试集中没有那么多的表示,也有三个类的这三个指标都得到了改进。高频模式会降低模型的性能指标,类似于我们观察到的图像分类器。较厚的 Gabor 噪声扰动相对于其他扰动减少了误 的数量。

6.2 图像之外的应用

未来的攻击可以利用 DCN 如何依赖组合低级特征,而不是理解输入数据中更困难的全局特征。自然的下一步是将这些想法应用于对语音识别和自然语言处理等感官应用程序的探索性攻击或敏感性分析。为了将我们的程序噪声攻击 框架扩展到其他应用程序,值得在语音识别和强化学习等领域的现有对抗样本中识别模式,以找到程序噪声的类似物。作为起点,可以通过发现最大化隐藏层差异的扰动或通过在 DCN 的早期层上使用特征可视化来推断模型学习的低级特征来找到这些模式。

7 初步防御

我们已经在表 2 中显示了针对基于梯度的攻击的整体对抗训练并没有显着降低我们的程序噪声攻击的特定于输入的闪避率。这表明这种防御不能很好地泛化, 因为用于对抗性训练的攻击不能充分代表对抗样本的整个空间。针对所有类型的对抗性攻击的训练在计算上会变得很昂贵,尤其是对于 ImageNet 这样的高维任务。因此,规范模型或结合特定领域知识的防御可能是更有效的策略。

DCN 对跨输入的对抗性扰动的弱点可能是由于它们的敏感性。因此,最小化小扰动影响的输入不可知防御可能会有效地降低模型的敏感性,而无需针对所有类型的攻击进行训练。作为初步调查,我们在这里简要地探索使用去噪来防御我们的程序噪声扰动的普遍性。

7.1 去噪

我们使用中值去噪重新训练 Inception v3 过滤器用作预处理步骤。对于此评估,我们使用与第 1 节相同的实验设置。我们测试去噪如何提高鲁棒性。 程序中存在的最小-最大振荡 ,尽管进行了降噪,但噪声扰动可能使噪声模式持续存在, 因为防御并没有完全减轻普遍闪避率。在不同的 l-norm 值中,与没有防御相比,去噪降低了中位数和平均普遍逃避率的一致数量。图 4 表明 Perlin 噪声的有效性降低远大于 Gabor 噪声,表明去噪似乎略微减轻了高频噪声模式的有效性。

8 结论

我们已经表明,用于图像分类的流行 DCN 架构在程序噪声扰动方面存在系统漏洞,Perlin 噪声 UAP 在非对抗训练模型中实现了更大的普遍闪避。程序噪声的这种弱点可用于设计有效的通用和特定于输入的黑盒攻击。我们通过贝叶斯优化增强的程序噪声攻击获得了具有竞争力的输入特定成功率,同时将现有黑盒方法的查询效率提高 10 倍以上。此外,我们表明程序噪声攻击也适用于用于对象检测的 YOLO v3 模型,该模型对 person 类具有混淆效果。

我们假设我们的程序噪声攻击利用了 DCN 敏感的低级特征。如果为真,这会对迁移学习的安全性产生令人担忧的影响,因为在为新任务重新训练模型时,通常会保留这些低级特征。通用攻击可以通过使用利用模型对低级功能的敏感性的 UAP 扩展到其他应用领域。我们已经表明,基于梯度的综合对抗性训练无法显著减少我们的程序性噪音攻击,建议未来的防御采取更多的输入不可知的方法。我们的工作促使需要进一步研究更直观和新颖的攻击框架,我们希望未来的工作将更深入地阐述跨模型普遍对抗扰动的性质,因为这些漏洞在输入和模型之间普遍存在,一个更正式的框架可以更好地解释为什么我们的程序性噪音攻击是有效的。

致谢

声明:本站部分文章内容及图片转载于互联 、内容不代表本站观点,如有内容涉及侵权,请您立即联系本站处理,非常感谢!

(0)
上一篇 2021年9月21日
下一篇 2021年9月21日

相关推荐