SKIP CONNECTIONS MATTER: ON THE TRANSFERABILITY OF ADVERSARIAL EXAMPLES GENERATED WITH RESNETS (跳跃连接的重要性,论使用ResNets生成的对抗样本的迁移性)
摘要
跳跃连接是当前顶尖的深度神经网络的一个必不可少的重要的组成部分,例如:ResNet, wideResNet, DenseNet, ResNeXt。尽管他们在建立更加深沉的和更加有力的DNNs的巨大的成功,我们在这篇文章中确定了一个令人惊讶的安全的威胁。使用跳跃连接允许更加容易的生成高强度的可迁移的对抗样本。特别的,,在下那个ResNet这样的神经网络(具有跳跃连接),梯度可以反向传播痛殴跳跃连接或者残差块。我们发现使用更多的来自跳跃连接的梯度而不是残差快的梯度,根据一个衰减因子,允许我们构造具有高强度的对抗样本。我们的方法命名为 Skip Gradient Method(SGM)。我们实施了全面的迁移攻击对顶尖的DNNs,包括:Resnets, DenseNets, Inceptions, Inceptions-ResNet, Squeeze-and-Excitation Net-work(SENet)和鲁棒训练的DNNs。我们证明了在梯度力流上运用SGM可以极大的改善构造的攻击的迁移性在几乎所有的情况下。更进一步,SGM可以和容易的结合到现有的黑盒攻击技术,并且获得较高的改善在顶尖的迁移性方法上。我们的研究不知激励了新的研究在DNNs架构的脆弱性上,而且提出进一步的挑战对于设计安全的DNN架构。
1 介绍
在深度神经网络(DNNs),一个跳跃连接建立了一个快捷方式从浅层到深层,通过连接卷积块的输入直接到他的输出(也称为残差快)。虽然神经网络的不同层学习了不同等级的信息,跳跃连接可以保住保留底水平的特征,避免表现下降在添加更多层的时候。这被证明对于建立非常深的强有力的DNNs例如ResNet, WideResNet, DeseNet, ResNeXt来说非常的重要。与此同时,尽管他们高超的表现,DNNs被发现对于对抗样本(或者对抗攻击)极端的脆弱,这些是输入的样本经过有意的轻微的扰动来欺骗一个网络做出错误的于此。对于人类观察者来说,对抗样本经常是不可察觉的,并且可以在不同的模型中迁移。这引起了在DNNs在安全场景下的安全担忧,例如:人脸识别,自动驾驶,视频分析和医学诊断等。
对抗样本可以通过白盒设置(攻击者有目标模型的全部信息)或者黑盒设置(攻击者没有目标模型的信息)来构造。白盒攻击方法例如 Fast Gradient Sign Method(FGSM), Basic Iterative Method(BIM), Projected Gradient Decent(PGD), Carlini and Wagner(Cw),在黑盒设置下经常迁移性较低,对DNN模型构成了有限的威胁,这些模型通常在实践中是保密的。几个技术被提出来来改善在代理模型上构建的黑盒攻击的迁移性。例如:动量增强,多样性输入和变换不变性。虽然这些方法是有小的,他们(和白盒攻击方法)都威胁整个网络(或者是目标模型或者是代理模型),作为一个耽搁的组成部分,却或略了他内在的架构特征。是否DNN架构本身可以暴露更多的对抗攻击迁移性的问题,是一个没有被探索的问题。
在这篇文章中,我们确认了一个这样的脆弱的关与被许多顶尖的DNNs使用的跳跃连接的问题。我们首先实施了一个实验,关于BIM攻击和ResNet-18在ImageNet验证集上,来研究跳跃连接如何影响在这个网络上构建的攻击的对抗强度。在每个最后的3个跳跃连接和残差快,ResNet-18,我们证明了使用梯度方向传播或者是跳跃连接或者是残差块在图1,的攻击的成功率。可以观察到,当使用残差块而不是跳跃连接攻击成功率下降的更加彻底。这表明了来自跳跃连接的梯更加的脆弱(高成功率)。除此之外,我们惊讶的发现跳跃连接暴露了更多的迁移信息。例如,黑盒成功率从52.52%到62.10%,当攻击跳过最后的两个残差块(遵循绿色的线路)。
图1: 左边: 最后3个跳跃连接(绿线)和残差块(黑色的盒子),ImageNet训练的ResNet-18. 右边: 使用梯度流经过或者跳跃连接(向前)或者残蝉快(向左)在每次的结合点(圈)构造的对抗攻击的成功率(白盒/黑盒的形式)。三个反向传播的路径被高亮为不同的颜色,绿色跳过了最后的两个残差块有最好的攻击成功率,红色贯穿3个残差块有最坏的攻击成功率,这些攻击是通过BIM在5000张ImageNet验证集下在最大的L∞L_\inftyL∞扰动ϵ=16\epsilon=16ϵ=16(每个像素值在[0, 255]).黑盒攻击测试在一个 vgg19的目标模型上。
基于以上观察的启发,在这篇文章中,我们提出了 Skip Gradient Method(SGM) 来生成对抗样本,使用更多的来自跳跃连接的梯度而不是残差块的梯度。实践中,SGM利用了一个衰减因子来减少来自残差块的额梯度。我们发现来自梯度流的调整,可以生成较高的迁移性的对抗样本,一个网络中的跳跃连接越多,构造的攻击越具有迁移性。这雨设计原则(例如:“越深”用跳跃连接)托管许多的DNNs模型形成了鲜明的对比。实践中,我们的主要贡献如下:
- 我们确认了一个惊讶的属性在像ResNet神经网络之类的跳跃连接,例如:他们很容易的生成具有高迁移性的对抗样本。
- 我们提出了***Skip Gradient Method(SGM)*** 来构造对抗样本使用更多的来之跳跃连接的梯度。。使用耽搁衰减因子在梯度上,SGM似乎简单和具有泛化性的技术,可以被用来使用在任何已经存在的基于梯度的攻击方法。
- 我们提供全面的迁移攻击实验,来自不同的源模型对抗10个顶尖的DNNs模型,表明了SGM可以极大的改善构造的对抗样本的迁移性。当和已知的迁移技术集合的时候,SGM改善顶尖的基准到以一个很大的优势。
2 相关工作
现有的对抗攻击可以被分为两个类别(1)白盒攻击(2)黑盒攻击。在白盒攻击,攻击者有目标模型的全部的参数信息,而黑盒攻击,慕白哦模型对于攻击者来说是保密的。
2.1 白盒攻击
设干净的样本 xxx,对应的标签 yyy,目标DNN模型 fff,攻击的目标是找到一个对抗样本xadvx_{adv}xadv欺骗网络进而做出一个错误的分类(例如:f(xadv)≠yf(x_adv) \neq yf(xadv)=y),同时依然保持在ϵ\epsilonϵ-盒子在xxx。(例如:∥xadv−x∥∞≤ϵ\parallel{x_{adv} - x}\parallel_\infty \leq \epsilon∥xadv−x∥∞≤ϵ)。
Fast Gradient Sign Method(FGSM). FGSM扰动干净的图片xxx一步在梯度方向上ϵ\epsilonϵ:
xadv=x+ϵ⋅sign(∇xL(f(x),y))(1) x_{adv} = x + \epsilon \cdot sign(\nabla{x}L(f(x), y)) \tag{1} xadv=x+ϵ⋅sign(∇xL(f(x),y))(1)
基本迭代方法(BIM)是FGSM的迭代版本,对于TTT步,步长为ϵ/T\epsilon/Tϵ/T
Projected Gradient Descent(PGD). PGD扰动一个常规的样本xxx,TTT步,很小的步长,经过每一步的扰动,PGD将对抗样本投影到ϵ\epsilonϵ-ball xxx, 如果他超过ϵ\epsilonϵ-ball 。
xadvt+1=∏ϵ(xadvt+α⋅sign(∇xL(f(xadvt,y))))(2) x^{t+1}_{adv} = \prod_\epsilon(x^t_{adv} + \alpha \cdot sign(\nabla{x}L(f(x^t_{adv}, y)))) \tag{2} xadvt+1=ϵ∏(xadvt+α⋅sign(∇xL(f(xadvt,y))))(2)
∏ϵ(⋅)\prod_\epsilon(\cdot)∏ϵ(⋅)是投影操作,与BIM不同的是,PGD允许步长α>ϵ/T\alpha > \epsilon/Tα>ϵ/T。
也有一些其他类型的白盒攻击,包括:基于稀疏性的攻击,例如 Jacobian-based Saliency Map Attack(JSMA),sparse attack, one-pixel attack和基于优化的方法,例如:Carlini and Wagner(C&W), elastic-net(EAD)。
2.2 黑盒攻击
黑盒攻击可以通过攻击一个代理模型或者使用梯度评估的方法结合查询目标模型的方法来生成。梯度评估方法评估了目标模型的梯度,是哟ing黑盒优化方法例如 Finite Differences(FD),或者 Natural Evolution Strategies(NES)。这些方法都需要一个大的对于目标模型的查询,不只是降低了有效性,而且潜在的暴露了攻击。替代的,黑盒攻击样本可以从代理的额模型来构造之后运用于攻击目标模型。景观白盒方法可以直接运用在代理模型,他们在黑盒设置下没有效果。几个迁移技术被提出来改啥黑盒攻击的迁移性。
Momentum Iterative Boosting(MI). MI结合了动量项到梯度中,来提升迁移性:
xadvt+1=∏ϵ(xadvt+α⋅sign(gt+1)),gt+1=μ⋅gt+∇xL(f(xadvt,y))∥∇xL(f(xadvt,y))∥1(3) x^{t+1}_{adv} = \prod_\epsilon(x^t_{adv} + \alpha \cdot sign(g^{t+1})),\quad g^{t+1} = \mu \cdot g^t + \frac{\nabla{x}L(f(x^t_{adv}, y))}{\parallel{\nabla{x}L(f(x^t_{adv}, y))}\parallel_1} \tag{3} xadvt+1=ϵ∏(xadvt+α⋅sign(gt+1)),gt+1=μ⋅gt+∥∇xL(f(xadvt,y))∥1∇xL(f(xadvt,