对抗攻击和防御

对抗攻击

在计算机视觉任务中可能存在以下现象,对输入样本故意添加一些人类无法察觉的细微干扰,将会导致模型以高置信度输出一个错误的分类结果,这被称为对抗攻击。对抗攻击的目标是使模型错误分类样本,同时不能过度修改样本。对抗攻击通常分为白盒攻击和黑盒攻击。对于白盒攻击,攻击者已知模型内部的所有信息和参数,基于给定模型的梯度生成对抗样本,对网络进行攻击。对于黑盒攻击,攻击者不了解模型的参数和结构信息,仅通过模型的输入和输出,生成对抗样本,再对网络进行攻击。黑盒攻击和白盒攻击的思想均是通过梯度信息以生成对抗样本,从而欺骗网络。

对于一个干净图像的样本 x x x,对抗攻击的目标是找到对抗样本 x ∗ x^{*} x,误导损失函数并设计损失的目标为 a r g m a x x ∗ L ( x ∗ , y ) argmax_{x^{*}}L(x^{*},y) argmaxxL(x,y),另外约束为 ∣ x ∗ − x ∣ ≤ π |x^{*}-x|\leq\pi xxπ,其中, π \pi π是一个小量,约束用于限制噪声的大小,提高对抗样本与原始样本的相似度。

基于梯度,Goodfellow等人提出了快速梯度符号方法FGSM[1],该方法可以生成具有单个梯度步长的对抗样本。在进行反向传播之前,该方法用于扰动模型的输入,这是对抗攻击的早期形式,它不需要迭代计算就能生成样本。FGSM的样本生成方法如下: x ∗ = x + π ⋅ s i g n ( ▽ x L ( x , y ) ) x^{*}=x+\pi\cdot sign(\triangledown_{x}L(x,y)) x=x+πsign(xL(x,y))Kurakin等人认为FGSM的单步计算可以通过迭代地多步微调进行优化,即I-FGSM[2]。I-FGSM以较小的步长将FGSM多次应用,并在每一步之后剪切中间结果的像素值,以确保它们位于原始图像的值域中。多步迭代的FGSM计算过程如下: x 0 ∗ = x ,    x t + 1 ∗ = c l i p ( x t ∗ + π ⋅ s i g n ( ▽ x L ( x t ∗ , y ) ) ) x_{0}^{*}=x,\, \, x^{*}_{t+1}=clip(x^{*}_{t}+\pi\cdot sign(\triangledown_{x}L(x^{*}_{t},y))) x0=x,xt+1=clip(xt+πsign(xL(xt,y)))各类攻击算法在白盒场景下的表现优秀,但面对黑盒场景却难以产生好的结果。因此,Dong等人提出一种基于动量迭代的算法来增强对抗攻击,通过将动量项集成到攻击的迭代过程中,使得算法在迭代期间稳定更新方向,并从局部极大值中逃逸。为了改善黑盒攻击的成功率,该算法将多个模型进行集成[3]。通过实验发现,在大部分黑盒攻击场景下,很多强防御模型均受到了较为明显的攻击。

防御

为了避免攻击者对模型的攻击行为,防御攻击的各类方法也随之被提出。防御方法主要分为两类。第一类可以描述为,不管有没有对抗样本,模型都能正确分类输入的样本。第二类可以描述为,在模型输出前添加防火墙,从而过滤对抗样本,例如使用混合高斯模型做异常检测。

对于第一类方法,Liao等人提出了一种防御方法,即由高级特征主导的去噪器(high-level representation guided denoiser,HGD)[4]。标准去噪器具有误差放大效应,在这种效应中,较小的残留对抗噪声影响会逐渐被放大,最终导致错误的分类。HGD将损失函数定义为:干净图像和去噪图像激活的概率分布输出之间的差值,从而解决了误差放大问题。
fig1

在图中,D是去噪器,即一个自编码器。FGD表示在倒数第二层特征上基于均方根误差训练去噪器,LGD则是在最后一层特征层面基于均方根误差训练去噪器,CGD是在模型输出的概率分布层面用交叉熵损失函数训练去噪器。使用上述三种方法训练的去噪器可以迫使模型降低误差放大的效果,从而确保模型不会被对抗样本引入的误差逐层放大并干扰输出结果。

分类网络常用的训练目标为最小化交叉熵损失,Pang等人在对抗训练的背景下,提出RCE损失函数[5]。RCE的训练目标是迫使模型输出非GroundTruth的类别概率大,GroundTruth的类别概率小。在前向计算时,模型在输出层进行概率分布取反,然后再利用softmax重新计算概率分布。RCE可以迫使模型输出的非GroundTruth概率分布均匀,反过来说,即各个样本的GroundTruth概率也会呈现均匀状态,RCE一方面可以扩大类间差距,另一方面,RCE的设计迫使攻击的噪声必须限制在很窄的范围内,才能将样本误导到其他类别。RCE的计算如下: L C E R ( x , y ) = − R y T l o g F ( x ) L_{CE}^{R}(x,y)=-R^{T}_{y}logF(x) LCER(x,y)=RyTlogF(x)其中, ( x , y ) (x,y) (x,y)表示输入样本与真实类别标签, R y T R_{y}^{T} RyT表示反转后的标签编码,编码向量中的真实类别 y y y对应0,其他类别对应 1 / ( L − 1 ) 1/(L-1) 1/(L1) L L L为类别数量, F ( x ) F(x) F(x)表示模型输出的概率分布。
fig2
在图a中,黑色实线是基于RCE训练得到的决策边界,可见样本分布呈现出细和窄的状态。在图b和图c中,前者是使用CE训练模型输出的样本分布,后者是使用RCE训练模型输出的样本分布,两者对比可以明显发现RCE损失帮助模型增强了感知类间差距的能力。换个角度看,如果想攻击这样的模型,会变得很困难。以图d为例,攻击者必须施加一个非常精准的噪声才能将某个簇内的样本转移到另一个簇中,而类间差距的加大迫使噪声的模也在增大,当噪声的大小变得可以察觉也就令攻击者失去了攻击的意义。

对于第二类方法,Pang等人从对抗生成网络GAN中获得了启发,GAN可以从简单分布,比如一个混合高斯分布,生成复杂分布,比如复杂的图像样本。现在将GAN的操作颠倒并微调,用于将复杂的分布映射回到简单的分布上。另外,Pang等人使用简单分布指导网络的训练,迫使网络将干净图像映射到简单分布,而异常样本由于噪声的加入导致其被映射到GMM中后,距离每个簇均值的马氏距离都很远,从而检测到异常样本[6]。实验结果表明,在使用该方法作为防火墙后,模型的防御能力能够获得显著提升。

References

[1] I. J. Goodfellow, J. Shlens, and C. Szegedy, “Explaining and harnessing adversarial examples,” arXiv preprint arXiv:1412.6572, 2014.
[2] A. Kurakin, I. Goodfellow, and S. Bengio, “Adversarial examples in the physical world,”, 2016.
[3] Y. Dong et al., “Boosting adversarial attacks with momentum,” in Proceedings of the IEEE conference on computer vision and pattern recognition, 2018, pp. 9185-9193.
[4] F. Liao, M. Liang, Y. Dong, T. Pang, X. Hu, and J. Zhu, “Defense against adversarial attacks using high-level representation guided denoiser,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2018, pp. 1778-1787.
[5] T. Pang, C. Du, Y. Dong, and J. Zhu, “Towards robust detection of adversarial examples,” arXiv preprint arXiv:1706.00633, 2017.
[6] T. Pang, C. Du, and J. Zhu, “Max-mahalanobis linear discriminant analysis networks,” in International Conference on Machine Learning, 2018, PMLR, pp. 4016-4025.

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值