Boosting Adversarial Attacks with Momentum
用动量增强对抗攻击
深度神经网络对于对抗样本是脆弱的,对这些孙发提出了安全的担忧,因为潜在的严重的威胁。对抗样本作为一个重要的代理来评估深度学习模型的鲁棒性,在他们应用之前。然而,大多数存在对抗攻击只能欺骗一个黑盒模型以一个极低的成功率。为了解决这个问题,我们提出了一个更加广的类别,基于动量的迭代算法来增强对抗攻击。通过将动量项集成到攻击的迭代过程中。我们的方法可以稳定更新的方向,导致更具有迁移性的样本。为了进一步改善黑盒攻击的成功率,我们运用动量迭代算法,攻击一个集成的模型,并且表明了对抗训练的模型,有很强的防御能力,也对我们的黑盒攻击表现脆弱性。我们希望所提出的方法可以作为一个基准,对于评估各种深度模型和防御方法的鲁棒性。用这个方法,我们在NIPS 2017 无目标对抗攻击和有目标对抗攻击的比赛中获得了第一。
深度神经网络(DNNs)对于对抗样本是脆弱的,这些对抗样本是通过添加,小的人类不可察觉的噪声到一个合法的样本上,但是使得一个模型输出攻击期望的不准确的预测。它对生成对抗样本聚集了一个有趣的注意,因为它可以帮助识别模型的脆弱性,在他们发起之前。除此之外,对抗样本也可以促进我们的DNN算法,变的更加的鲁棒,通过提供更加多样的训练数据。
对于所给的模型的架构和参数的了解,许多方法可以成功的生成对抗样本,以白盒的方式,包括基于优化的方法,例如盒受限L-BFGS,单步基于梯度的攻击,例如FGSM,和基于迭代变种的攻击方法。一般的,一个更加严重的问题是对抗样本的迁移性,例如:一个模型上构造的对抗样本,在另一个模型上依然保持对抗性,因此使得黑盒攻击在真实世界上边的可行,并且提出了真实的安全威胁。迁移性的现象,是因为不同的模型学习了相似的决策边界,在一个数据点,是的一个模型构造的对抗样本对其他模型也有效。
然而,现有的攻击方法展示了低的效率,当攻击黑盒模型,特别的对于那些有防御机制的。例如,集成对抗训练可以显著的改善深度神经网络的鲁棒性并且现有的方法不能以黑盒的方式成功攻击他们。这个事实很大取决于在攻击能力和迁移性上的权衡。特别的,基于优化和迭代生成的对抗样本有很差的迁移性,因此使得黑盒攻击没有那么的搞笑。另一方面,单步基于迭代的方法生成更具有迁移性的样本,然而对于白盒模型却有一个低的成功率,使得低于黑盒攻击有效。考虑到实际的黑盒攻击的难度,papernot等人,使用适应性查询来训练一个代理模型来完全的特征化目标模型的特征,并且因此可以将黑盒攻击转变为白盒攻击。然而,它需要完全的预测可行度,这是有目标模型所给的,并且需要大量的查询,特别的对于大规模的数据集,例如:ImageNet。在真实世界上应用这些要求是不切实际的。因此,我们考虑如何有效的攻击一个黑盒模型,同时不知道它的架构和参数,并且进一步不用查询。
在这篇文章中,我们提出了一个更广的版本,基于的梯度的动量迭代的方法,来增强生成的对抗样本的攻击成功率,错了基于梯度的迭代方法,迭代的用梯度扰动输入,来最大化损失函数。基于动量的方法累加了一个动量向量在梯度方向上,在每次迭代中,达到稳定梯度方向和逃避局部最大值的目的,我们证明了通过动量迭代方法生成的对抗样本具有较高的成功率在白盒和黑盒攻击下,所提出的方法减轻了在白盒攻击和迁移性上的权衡,并且作为一个更强的攻击算法,相比于单步攻击和普通的迭代攻击。
为了进一步改善对抗样本的迁移性,我们研究了几个方法来攻击一个集成模型,因为,若一个对抗样本可以欺骗多个模型,它很有可能在其他的模型上依然具有对抗性。我们证明了,通过动量迭代攻击方法,对于多个模型,生成的对抗样本,可以成功的欺骗通过集成对抗训练的鲁棒模型,以黑盒的方式。这篇文章中的发现提起了新的安全问题,对于研究一更加鲁棒的深度学习模型,希望我们的攻击方法可以作为一个基线来评估各种深度旭熙模型和防御方法的鲁棒性。综上,我们做出了如下贡献:
在这个部分,我们提供了背景知识,并且评估了有关对抗攻击和防御的工作。设分类器 f ( x ) : x ∈ X → y ∈ Y f(x): x \in X \rightarrow y \in Y f(x):x∈X→y∈Y,输出一个标签 y y y对于一个输入 x x x,对抗攻击的目标是寻找一个样本 x ⋆ x^\star x⋆,在 x x x的附近,但是被分类器误分类。特别的,有两个类别的对抗样本—无目标的有u表的。对于正确分类的输入 x x x,和标签 y y y,例如: f ( x ) = y f(x) = y f(x)=y。一个无目标攻击的对抗样本 x ⋆ x^\star x⋆,通过向 x x x添加小的噪声,没有改变标签,但是误导分类器将 f ( x ⋆ ) ≠ y f(x^\star) \neq y f(x⋆)=y;有目标的对抗样本目的在于欺骗分类器,通过输出一个特定的标签,例如: f ( x ⋆ ) = y ⋆ f(x^\star) = y^\star f(x⋆)=y⋆, y ⋆ y^\star y⋆是被攻击者指定的标签,并且 y ⋆ ≠ y y^\star \neq y y⋆=y。在大多数的情况下,对抗噪声的无穷范数 L p L_p Lp要求比允许的 ϵ \epsilon ϵ小,例如 ∥ x ⋆ − x ∥ p ≤ ϵ \parallel{x^\star - x}\parallel_p \leq \epsilon ∥x⋆−x∥p≤ϵ, p p p应该为 0 , 1 , 2 , ∞ 0, 1, 2, \infty 0,1,2,∞。
现有的生成对抗样本的方法可以被分为3组。我们这里介绍他们的无目标的版本,有目标的版本可以简单的推导。
One-step gradient-based approaches. 例如 fast gradient sign method(FGSM),找到一个对抗样本 x ⋆ x^\star x⋆,通过最大化损失函数 J ( x ⋆ , y ) J(x^\star, y) J(x⋆,y), J J J通常是交叉熵损失。FGSM生成的对抗样本符合 L ∞ L_\infty L∞范数限制 ∥ x ⋆ − x ∥ p ≤ ϵ \parallel{x^\star - x}\parallel_p \leq \epsilon ∥x⋆−x∥p≤ϵ:
x ⋆ = x + ϵ ⋅ s i g n ( ∇ x J ( x , y ) ) (1) x^\star = x + \epsilon \cdot sign(\nabla_x J(x, y)) \tag{1} x⋆=x+ϵ⋅sign(∇xJ(x,y))(1)
∇ x J ( x , y ) \nabla_x J(x, y) ∇xJ(x,y)是损失函数的梯度,w.r.t. x x x。fast gradient method(FGM)是FGSM的一般化,满足 L 2 L_2 L2范数, ∥ x ⋆ − x ∥ 2 ≤ ϵ \parallel{x^\star - x}\parallel_2 \leq \epsilon ∥x⋆−x∥2≤ϵ
x ⋆ = x + ϵ ⋅ ∇ x J ( x , y ) ∥ ∇ x J ( x , y ) ∥ 2 (2) x^\star = x + \epsilon \cdot \frac{\nabla_x J(x, y)}{\parallel{\nabla_x J(x, y)}\parallel_2} \tag{2} x⋆=x+ϵ⋅∥∇xJ(x,y)∥2∇xJ(x,y)(2)
Iterative methods. 迭代的运用fast gradient多次,用一个小的步长 α \alpha α.迭代版本的FGSM(I-FGSM)如下:
x 0 ⋆ = x , x t + 1 ⋆ = x t + ϵ ⋅ s i g n ( ∇ x J ( x t ⋆ , y ) ) (3) x^\star_0 = x, \quad x^\star_{t+1} = x_t + \epsilon \cdot sign(\nabla_x J(x^\star_t, y)) \tag{3} x0⋆=x,xt+1⋆=xt+ϵ⋅sign(∇xJ(xt⋆,y))(3)
为了生成对抗样本满足 L ∞ L_\infty L∞后者 L 2 L_2 L2范数,一可以通过裁剪 x t ⋆ x^\star_t xt⋆到 x x x的附近,或者设置 α = ϵ / T \alpha = \epsilon / T α=ϵ/T, T T T是迭代次数。已经被证明迭代方法有更强的白盒攻击相比于单步攻击,以差的迁移性为代价。
Optimization-based methods. 直接的优化在真实和对抗样本之间的距离,服从于对抗样本的误分类。盒受限L-BFGS可以被用来解决这个问题,更加高级的形式如下:
a r g m i n x λ ⋅ ∥ x ⋆ − x ∥ p − J ( x ⋆ , y ) (4) \underset{x}{\operatorname arg\,min} \lambda \cdot \parallel{x^\star - x}\parallel_p - J(x^\star, y) \tag{4} xargminλ⋅∥x⋆−x∥p−J(x⋆,y)(4)
因为它直接优化对抗样本和相对应的真实样本之间的距离,不保证 L ∞ ( L 2 ) L_\infty(L_2) L∞(L2)距离,小于需要的值。基于梯度优化的方法也缺少有效性在黑盒攻击上,就像迭代方法。
在这些尝试下,对抗训练是最有效的集成方法来增强DNNs的鲁棒性。通过将对抗样本注入到训练过程,对抗训练的模型学习了抵制在损失函数梯度方向上的扰动。然而,然而,由于对抗性例子的生成和训练参数的耦合,它们不能赋予黑盒攻击鲁棒性。集成对抗训练,增强训练数据,使用对抗样本,不是来自被训练的模产生的,但是来自其他的已知的模型。因此,集成对抗训练模型对于单步攻击和黑盒攻击时鲁棒的。
在这篇文章中,我们提出了一个广的类别,基于迭代的动量方法,来生成对抗样本,这些对抗样本可以白盒模型和黑盒模型。在这个部分,我们详细描述了所提出的方法。我们首先证明了如何将动量集成到迭代的FGSM,包含了一个动量的快速梯度符号法(MI-FGSM),来生成对抗样本满足 L ∞ L_\infty L∞番薯现在,在一个无目标攻击的场景。我们之后呈现了几个方法,关于如何有效的攻击一个集成的模型。最后,我们拓展了MI-FGSM到 L 2 L_2 L2范数和有目标攻击,产生了一大类的攻击方法。
动量法是一种技术,加速梯度下降算法,通过雷杰一个向量在损失函数的梯度方向,在每次迭代中。记忆以前的梯度有助于桶通过狭窄的山谷,小驼峰和贫穷的地方最低或最高点。动量法也证实了在随机梯度下降的有效性来稳定更新。我们将动量的思想加入到生成对抗样本并且获得了巨大的好处。
为了生成一个无目标的对抗样本 x ⋆ x^\star x⋆,从一个真实的样本 x x x,这满足 L ∞ L_\infty L∞范数,基于梯度的方法通过解决这个约束优化问题,来寻找对抗样本。
arg max x J ( x ⋆ , y ) , s . t . ∥ x ⋆ − x ∥ ∞ ≤ ϵ (5) \underset{x}{\operatorname{arg\,max}} J(x^\star, y), \quad s.t. \, \parallel{x^\star - x}\parallel_\infty \leq \epsilon \tag{5} xargmaxJ(x⋆,y),s.t.∥x⋆−x∥∞≤ϵ(5)
ϵ \epsilon ϵ是对抗扰动的大小。FGSM生成对抗样本通过运用一次对于真实样本的梯度的符号,详见公式1,通过假设在数据点周围的决策边界的线性性。然和实践中,这个线性袈裟在扰动非常大的时候可能不成立,这是的通过FGSM生成的对抗样本“欠拟合”模型,限制了它的攻击能力。相反,迭代的FGSM贪婪的在每次迭代的梯度的符号的方向上,移动对抗样本,详见公式3。因此,对抗样本可以横容易的进入局部的最大值,并且“过拟合”模型,这不那么容易在不同模型之间迁移。
为了打破这个困境,我们将动量集成到迭代的FGSM,为了稳定更新方向,并且逃避局部的最大值。因此,基于动量的方法,保留了对抗样本的迁移性,当增加他的迭代次数,并且于此同时作为一个很强的白盒攻击方法,像迭代FGSM。它减轻了在攻击能力和迁移性上的权衡,证明了强的黑盒攻击。
动量快速梯度符号法,总结在算法1。特别的, g t g_t gt搜集了前 t t t次迭代的梯度,具有一个衰减因子 μ \mu μ,定义在公式 ( 6 ) (6) (6)。然后,对抗样本 x t ⋆ x^\star_t xt⋆,直到 t t t次迭代的扰动在梯度的符号方向上 g t g_t gt,具有一个步长 ϵ \epsilon ϵ,见公式 ( 7 ) (7) (7)。如果 μ \mu μ等于0,那么MI-FGSM下降为I-FGSM,在每次迭代中,当前的梯度 ∇ x J ( x t ⋆ , y ) \nabla_x J(x^\star_t, y) ∇xJ(xt⋆,y)被 L 1 L_1 L1距离正规化(任何距离的方法是可以的),因为我们注意到在不同的迭代中,梯度的比例大小是不同的。
在这个部分,我们研究了如何有效的攻击一个集成的模型。集成方法被广泛的运用在研究和竞赛,来增强和改善鲁棒性。集成的思想也可以运用到对抗攻击,因为如果一个样本对于多个模型保持对抗性,他可以捕获到内在的方向,总是欺骗这些模型,并且很有可能于此同时迁移到其他的模型上,因此增强了黑盒攻击。
我们提出了个攻击多个模型,他们的逻辑激活融合到一起,我们将这个方法称为逻辑集成。因为逻辑不活了算法和可能性预测的关系,一个集成模型融合了逻辑累加了细节的输出,这些脆弱性很容易被发现。特别的攻击一个集成了 K K K个模型的,我们融合了逻辑,如下:
L ( x ) = ∑ k = 1 K w k L k ( x ) (8) L(x) = \sum^K_{k=1} w_kL_k(x) \tag{8} L(x)=k=1∑KwkLk(x)(8)
L k x L_k{x} Lkx是第 k k k个模型的逻辑输出, w K w_K wK是集成的权重 w k ≥ 0 w_k \geq 0 wk≥0并且 ∑ k − 1 k w k = 1 \sum^k_{k-1} w_k = 1 ∑k−1kwk=1。损失函数定义为softmax交叉熵损失 J ( x , y ) J(x, y) J(x,y),给定 y y y和逻辑 L ( x ) L(x) L(x)。
J ( x , y ) = − l y ⋅ l o g ( s o f t m a x ( L ( x ) ) ) (9) J(x, y) = -l_y \cdot log(softmax(L(x))) \tag{9} J(x,y)=−ly⋅log(softmax(L(x)))(9)
1 y 1_y 1y是 y y y的one-hot编码形式,我们总结了MI-FGSM算法,来攻击多个模型,这些模型的逻辑平均在算法2。
为了比较,我们也引入了两个替代的集成方案,一个已经被研究了,特别的, K K K个模型可以在预测的时候平均,如 p ( x ) = ∑ k = 1 k w k p k ( x ) p(x) = \sum^k_{k=1} w_k p_k(x) p(x)=∑k=1kwkpk(x). p k ( x ) p_k(x) pk(x)是第 k k k个模型预测的可能性,用所给的输入 x x x。 K K K个模型也可在损失上平均,如 J ( x , y ) = ∑ k = 1 k w k J k x , y J(x, y) = \sum^k_{k=1} w_k J_k{x, y} J(x,y)=∑k=1kwkJkx,y。
在这三个方法中哦给你,唯一的区别是,结合多个模型输出的地方,但是他们导致了不同的攻击能力。我们实验发现,逻辑1集成表现的更好,比起预测的集成和损失的集成,在多个不同的攻击方法中和不同的集成模型,在4.3.1部分将会证明。
动量迭代法可以被很容易的集成到其他的攻击背景下。通过用所有之前迭代的梯度和,替换掉当前的梯度,然和的叠搭方法可以被拓展到特的动量的变种。这里我们介绍生成对抗样本,基于 L 2 L_2 L2范数攻击和有目标的攻击。
为了找到一个对抗样本,在真实样本的 ϵ \epsilon ϵ领域内,通过 L 2 L_2 L2距离测量 ∥ x ⋆ − x ∥ 2 ≤ ϵ \|{x^\star - x}\|_2 \leq \epsilon ∥x⋆−x∥2≤ϵ,动量版本的迭代的快速梯度方法(MI-FGM):
x t + 1 ⋆ = x t ⋆ + α ⋅ g t + 1 ∥ g t + 1 ∥ 2 (10) x^\star_{t+1} = x^\star_t + \alpha \cdot \frac{g_{t+1}}{\|g_{t+1}\|_2} \tag{10} xt+1⋆=xt⋆+α⋅∥gt+1∥2gt+1(10)
g t + 1 g_{t+1} gt+1的定义在公式 ( 6 ) (6) (6), α = ϵ / T \alpha = \epsilon / T α=ϵ/T, T T T代表总的迭代次数。
对于有目标攻击,目标是找到一个对抗样本可以被错误分类为一个指定的类别 y ⋆ y^\star y⋆,来最小化损失函数 J ( x ⋆ , y ⋆ ) J(x^\star, y^\star) J(x⋆,y⋆)。累加的梯度推演如下:
g t + 1 = μ ⋅ g t + J ( x t ⋆ , y ⋆ ) ∥ ∇ x J ( x t ⋆ , y ⋆ ) ∥ 1 (11) g_{t+1} = \mu \cdot g_t + \frac{J(x^\star_t, y^\star)}{\|\nabla_x J(x^\star_t, y^\star)\|_1} \tag{11} gt+1=μ⋅gt+∥∇xJ(xt⋆,y⋆)∥1J(xt⋆,y⋆)(11)
有目标的MI-FGSM,具有 L ∞ L_\infty L∞范数,如下:
x t + 1 ⋆ = x t ⋆ − α ⋅ s i g n ( g t + 1 ) (12) x^\star_{t+1} = x^\star_t - \alpha \cdot sign(g_{t+1}) \tag{12} xt+1⋆=xt⋆−α⋅sign(gt+1)(12)
有目标的MI-FGSM,具有 L 2 L_2 L2范数,如下:
x t + 1 ⋆ = x t ⋆ − α ⋅ g t + 1 ∥ g t + 1 ∥ 2 (13) x^\star_{t+1} = x^\star_t - \alpha \cdot \frac{g_{t+1}}{\|g_{t+1}\|_2} \tag{13} xt+1⋆=xt⋆−α⋅∥gt+1∥2gt+1(13)
因此,我们,引入了一大类的动量迭代的方法来在多个设置下攻击,这些效果在部分4证明。
在这个部分,我们事实了广发的实验在ImageNet数据集上,来验证所提出的方法的有效性。我们实现在部分4.1指定实验设置,之后我们在部分4.2和部分4.3,报告了对于攻击单个模型和攻击一个集成的模型的结果,在部分4.4,我们介绍了我们的方法赢得了NIPS 2017无目标和有目标对抗攻击比赛的配置。
我们研究了7个模型,其中四个是常规训练的模型—Inception v3(Inc-V3), Inception v4(Inc-v4), Inception Resnet v2(IncRes-v2), Resnet v2-152(Res-152),和其他三个使用集成对抗训练的模型—Inc-v3 e n s 3 _{ens3} ens3, Inc-v3 e n s 4 _{ens4} ens4, IncRes-v2 e n s _{ens} ens,我们将简单的称最后的是那个模型为对抗训练的模型没有歧义。
如果模型不能正确的分类出原始的图片,那么研究攻击成功率就变得没有意义。因此,我们随机选择了1000张图片,属于1000个类别,来自ILSVRC 2012验证集,这些图片都被模型正确的分类。
在我们的实验中,我们将我们的方法和单步基于梯度的方法和迭代方法比较。因为基于优化的方法不能明确的控制对抗样本和相对应的真实样本的距离,他们就不直接和我们的比较,但是他们和迭代方法有相似的属性,如部分2.1讨论的。为了清晰,我们只报告基于 L ∞ L_\infty L∞范数的无目标攻击,将基于 L 2 L_2 L2范数和有目标攻击的结果作为补充的材料。这篇文章的发现适用于所有的不同的攻击设置。
我们在表1报告了攻击我们考虑的模型的攻击成功率。对抗样本是通过,Inc-v3, Inc-v4, IncRes-v2, Res-152, 使用FGSM,I-FGSM,MI-FGSM攻击方法。成功率是误分类的概率,用对抗样本作为输入的模型的。最大的扰动 ϵ = 16 \epsilon = 16 ϵ=16,在所有的实验中,像素值为[0, 255]。迭代次数为10次,对于I-FGSM和MI-FGSM,衰减因子 μ = 1.0 \mu = 1.0 μ=1.0,在部分4.2.1将会研究。
表1: 无目标对抗攻击我们研究的7个模型的成功率。对抗样本是通过,Inc-v3, Inc-v4, IncRes-v2, Res-152, 使用FGSM,I-FGSM,MI-FGSM攻击方法。*表示白盒攻击。
从表格中,我们可以观察到MI-FGSM依然作为一个强的白盒攻击,像I-FGSM,因为他攻击一个白盒模型以几乎100%的成功率。另一方面,可以看出I-FGSM,相比于单步的FGSM,减少了黑盒攻击的成功率。但是通过集成动量,我们的方法MI-FGSM比FGSM和I-FGSM表现的都好,在黑盒攻击下。它获得了超过2倍的I-FGSM的成功率在大多数的黑盒攻击情况下,证明了所提出的方法的有效性。我们在图1,展示了两个通过Inc-v3生成的对抗样本。
图1: 我们展示两个对抗样本通过所提出的动量迭代快速梯度符号法(MI-FGSM)基于Inception v3模型。左边一列:原始图片,中间一列:运用MI-FGSM迭代10步构造的对抗噪声,右边一列:生成的对抗样本。我们也就显示了Inception v3对于这些图片预测的类别和概率。
值得注意的是,尽管我们的方法及大的改善了黑盒攻击的成功率,它攻击对抗训练的额模型依然是没有那么的有效。(例如:对于IncRes-v2 e n s _{ens} ens成功率少于16%)以黑盒的方式。最后我们在部分4.3证明了基于集成的方法可以极大的改善这个结果。接下来,我们研究了几个MI-FGSM的层面,这些层面不同于普通的迭代方法,来进一步的解释为什么它在实践中表现的这么好。
衰减因子 μ \mu μ,在改善攻击的成功率方面表现的非常的重要。如果 μ = 0 \mu = 0 μ=0。基于动量的迭代方法,就会变味平凡的迭代方法。因此,我们研究了衰减因子适当的值。我们攻击Inc-v3模型,使用MI-FGSM,扰动 ϵ = 16 \epsilon = 16 ϵ=16,迭代次数为10次,衰减因子 μ \mu μ,从0.0到2.0变化,粒度为0.1。我们证明了生成的对抗样本的成功率,攻击Inc-v3, Inc-V4, IncRes-v2, Res-152,在图2。成功率的画布在一个黑盒模型上的单峰,最大值在 μ = 1.0 \mu = 1.0 μ=1.0附近。当 μ = 1.0 \mu = 1.0 μ=1.0,另一个解释 g t g_t gt定义在公式 ( 6 ) (6) (6),是它简单的累加了所有的之前的梯度来执行当前的梯度。
图2: 对抗样本使用Inc-v3的攻击成功率,攻击Inc-v3(白盒), Inc-V4, IncRes-v2, Res-152(黑盒), μ \mu μ从0.0到2.0变化。
我之后研究了迭代次数的作用,在成功率上,当使用I-FGsM和MI-FGSM。我们采用相同的超参数(例如: ϵ = 16 , μ = 1.0 \epsilon = 16, \, \mu = 1.0 ϵ=16,μ=1.0),攻击Inception v3模型使用迭代次数,从1到10,然后评估对抗样本的攻击成功率在Inc-v3, Inc-v4, IncRes-v3, Res-152模型,结果如图3所示。
图3:使用Inc-v3生成的对抗样本的攻击成功率,攻击Inc-v3(白盒), Inc-v4, IncRes-v3, Res-152(黑盒)。我们比较了I-FGSM和MI-FGSM的结果,在不同的迭代次数行,注意,Inc-v3 vs. MI-FGSM, Inc-v3 vs. I-FGSM重叠在一起了。
可以观察到,当增加迭代次数,I-FGSM攻击一个黑盒模型的成功率逐渐的下降,而然MI-FGSM维持了一个较高的值。这歌结果证明了我们对于通过迭代方法生成的对抗样本过拟合一个白盒模型并且很少在模型之间迁移的结论。但是动量迭代方法有助于减轻在白盒攻击和迁移性上的权衡,因此证明了一个强的攻击能力同时对于白盒和黑盒模型。
为了解释为什么MI-FGSM证明了更好的迁移性,我们进一步检查了I-FGSM和MI-FGSM在迭代中的更新的方向,我们计算了两个连续的扰动的余弦相似性,结果在图4,当攻击Inc-v3。MI-FGSM的更新方向比I-FGSM的更加的稳定,由于比较大的MI-FGSM的余弦相似性。
图4: 当攻击Inc-v3模型是,在I-FGSM和MI-FGSM中,连个连续的扰动的余弦相似性,结果在1000张图中的平均。
回忆迁移性来自于这样的一个事实,模型学习了相似的决策边界,在一个数据点上。尽管决策边界是相似的,但是它们不一样,因为DNNs架构的高度的非线性性。所以也许存在一些额外的决策边界,在一个数据点,对于一个模型。(如图4和5),很难迁移到其他的模型。这些区域相对于局部最大值,在优化过程中,迭代的方法很容易陷入到这些区域,导致了低迁移性的对抗样本。另一方面,通过动量法获得的稳定的更新方向,见图4,可以有助于逃避这些异常的区域。另一个解释是稳定的更新方向使得 L 2 L_2 L2范数的扰动更大,这有助于迁移性。
我们最后研究了对抗扰动的大小对于成功率的影响。我们攻击了Inc-v3模型,使用FGSM,I-FGSM和MI-FGSM, ϵ \epsilon ϵ从1到40变化,图片像素值为[0, 255],评估了在白盒模型Inc-v3和黑盒模型Res-152上的表现。在我们的实验中国,我们设置步长 α = 1 \alpha = 1 α=1,对于I-FGSM和MI-FGSM,所以迭代次数随着扰动大小 ϵ \epsilon ϵ线性的增长,结果如图5所示。
图5: 用Inc-v3升成的对抗样本攻击Inc-v3(白盒模型)和Res-152(黑盒模型)的成功率。我们比较了FGSM,I-FGSM和MI-FGSM,具有不同的扰动大小的结果,曲线Inc-v3 vs. MI-FGSM, Inc-v3 vs. I-FGSM重叠在一起了。
对于白盒攻击,迭代方法不久就达到了100%的成功率,但是当扰动大的时候,单步攻击的成功率下降。这个现象很大程度上归因于,对于当扰动大的时候决策边界是先行性的不恰当的假设。对于黑盒攻击,尽管这三个方法的攻击陈功率随着扰动的大小线性的增长,MI-FGSM成功率增长的更快。换句话说,为了攻击一个黑盒模型,达到一个需要的成功率,MI-FGSM可以使用一个较小的扰动,这个扰动对于人类来说更加的在视觉上难以区分。
在这个部分,我们展示了攻击一个集成模型的实验结果。我们首先比较了在部分3.2介绍的三个集成方法,然后证明了对抗训练模型容易受到我们的黑盒攻击。
在这个部分我们比较了攻击的集成方法。我们包含了四个模型,分别是Inc-v3, Inc-v4, IncRes-v3, Res-152. 在我们的实验中,我们保持一个模型作为一已知的黑盒模型,攻击其他三个集成的模型,使用FGSM,I-FGSM,MI-FGSM,为了完全的比较三个集成方法的比较,例如:逻辑集成,预测集成,损失集成。我们设置 ϵ = 16 \epsilon = 16 ϵ=16, I-FGSM和MI-FGSM的迭代次数设置为10,MI-FGSM中的 μ = 1.0 \mu = 1.0 μ=1.0,集成权重是相等的。结果如表2所示。
表2. 无目标对抗攻击三个集成模型的成功率。我们报告了一个集成的白盒模型和一个一直的黑盒目标模型。我们研究了四个模型分别是Inc-v3, Inc-v4, IncRes-v3, Res-152。在每一行,“-”表示已知的模型的名字,和生成对抗样本的集成的三个模型,通过FGSM,I-FGSM,MI-FGSM,逻辑集成优于其他的方法。
可以看出,逻辑集成始终优于预测集成和损失集成,在所有的攻击方法和不同的集成模型,对于白盒和黑盒。因此,逻辑集成的策略更加适合对抗攻击。
表2还可以看出的是,通过MI-FGSM生成的对抗样本,迁移性更高,确保了强的黑盒攻击。例如,通过攻击一个集成Inc-v4, IncRes-v2, Res-152融合逻辑,没有Inc-v3,生成的对抗样本可以欺骗Inc-v3,以87.9%的成功率。常规训练的模型对于这中攻击展示了脆弱性。
为了以黑盒的方式攻击一个对抗训练的模型,我们包含了在部分4.1介绍的7个模型。同样的,我们报纸一个对抗训练的模型,作为已知的目标模型,来评估黑盒攻击的表现,攻击剩余的6个模型,以集成的方式,他们的逻辑融合到了一起,权重相等。扰动 ϵ = 16 \epsilon = 16 ϵ=16, 衰减因子 μ = 1.0 \mu = 1.0 μ=1.0, 我们比较了FGSM,I-FGSM,MI-FGSM迭代20轮的结果。结果加表3.
表3.无目标对抗攻击,攻击一个集成的白盒模型和一个已知的目标黑盒模型的成功率,我们包含了7个模型Inc-v3, Inc-v4, IncRes-v2, Res-152, Inc-v3 e n s 3 _{ens3} ens3, Inc-v3 e n s 4 _{ens4} ens4, IncRes-v2 e n s _{ens} ens. “-”表示已知的模型的名字,和生成对抗样本的集成的6个模型
可以看出对抗训练的模型也不能够有效的抵御我们的攻击,可以欺骗 Inc-v3 e n s 4 _{ens4} ens4,超过40%的对抗样本。因此,通过集成对抗训练获得模型,在ImageNet上训练的最鲁棒的模型,我们非常的担忧,对于我们的方法以黑盒的形式的脆弱性,因此,对于洋酒算法来学习鲁棒的深度学习模型,提出了安全的问题。
在NIPS 2017 对抗攻击和防御的比赛有3个子比赛,分别是,无目标对抗攻击,有目标对抗攻击,防御对抗攻击。组织者提供了5000张ImageNet上的兼容性的图片,来评估攻击和防御的比赛。对于每次攻击,一个对抗样本,针对每个图片生成,扰动大小从4到16(组织者指定的范围),所有的对抗样本,在梭鱼哦的防御方案上运行,获得最终的得分。我们分别在无目标攻击和有目标攻击上赢得了定义,用我们在这篇文章中介绍的方法。我们将指定我们在提交中的配置。
对于无目标攻击2,我们实现了MI-FGSM,攻击u一个集成的Inc-v3, Inc-v4, IncRes-v2, Res-152, Inc-v3 e n s 3 _{ens3} ens3, Inc-v3 e n s 4 _{ens4} ens4, IncRes-v2 e n s _{ens} ens, Inc-v3 a d v _{adv} adv. 我们采用逻辑集成的策略。集成的权重设置为 1 / 7.25 1/7.25 1/7.25对于前7个模型,对于 Inc-v3 a d v _{adv} adv的权重值为 0.25 / 7.25 0.25/7.25 0.25/7.25,迭代次数为10,衰减因子 μ = 1.0 \mu = 1.0 μ=1.0.
对于有目标攻击3,我们建立了两个攻击图,如果扰动的大小小于8,我们攻击Inc-v3, IncRes-v2 e n s _{ens} ens,权重值为 1 / 3 1/3 1/3和 2 / 3 2/3 2/3.否者我们攻击inc-v3, Inc-v3 e n s 3 _{ens3} ens3, Inc-v3 e n s 4 _{ens4} ens4, IncRes-v2 e n s _{ens} ens, Inc-v3 a d v _{adv} adv,权重值分别为 4 / 11 , 1 / 11 , 1 / 11 , 4 / 11 , 1 / 11 4/11, 1/11, 1/11, 4/11, 1/11 4/11,1/11,1/11,4/11,1/11.迭代次数为40次和20次,衰减因子同样为 μ = 1.0 \mu = 1.0 μ=1.0。
在这篇文章中,我们提出了一大类的动量迭代方法来增强对抗攻击,可以有效的欺骗白盒模型和黑盒模型。我们的方法始终优于单步基于梯度的攻击和普通的额迭代攻击方法,以黑盒的方式。我们实施了大量的实验来验证所提出的方法的有效性,并且解释了为什么他们可以工作。为了进一步改善生成的对抗样本的迁移性,我们提出了攻击一个集成模型,权重融合在一起。我们证明了通过集成对抗训练获得模型容易受到我们的黑盒攻击,这对于研究更加鲁棒的深度学习模型,提出了新的安全问题。
本工作有国家NSF中国(Nos. 61620106010, 61621136008, 61332007, 61571261 andU1611461),北京自然呢科学基金(No. L172037),清华天宫研究所,智能计算和NVIDIA NVAIL Program,部分有微软亚洲研究所和因特尔清华联合研究所资助。
在补充的材料中,我们提供了更多的实验结果,在部分A,我们报告了基于 L 2 L_2 L2范数的无目标攻击,在部分B,我们提供了有目标攻击的结果。至善始终证明了所提出的基于动量的方法的有效性。
我们首先实施了基于 L 2 L_2 L2范数的无目标攻击。因为 L 2 L_2 L2距离,在一个对抗样本和一个真实样本的,定义如下:
∥ x ⋆ − x ∥ 2 = ∑ i = 1 N ( x i ⋆ − x i ) 2 (14) \|x^\star - x\|_2 = \sqrt{\sum_{i = 1}^N (x_i^\star - x_i)^2} \tag{14} ∥x⋆−x∥2=i=1∑N(xi⋆−xi)2(14)
N N N是输入 x x x和 x ⋆ x^\star x⋆的维度,距离测量依靠 N N N。例如,如果一个对抗样本的每个维度的距离和一个真实样本的距离是 ∣ x i ⋆ − x i ∣ = ϵ |x_i^\star - x_i| = \epsilon ∣xi⋆−xi∣=ϵ, L 2 L_2 L2范数就等于 ϵ N \epsilon \sqrt{N} ϵN,而 L ∞ L_\infty L∞范数为 ϵ \epsilon ϵ.因此,我们设置 L 2 L_2 L2范数为 16 N 16\sqrt{N} 16N在我们的实验中, N N N是输入到一个网络上的维度。
我们在这个部分包含了7个模型:Inc-v3, Inc-v4, IncRes-v2, Res-152, Inc-v3 e n s 3 _{ens3} ens3, Inc-v3 e n s 4 _{ens4} ens4, IncRes-v2 e n s _{ens} ens. 我们针对Inc-v3, Inc-v4, IncRes-v2, Res-152生成对抗样本,测量在所有模型上的攻击成功率。我们比较了三个攻击方法,分别是FGM定义在公式 ( 2 ) (2) (2),I-FGM,MI-FGM定义在公式 ( 10 ) (10) (10).我们设置迭代次数为10次,在I-FGSM和MI-FSM,在MI-FGM,衰减因子 μ = 1.0 \mu = 1.0 μ=1.0.
结果显示在表5(见下一页).我们也可以看到,MI-FGM像I-FGM攻击一个白盒模型以几乎100%的成功率。在黑盒攻击方面显著的草果FGM和I-FGM。结果和 L ∞ L_\infty L∞范数类似始终证明了所提出的基于动量的迭代方法的有效性。
表5:基于 L 2 L_2 L2范数的无目标攻击,攻击所有模型的攻击成功率。基于Inc-v3, Inc-v4, IncRes-v2, Res-152生成的对抗样本,分别使用FGM,I-FGM,MI-FGM,*表示白盒攻击。
在这个实验中,我们也研究了Inc-v3, Inc-v4, IncRes-v2, Res-152, Inc-v3 e n s 3 _{ens3} ens3, Inc-v3 e n s 4 _{ens4} ens4, IncRes-v2。我们保持一个模型作为一个已知的模型,通过FGM,I-FGM,MI-FGM,攻击一个集成的其他的6个模型。我们对I-FGM和MI-FGM设置迭代次数为20次,对于MI-FGM衰减因子 μ = 1.0 \mu = 1.0 μ=1.0.,集成权重都是 1 / 6 1/6 1/6.
我们在表4展示了结果。迭代的方法包括I-FGM和MI-FGM,可以获得几乎100%的成功率,对于一个集成的白盒模型,MI-FGM攻击一个黑盒模型有较高的成功率,表明了通过MI-FGM生成的对抗样本的好的迁移性。对于对抗训练的模型,MI-FGM可以欺骗他们以大约60%的成功率。揭示了对抗训练模型对于我们的黑盒攻击的脆弱性。
表4: 基于 L 2 L_2 L2范数的无目标攻击,共一个集成白盒模型和一个已知的目标模型的攻击成功率。“-”表示已知的模型的名字,和生成对抗样本的集成的6个模型。
有目标攻击比目标攻击,攻击一个黑盒模型,更加的困难,因为他们需要黑盒模型输出指定的标签。对于DNNs训练在一个数据集上,这个数据集有上千个输出列别,例如ImageNet数据集,通过只有一个模型找到目标对抗样本来欺骗黑盒模型是不可能的。因此我们通过集成,基于集成的方法,实施有目标攻击。
我们在表6显示了结果,成功率通过被模型分类为目标类别的对抗样本的比例。与部分4.3.2的实验设置类似,我们保持好一个模型来测试黑盒攻击,用目标生成对抗样本,对于其他的集成的7个模型。我们设置扰动 ϵ = 48 \epsilon = 48 ϵ=48,衰减因子 μ = 1.0 \mu = 1.0 μ=1.0,迭代次数为20次,对于I-FGSM和MI-FGSM。我们可以看到单步的FGSM很难攻击一个集成的模型和有目标的黑盒模型。通过MI-FGSM生成的对抗样本的成功率接近100%对于白盒模型,高于常规训练的黑盒模型10%。不幸的是,它没能有效的生成目标对抗样本来欺骗对抗训练的模型,这是一个有待进一步研究的问题。
表6:基于 L ∞ L_\infty L∞范数,攻击一个集成的白盒模型和一个已知的黑盒目标模型的,有目标对抗攻击的成功率。每一行,“-”表示已知的模型的名字,和生成对抗样本的集成的其他6个模型。
基于 L 2 L_2 L2范数的有目标攻击,我们得出了相似的结论。在我们的实验中,我们也研究了Inc-v3, Inc-v4, IncRes-v2, Res-152, Inc-v3 e n s 3 _{ens3} ens3, Inc-v3 e n s 4 _{ens4} ens4, IncRes-v2。我们保持一个模型作为一个已知的模型,通过FGM,I-FGM,MI-FGM,攻击一个集成的其他的6个模型,具有相同的权重。我们设置最大的扰动 ϵ = 48 N \epsilon = 48 \sqrt{N} ϵ=48N, N N N是输出的维度,对于I-FGM,MI-FGM的迭代次数为20,对于MI-FGSM衰减因子为 μ = 1.0 \mu = 1.0 μ=1.0,我们在表7报告了对抗样本攻击白盒集成模型和黑盒目标模型的成功率。MI-FGM可以很容易的欺骗白盒模型,但是它不能够有效的在有目标黑盒攻击上欺骗对抗训练的模型。
表7. 基于 L 2 L_2 L2范数,攻击一个集成的白盒模型和一个已知的黑盒目标模型的,有目标对抗攻击的成功率。每一行,“-”表示已知的模型的名字,和生成对抗样本的集成的其他6个模型。
Logits are the input values to softmax. ↩︎
2Source code is available at https://github.com/dongyp13/Non-Targeted-Adversarial-Attacks. ↩︎
3Source code is available at https://github.com/dongyp13/Targeted-Adversarial-Attacks. ↩︎