Universal adversarial perturbations(翻译,侵删)

Universal adversarial perturbations(通用对抗扰动)

原文链接 https://www.researchgate.net/publication/309460742_Universal_adversarial_perturbations

摘要

考虑到一个顶尖的深度神经网络分类器,我们展示了一个通用(图像不可知)和非常小的扰动向量的存在,它会英气自然的图片,以一个很高的置信度被误分类。我们提出了一个系统的算法来计算通用扰动,来展示顶尖的深度神经网络对于这类扰动的高度的脆弱性,然而对人眼具有不可察觉性。我们进一步实验分析了这些通用扰动并且显示,特别的,他们在神经网络上泛化的非常的好。通用扰动的存在揭示了分类器高维决策边界之间的重要几何相关性。进一步强调了安全威胁,输入空间上的单一方向,攻击者可以容易的暴露类攻击在多数的自然图片上的分类器1

1. 介绍

我们能够找到一个单一的小的图片扰动,可以在所有的自然图片上,欺骗一个顶尖的深度神经网络分类器?我们在这篇文章中显示了这样的一个不可察觉的通用扰动向量的存在,这个扰动向量导致了自然的图片以一个很高的概率被误分类。特别的,通过添加这样的一个不可察觉的扰动到自然图片上,深度神经网络评估的标签以很高的置信度被改变了(见图1)。这个扰动称为通用,因为他们是图像不可知。这些扰动的存在是一个问题,当分类器被部署到真实的世界(可能是敌对)的环境,因为他们被暴露给了攻击者类破坏分类器。实际上,扰动过程涉及到,仅仅添加一个非常小的扰动到所有的自然图片,并且可以被攻击则在真实世界的环境中相对直接的实现,然而却相对困难来检测,因为这样的扰动非常的小,并且并没有显著的影响数据分布。通用对抗扰动的存在进一步揭示了关于深层神经网络决策边界拓扑结构的新见解。我们总结了这篇文章的主要的贡献,如下:

  • 我们显示了对于顶尖的深度神经网络,通用图片不可知的扰动的存在。
  • 我们提出了一个算法来寻找这样的扰动,这个算法在一系列的训练点上寻找一个通用的扰动,通过累加原子扰动向量进行,发生相继的数据点到分类器的决策边界。
  • 我们展示了通用扰动有一个显著的泛化属性,来自一个相当小的训练数据点的扰动可以以一个很高的置信度欺骗新的图片
  • 我们展示了这样的扰动不只是在图片上通用,也在深度神经网络上泛化。这样的扰动因此被称为通用,同时相对于数据和网络架构
  • 我们解释和分析了深度神经网络对于通用扰动的高度脆弱性,通过检查决策边界不同部分的几何相关性。

图片分类器的鲁棒性对于结构化和非结构化扰动,最近吸引了许多的关注。结果深度神经网络架构在挑战性的视觉分类基准上的令人印象深刻的表现,这些分类器被证明对于扰动具有高度的脆弱性。在19,这样的网络被证明对于小的和经常不可察觉的添加了对抗扰动,具有不稳定性。这种小心构造的扰动,或者通过解决一个优化问题,或者通过单步的梯度上升。产生一个扰动来欺骗一个特定的数据点。这些对抗扰动的一个有趣的特点是他们对于数据点的内在的依赖性:扰动被特别的构造对于每个数据点。结果是,计算一个对于一个新的数据点计算一个对抗扰动需要从头解决一个数据以来的优化问题。这和这篇文章提到的通用扰动不同,我们寻找一个单个扰动向量来欺骗网络在大多数的自然图片。扰动一个新的数据点,之后只需要涉及添加通用扰动到这个图片上(不需要解决一个优化问题或者梯度计算)。最后,我们强调了我们的通用扰动的概念不同于19所研究的生成对抗扰动,在MNIST任务上计算的扰动哦,被证明可以很好的泛化到其他的模型。确实,我们检查了通用样本的存在,对于大多数属于数据分布的数据点是常见的。

图1:当添加到一个自然图片,一个通用扰动的图片引起图片被深度神经网络以很高的置信度被误分类。左图:原始自然图片。标签在每一个箭头的顶部显示。中图:通用扰动。右图:扰动图片。评估标签在每一个箭头的顶部显示。

2. 通用扰动

在这个部分,我们形式化通用扰动的概念,并且提出一个方法来评估这类扰动。设 μ \mu μ为图片在 R d \mathbb{R}^d Rd上的分布, k ^ \hat{k} k^为一个分类函数对于每个图片 x ∈ R d x \in \mathbb{R}^d xRd等评估标签 k ^ ( x ) \hat{k}(x) k^(x).这篇文章的主要关注点在于寻找扰动向量 v ∈ R d v \in \mathbb{R}^d vRd,来欺骗分类器 k ^ \hat{k} k^,在从 μ \mu μ抽样的大多数的所有数据点。也就是,我们虚招一个向量 v v v满足
k ^ ( x + v ) ≠ k ^ ( x )   f o r " m o s t " x ∼ μ \hat{k}(x + v) \neq \hat{k}(x) \, for "most" x \sim \mu k^(x+v)=k^(x)for"most"xμ
我们将这样的一个扰动为通用,因为它表示了一个固定的图像不可知扰动,可以引起标签的改变,对于大多数从数据分布 μ \mu μ中抽样的图片。我们在这里关注数据分布 μ \mu μ表示自然图片的集合,因此包含一个巨大的可变性。在这个背景下,我们检查了小的通用扰动(以 L p L_p Lp范数 p ∈ [ 1 , ∞ ] p \in [1, \infty] p[1,]),可以误分类大多数的图片。因此,目标是找到 v v v满足下面的两个约束:
1. ∥ v ∥ p ≤ ξ 2. P ⁡ x ∼ μ ( k ^ ( x + v ) ≠ x ^ ) ≥ 1 − δ \begin{aligned} \quad 1.& \|v\|_p \leq \xi \\ \quad 2.& \underset{x \sim \mu}{\operatorname{\mathbb{P}}} (\hat{k}(x + v) \neq \hat{x}) \geq 1 - \delta \end{aligned} 1.2.vpξxμP(k^(x+v)=x^)1δ
参数 ξ \xi ξ控制扰动向量 v v v的规模, δ \delta δ量化希望欺骗的比率,对于来自分布 μ \mu μ抽样的图片。

算法. 设 X = { x 1 , ⋯   , x m } X = \{x_1, \cdots, x_m\} X={ x1,,xm}是来自分布 μ \mu μ抽样的图片。我们所提出的算法寻找一个通用扰动 μ \mu μ,满足 ∥ v ∥ p ≤ ξ \|v\|_p \leq \xi vpξ,并且欺骗大多数的在 X X X中的数据点,该算法在数据点 X X X上进行迭代,逐渐的建立通用扰动,如图2所示。在每次的迭代中,最小的扰动 Δ v i \Delta v_i Δvi,发送当前的扰动点, x i + v x_i + v xi+v,到分类器的决策边界,被计算,并且累加到当前的通用扰动实例。更多的细节,提供当前的通用扰动 v v v不能欺骗数据点 x i x_i xi,我们寻找额外的 Δ v i \Delta v_i Δvi具有最小的范数,来允许欺骗数据点 x i x_i xi,通过解决如下的优化问题:
Δ v i ← arg min ⁡ r ∥ r ∥ 2   s . t . k ^ ( x i + v + r ) ≠ x i ^ (1) \Delta v_i \leftarrow \underset{r}{\operatorname{arg\,min}} \|r\|_2 \, s.t. \hat{k}(x_i + v +r) \neq \hat{x_i} \tag{1} Δvirargminr2s.t.k^(xi+v+r)=xi^(1)
图2:示意图代表所提出的算法用来计算通用扰动。这这幅图中,数据点 x 1 , x 2 , x 3 x_1, x_2, x_3 x1,x2,x3是强加的,分类区域 R i \mathscr{R}_i Ri(例如,常量评估标签)以不同的颜色显示。我们的算法通过累加顺序最小扰动,将当前的扰动点 x i + v x_i + v xi+v,发送到相应的决策区域外面。

为了确保限制 ∥ v ∥ p ≤ ξ \|v\|_p \leq \xi vpξ满足,通用扰动的更新进一步投影到 L p L_p Lp,半径 ξ \xi ξ,中心点在0.也就是,让 P p , ξ P_{p, \xi} Pp,ξ为投影操作,定义如下:
P p , ξ ( v ) = arg min ⁡ v ′ ∥ v − v ′ ∥ 2 s u b j e c t   t o   ∥ v ′ ∥ p ≤ ξ P_{p, \xi}(v) = \underset{v^\prime}{\operatorname{arg\,min}} \|v - v^\prime\|_2 \quad subject \, to \, \|v\prime\|_p \leq \xi Pp,ξ(v)=vargminvv2subjecttovpξ
然后,我们的更新规则为, v ← P p , ξ ( v + Δ v i ) v \leftarrow P_{p, \xi}(v + \Delta v_i) vPp,ξ(v+Δvi),几个传给数据集 X X X,来改善通用扰动的质量。当经验“欺骗率”在数据集 X v : = { x 1 + v , ⋯   , x m + v } X_v := \{x_1 +v, \cdots, x_m + v\} Xv:={ x1+v,,xm+v}超过了目标阈值 1 − δ 1 - \delta 1δ,算法终止。也就是,我们停止我们的算法当:
E r r ( X v ) : = 1 m ∑ i = 1 m 1 k ^ ( x i + v ) ≠ x i ^ ≥ 1 − δ Err(X_v) := \frac{1}{m} \sum_{i = 1}^m 1_{\hat{k}(x_i + v) \neq \hat{xi}} \geq 1 - \delta Err(Xv):=m1i=1m1k^(xi+v)=xi^1δ
算法细节在算法1.有趣的事,实践中,数据点 X X X的个数 m m m不需要足够的大来计算一个通用的扰动,对整个分布 μ \mu μ都有效。特别的,我们设置 m m m比训练点的数据量小(见部分3)

所提出的算法涉及公式1的 m m m实例,对于每个类别。虽然优化问题不是凸的,当 k ^ \hat{k} k^不是一个标准的分类器(例如,一个深度神经网络),几个有效的估计方法应已经设计来解决这个问题。为了它的有效性,我们使用如下的步骤。值得注意的是,算法1的目标不是寻找一个最小的通用扰动,来欺骗大多数的数据点,来自分布的抽样,而是寻找一个扰动有充分小的范数。特别的,不同的随机洗牌对于数据集 X X X自然的导致了一个多样性的通用扰动 v v v集合,满足需要的限制。提出的算法一次可以被利用来生成多个通用扰动对于一个深度神经网络(见下一个部分,看可视化样本)

3. 对于深度网络的通用扰动

我们现在分析了顶尖的深度神经网络分类器对于通用扰动的鲁棒性,使用算法1

在第一个实验中,我们接触了评估的通用扰动对于不同的最近的深度神经网络在ILSVRC 2012验证集(50000张图片),并且报告了欺骗比率,也就是图片标签被改变的比率,当使用我们的通用扰动扰动的时候。结果报告, p = 2 p = 2 p=2 p = ∞ p = \infty p=。相应的设置 ξ = 2000 \xi = 2000 ξ=2000 ξ = 10 \xi = 10 ξ=10.这些数字值被选择,为了获得一个扰动,范数比图片的范数明显的小,以至于这个扰动是不可见的,当添加到自然的图片上2。结果在表1.每一个结果都是在数据集 X X X上,用来计算扰动,也在验证集上(没有使用在通用扰动的计算过程上)。观察所有之前的工作,通用扰动获得了非常高的欺骗率在验证集上。特别的,用CaffeNet和VGG-F就散的通用扰动欺骗了超过90%的验证集(对于 p = ∞ p = \infty p=。换句话说,对于验证集上的任何自然图片,仅添加我们的通用扰动欺骗了9/10的分类器。结果不仅精是这类架构,我们也可以发现通用扰动引起了VGG,GoogleNet和ResNet分类器在自然的图片上,以大约80%的边缘被分类错误。这个结果有惊喜的成分,因为他们展示了单个通用扰动向量的存在性,可以引起自燃图片以很高的概率被分类错误,同时对于人类具有不可察觉行。为了验证后面的申明,我们在图3显示了可视化的扰动图片的样本,这里GoogLeNet结构被使用。这些图片或者是来自ILSVRC 2012验证集上,或者是使用一个移动手机摄像头拍摄的。可以观察到在大多数的情况下,通用扰动具有不可察觉行,这个强有力的图像不可知扰动能够以很高的置信度误分类任何的图片,对于顶尖的分类器。我们参考原始(未受干扰的)图像的补充材料,以及它们的真实的标签。我们也参考了视频,在一个补充材料对于真实世界样本,在一个智能手机上。在图4,我们可视化了通用扰动对应于不同的网络。值得注意的是这类的通用扰动不是独特的,因为许多的不同的通用扰动(所有满足两个要求的约束)对于同样的网络可以被生成。在图5,我们可视化了5个不同的通用扰动,使用不同的随洗牌的数据集 X X X,获得的。可以观察到,这类的扰动是不同的,尽管他们展示了相似的模式。此外可以确认,计算正规化的内层的乘积,在两对扰动图片,因为正规化的内积不会超过0.1,这个表明了可以找到多样的通用扰动。

CaffeNet VGG-F VGG-16 VGG-19 GoogLeNet ResNet-152
L 2 L_2 L2 X 85.4% 85.9% 90.7% 86.9% 82.9% 89.7%
Val. 85.6% 87.0% 90.3% 84.5% 82.0% 88.5%
L ∞ L_\infty L X 93.1% 93.8% 78.5% 77.8% 80.8% 85.4%
Val. 93.3% 93.7% 78.3% 77.8% 78.9% 84.0%

表1: 在数据集 X X X和验证集上的欺骗率

图3: 扰动图片和他们对应的标签的样本。前8张图片属于ILSVRC 2012验证集,后面4张图片是用一个移动手机摄像头拍摄的,见补充菜量对于原始的图片。

图4: 对于不同的深度神经网络架构的通用扰动,生成的图片使用 p = ∞ ,   ξ = 10 p = \infty, \, \xi = 10 p=,ξ=10,为了可视化像素值被缩放了。

图5: 对于GoogLeNet架构的多样的通用扰动。这五个扰动使用了一个随机的洗牌在数据集 X X X上。注意,标准化内积对于任何的一对通用扰动不会超过0.1,这强调了这类扰动的多样性。

上面的通用扰动是在一个数据集 X X X上计算的,这个数据集来自10000张训练集的图片(例如,平均每类别10张),我们现在检查数据集 X X X大小的影响,对于通用扰动的质量。如图6所示,在验证集上获得的对于不同大小的 X X X对于GoogLeNet的欺骗率。注意到,对于包含了只有500张图片的一个数据集 X X X,我们可以在验证集上欺骗30%的图片。当与类别的数量在ImageNet(1000)上比较时,结果更加的显著,它显示了我们可以欺骗一个大的没有见过的图片数据集,甚至当使用每个类别少于一张图片的数据集 X X X.使用算法1计算出的通用扰动,因此有一个显著的泛化能力在没有见过的数据点上,可以在一个非常小的训练图片的数据集上计算出来。

图6:每个大小的 X X X在验证集上的欺骗率。注意即使在一个非常小的数据集 X X X(相比于训练集和验证集)计算出来的扰动,在验证集上欺骗率是非常大的。

跨模型通用性. 虽然计算出来的通用扰动个对于没有见过的数据点是通用的,我们现在检查他们的跨模型通用性。也就是,我们研究了针对一个特殊的架构(例如,VGG-19)计算出来的通用扰动,对于另一个架构(例如:GoogLeNet)的有效程度。表2显示了一个矩阵总结了这类的扰动在6个不同的架构之间的通用性。对一个每个架构,我们计算了一个通用扰动并且正对所有的其他架构给出了欺骗率,我们在表2报告了这些在行上。可以观察到,对于一些架构,通用扰动可以非常好的泛化到其他的架构。例如:用VGG-19网络计算出来的通用扰动在其他所有测试的架构上有一个超过53%的欺骗率。这个结果显示了我们的通用扰动在某种程度上,双重通用,应为他们在数据点和非常不同的架构之间的泛化性。值注意的是,在19,对抗扰动之前被展示的泛化的非常的好,在某种程度上,跨不同的神经网络,在MNIST问题行。然而,我们的结果是不同的,因为我们展示了在ImageNet数据集上的不同的架构的通用扰动的泛化性。结果实现了这类的扰动具有实际意义,因为他们在夸数据点和架构泛化。特别的,为了欺骗一个新的图片在未知的网络上,一个简单的额添加一个通用扰动,在VGG-19上计算出来的,很有可能误分类数据点。

VGG-F CaffeNet GoogLeNet VGG-16 VGG-19 ResNet-152
VGG-F 93.7% 71.8% 48.4% 42.1% 42.1% 47.4%
CaffeNet 74.0% 93.3% 47.7% 39.9% 39.9% 48.0%
GoogLeNet 46.2% 43.8% 78.9% 39.2% 39.8% 45.5%
VGG-16 63.4% 55.8% 56.5% 78.3% 73.1% 63.4%
VGG-19 64.0% 57.2% 53.6% 73.5% 77.8% 58.0%
ResNet-152 46.3% 46.3% 50.5% 47.0% 45.5% 84.0%

表2:通用扰动在不同网络之间的泛化性能。百分比表示了欺骗率。行表示架构用来计算通用扰动,列表示给出的架构的欺骗率。

通用扰动效果可视化. 为了深入了解通用扰动的影响在自然图片上,我们现在可视化在ImageNet验证集上标签的分布。特别的,我们建立了一个有向图 G = ( V , E ) G = (V, E) G=(V,E),顶点表示标签,有向边 e = ( i → j ) e = (i \rightarrow j) e=(ij)表示了类别 i i i表示的图片中的大多数被欺骗为标签 j j j,当运用通用扰动。边的存在 i → j i \rightarrow j ij因此表明了优先欺骗的标签对于图片类别 i i i j j j.我们构建了这个图针对GoogLetNet,并且由于空间限制在补充部分可视化了整个图,图的可视化显示了一个非常的拓扑结构。特别的,图是不相交分量的并集,所欲的边在一个分量中几乎连接到了一个目标标签。见图7,两个连接分量的证明。这个可视化清晰的证明了几个主导类别的存在性,通用扰动几乎是的自然图片被分类到这个类别。我们假设这些主导标签在图片的空间上占据了很大的区域,因此代表了一个好的候选标签,对于欺骗的大多数的图片。注意到,这些主导的标签是通过算法1自动的发现的,在计算扰动时不需要先验地施加。

图7:两个连通分量的图 G = ( V , E ) G = (V, E) G=(V,E),顶点时标签集合,有向边 i → j i \rightarrow j ij表示类别 i i i中大多数的图片被欺骗为类别 j j j

通用扰动的微调. 我们现在检查是使用扰动图片微调网路的效果。我们使用VGG-F架构,基于一个修改的训练集来微调这个网络,通用的扰动被添加到这个干净的训练集样本中:对于每个训练数据点,一个通用的扰动,有0.5的可能性添加,原始图片有0.5的可能性保留3.为了考虑通用扰动的多样性,我们预先计算了一个池子,10个不同的通用扰动,并且随机的从这个池中添加扰动到训练样本。网络通过5个额外的轮次在修改的训练集上训练,进行微调。为了评估微调在网络鲁棒性上的影响,我们计算了一个新的通用扰动,对于微调的网络(使用算法1, p = ∞ ,   ξ = 10 p = \infty, \, \xi = 10 p=,ξ=10),给出了网络的欺骗率。在5个额外的轮次后,在验证集上的欺骗率为76.2%,与原来的网络(93.7%,见表1)有一个改善4。除了改善,微调的网络依然对于小的通用扰动具有脆弱性。因此我们重复上面的步骤(例如,计算10个通用扰动的池子,对于微调的网络,基于修改的训练集上5个额外轮次修改的新网络的微调),我们获得了一个新的欺骗率80.0%。一般的,这个步骤的重复,固定的次数,没有产生任何的改善,超过76.2%的欺骗率,经过一步微调获得的。因此,虽然,微调网络导致了轻微的鲁棒性的改善,我们观察到简单的解决方法不能完全的免疫小的扰动。

4. 对于通用扰动的脆弱性的解释

这个部分的目标是分析并且解释深度神经网络分类器对于通用扰动的高度的脆弱性。为了理解独特的通用扰动的特性,我们首先比较了这类的扰动和其他类型的扰动,命名为i)随机扰动,ii)对抗扰动使用一个随机采样(使用DF和FGS方法,在[11]和[5]),iii) 在数据集 X X X上的对抗扰动的总和,iv)图片的平均值(或者ImageNet 偏差)。对于每个扰动,我们绘制了相变图在图8,展示了在验证集上 L 2 L_2 L2范数的欺骗率,不同的扰动范数通过缩放每个扰动和一个乘法因子,来获得目标范数,注意到通用扰动,使用 ξ = 2000 \xi = 2000 ξ=2000,也相应的缩放。

图8: 不同扰动的欺骗率的比较,在Caffenet架构上实施的实验。

可以观察到,所提出的通用扰动可以快速的达到一个非常高的欺骗率,即使当扰动被限制在非常小的范数下。例如,使用算法1计算的通用扰动达到了一个85%的欺骗率, L 2 L_2 L2范数受限到 ξ = 2000 \xi = 2000 ξ=2000,而其他扰动对可比范数的影响要小得多。特别的,随机向量冲半径2000的球中标准分布采样,只欺骗了验证集上的10%。通用和随机扰动的不同,表明了通用扰动探索了几何相关性,在分类器决策边界的不同部分。事实上,如果决策边界的方向在邻近的不同的数据点,是完全不相关的(对于决策边界的距离的独立性),最好通用扰动范数与随机扰动比较。注意到,后者的量是好理解的(见4),因为随机扰动的范数需要精确欺骗一个特殊数据点,行为 Θ ( d ∥ r ∥ 2 ) \Theta(\sqrt{d} \|r\|_2) Θ(d r2) d d d是输入空间的维度, ∥ r ∥ 2 \|r\|_2 r2是数据点和决策边界之间的距离(相等的,最小对抗扰动的范数)。对于考虑的ImageNet分类任务,这个量等于 d ∥ r ∥ 2 ≈ 2 × 1 0 4 \sqrt{d} \|r\|_2 \approx 2 \times 10^4 d r22×104,对于大多数的数据点,比通用扰动( ξ = 2000 \xi = 2000 ξ=2000)至少大一个数量级。随机和通用扰动的本质的不同,表明了,我们所探索的几何决策边界的冗余。

对于验证集上每一张图片 x x x,我们计算了对抗扰动向量 r ( x ) = arg min ⁡ r ∥ r ∥ 2 s . t . k ^ ( x + r ) ≠ ( ^ k ) ( x ) r(x) = \underset{r}{\operatorname{arg\,min}} \|r\|_2 \quad s.t. \hat{k}(x + r) \neq \hat(k)(x) r(x)=rargminr2s.t.k^(x+r)=(^k)(x).很容易看到 r ( x ) r(x) r(x)是分类器决策边界在 x + r ( x ) x + r(x) x+r(x)的范数。向量 r ( x ) r(x) r(x)因此不活了决策边界在数据点 x x x周围的局部几何。为了量化分类器决策边界不同区域的相关性,我们定义了如下的矩阵。
N = [ r ( x 1 ) ∥ r ( x 1 ) ∥ 2 , ⋯   , r ( x 1 ) ∥ r ( x 1 ) ∥ 2 ] N = \left[\begin{matrix}\frac{r(x_1)}{\|r(x_1)\|_2}, \cdots, \frac{r(x_1)}{\|r(x_1)\|_2}\end{matrix}\right] N=[r(x1)2r(x1),,r(x1)2r(x1)]
在验证集 n n n个数据点附近的决策边界的范数向量。对于二分类器,决策边界是超平面, N N N的秩为1,因为所有的范数向量是共线的。为了捕捉更多的一般性的分在分类器的决策边界的相关性,我们计算了矩阵 N N N的奇异值,图9显示了CaffeNet架构的矩阵 N N N的奇异值。我们进一步在同一个图片上,显示了通过在单位球衫随机的标准采样的 N N N的列,获取的奇异值。可以观察到,后者的奇异值有一个缓慢的下降, N N N的奇异值下降的很快,这确认了深度网络在决策边界上的大的相关性和冗余。更为精确,这表明了了一个子空间 S S S,维度 d ′ ( d ′ ≪ d ) d\prime(d\prime \ll d) d(dd),限制了大多数的范数向量到自然图片的周围区域的决策边界。我们假设通用扰动的存在欺骗了许多自然图片,主要是因为这样的一个低维子空间的存在,这个空间捕捉了决策边界不同区域的相关性。实际上,这个子空间"搜集"范数到不同区域的决策边界,属于这个子空间的扰动因此很有可能欺骗数据点。为了验证这个假设,我们选择了一个随机向量,范数 ξ = 2000 \xi = 2000 ξ=2000,属于空间 S S S,由前100个奇异向量构成,并且计算它的欺骗率在不同的图片数据集(例如,一个图片数据集,还没有被使用计算SVD),这类的扰动可以欺骗将近38%的这些图片,因此表明了广寻子空间 S S S的随机方向,明显优于随机扰动(这类的扰动只能欺骗10%的数据)。图10证明了子空间 S S S捕捉到的决策边界的相关性。值得进一步注意的是,低维子空间的存在解释了图6获得的通用扰动的惊人的泛化性质,用非常少的图片建立一个相对泛化的通用扰动。

图9: 矩阵 N N N的奇异值,包含了决策边界的范数向量

图10: 低纬子空间 S S S包含的在自然图片区域周围的决策边界的范数向量的证明。为了证明,我们强加了3个数据点 { x i } i = 1 3 \{x_i\}_{i=1}^3 { xi}i=13,对抗扰动是 { r i } i = 1 3 \{r_i\}_{i=1}^3 { ri}i=13,将相应的点送到决策边界 { R i } i = 1 3 \{\mathscr{R}_i\}_{i=1}^3 { Ri}i=13,显示了。注意 { r i } i = 1 3 \{r_i\}_{i=1}^3 { ri}i=13在子空间 S S S

不像上面的实验,所提出的算法不需要选择一个子空间的随机向量,而是选择一个指定的方向,来最大化总体的欺骗率。这解释了使用随机向量策略在子空间 S S S获得的欺骗率和算法1的差距。

5. 总结

我们显示了小的通用扰动的存在,这些扰动可以在自然的图片上欺骗顶尖的分类器。我们提出了一个迭代算法类生成统一扰动,并且强调了几个这类扰动的属性。特别的,我们显示了通用扰动可以在不同的分类模型之间泛化,导致了双重的通用(图像不可知,网络不可知)。我们进一步解释了这类扰动的存在,在决策边界的不同区域的相关性。这提供了思考关于深度网络决策边界的几何学,有利于更好的理解这类系统。理论分析了决策边界不同部分的几何相关性,将会是未来研究的主题。

致谢

我们非常感谢NVIDIA公司的支持,为了这个研究捐助了Tesla K40 GPU的使用。

A. 附录

图11. 显示了原始图片和相对应的实验的图片3,图片12,可视化图,显示了原始和扰动的标签的关系(更多细节见部分3)

图11: 原始图片。前两行是随机从验证集选择的图片,最后一行是个人从移动手机摄像头拍摄的图片

图12: 表示了原始和扰动的标签之间关系的图。注意到“主流标签”系统的出现。为了可读性可以放大。为了可读性孤立的点被去除了。


  1. 在一个智能手机手机上证明通用扰动的效果,可以点击这里 ↩︎

  2. 为了比较,一张图片的平均 L 2 L_2 L2 L ∞ L_\infty L被设置为相应的 ≈ 5 × 1 0 4 \approx 5 \times 10^4 5×104 ≈ 250 \approx 250 250 ↩︎

  3. 在微调的实验中,我们使用了一个轻微的修改概念的通用扰动,扰动向量 v v v的方向对于所有的数据点是固定的,规模是适应的。也就是,对于每个数据点 x x x,我们考虑扰动点 x + α v x + \alpha v x+αv α \alpha α是一个最小的系数,可以欺骗分类器。我们观察到这个反馈策略比起简单的将通用扰动添加到所有的训练点上的策略不太容易过拟合。 ↩︎

  4. 微调的过程更多的是导致一个少数的在验证集上错误率的上升,这可能是由于扰动数据的一个轻微的过拟合。 ↩︎

你可能感兴趣的:(Examples),深度学习,tensorflow,pytorch,安全)