近年来,对抗攻击与防御的研究为理解深度神经网络提供了一些新的启发,在探究攻击手段和防御方法的同时,我们对网络鲁棒性、泛化性的来源也有了更加深入的认识。本文是梳理了近期图像识别领域对抗攻击与防御的主要工作,是对近期学习的相关论文、综述的集中梳理。
简介
这部分内容将会理清有关对抗攻击和防御的一些关键概念,希望能在日后查阅回顾时有一个清晰的认识,并且能让读者了解该方面工作的关注对象。对抗攻击方法的部分工作观点整理自相关综述[1]、[2],另外的研究大多选自近期阅读关注的工作,因此文献选择受个人偏好和认知局限,观点难免存在纰漏与主观,欢迎读者联系交流指正。
名词介绍
对抗样本(图像):指被修改过的图片,用于干扰机器学习模型,令其不能正确完成在未修改过图像上的任务。
对抗干扰:指作用在原始图像,用于生成对抗样本的改变或扰动。
对抗训练:使用原始样本与对抗样本作为训练数据,旨在令模型对对抗样本更鲁棒。
对抗攻击:指使用生成算法,生成对抗样本干扰目标模型的功能。
1.1 对抗方法
1.1.1 白盒攻击:白盒攻击预设攻击的方法能够事先了解所有目标模型的信息,包括但不限于模型参数、结构、训练方法和训练数据。
1.1.2 黑盒攻击:指一类对抗攻击的方法,该方法生成对抗样本时并不事先知道或利用所攻击的模型,或对模型的了解在一定限度以内。该类方法绝不会利用模型的参数,如果利用了一定限度的模型知识,则通常被归类为半黑盒\灰盒攻击。
1.1.3 毒药攻击(Poisoning Attack):指一类攻击方法,允许在目标模型的训练数据中加入部分对抗样本,这部分对抗样本将会导致训练失败(低准确度、预测错误)。
1.1.4躲避攻击(Evasion Attack):躲避攻击的算法通常不能通过攻击改变模型的参数,但可以通过引入一些模型无法识别的样本。换句话说,即生成一些目标模型识别能力以外的样本来躲避模型的识别。
1.2 评估方法
1.2.1 鲁棒性:
最小扰动(Minimal Perturbation):指在令模型预测失误的条件下,在原始数据上的扰动的最小值,通常用扰动的范数刻画:
鲁棒性:定义为扰动的最小范数值,即模型能够承受的最大干扰范围:
全局鲁棒性:鲁棒性对输入分布上样本的期望:
最小扰动方法生成的样本可以尽可能与原先样相似,因此,r(x,F),\rho(F)越大,对抗模型就需要牺牲更多生成样本的相似度,来使目标模型预测失误,这意味着目标模型更加鲁棒。
1.2.2 对抗风险\损失(Adversarial Risk\Loss)
最大对抗样本(Most-adversarial Example):给定数据x和分类器F,在x的sigma邻域内使得Loss值最大的x的对抗样本:
对抗损失:x对应的最大对抗样本的损失值:
全局对抗损失:在样本分布D上,样本x对应最大对抗样本xadv的对抗损失的期望值:
最大对抗样本是x的邻域内最能欺骗模型的样本,更小的对抗损失意味着更加鲁棒的模型F。
常见攻击方法
Biggio’s Attack
Biggio et. al.[3] 提出了一种在经典机器学习方法,诸如SVM或浅层全连接神将网络上的对抗样本生成方法。它通过优化判别函数,来误导分类器。举例来说,在MNIST数据集上,一个判别函数g(x) = + b,对值大于0的样本标记为“3”,对负值样本标记为非“3”。
假设样本x 能被正确分类为“3”,在该模型中,Biggio的攻击方法目标设计x’,并且降低g(x’),同时能够使得||x’ - x||1小,当x’能够使得||x’-x||小时,x’与x接近,若能使得g(x’)为负值,被错误分类,该样本就能成功“欺骗”模型。虽然该方法主要在经典机器学习方法上生成对抗样本,但启发了人们对于深度学习模型安全性的思考。
Szegedy’s limited-memory BFGS (L-NFGS) attack
Szegedy et. al.[4] 的工作是第一个尝试在深度神经网络图像分类器上进行攻击的工作。令Ic∈Rm表示向量化的原始图像,下标’c’代表其未经干扰。Szegedy et. al. 通过解一下问题来获得扰动项\rho:
图片
"l"表示该图像的标签,C(.)代表深度网络分类器。作者希望能够求解上式的非平凡解,但求解上式十分困难,因此文中采用了近似的解法,使用了box-constrained,L-BFGS[],通过寻找最小的大于零的c值,让下式中的最小化因子\rho满足C(Ic + \rho) = l:
L(.,.)计算分类器的损失。上式在损失函数为凸函数时,有特定的解。
计算获得的扰动与图像样本相加,获得对抗样本。
如上图中,上述方法可以得到迷惑神经网络的干扰样本,同时,生成的样本在人眼看来差别很小。Szegedy et. al. 发现,在一个网络上生成的样本可以对多个网络产生干扰,该工作在当时对深度学习的研究产生了令人震惊的影响,让人们开始重视深度学习,尤其是计算机视觉中的可信度与稳定问题。
Fast Gradient Sign Method(FGSM)
在Szegedy等人发现对抗攻击对深度神经网络有极大影响后,后面的研究发现,深度网络的鲁棒性能够被对抗训练提升。为了提升对抗样本的生成效率,Goodfellow et. al. [5] 提出了高效计算图片对抗干扰的方法,通过求解下式得到:
\Delta J(., ., .)为在输入提醒Ic与当前参数下的损失函数的梯度,sign( . )表示符号函数,\epsilon为控制扰动的范数范围的小数值。由于其可以在梯度反向传播中记录所须参数,从而大大节省了获得干扰的时间,在原文中被称为“快速梯度符号方法”(Fast Gradient Sign Method)。
有趣的是,该方法假设深度模型具有线性特征,但通常情况下认为,深度网络是高维非线性的。Goodfellow等人假设,模型训练时,通常偏好简单的线性操作,因此会被简单的分析形扰动影响。在相关文献中,这样的思想通常被称为“线性假设(Linear Hypothesis)”,大都来自于FGSM方法。
Kurakin[6]等人注意到,在ImageNet上FGSM生成的对抗样本,当\sigma取值为【2,32】时,top-1错误率只有63-69%。佐治同时提出了一种“one-step target class”的FGSM变体,通过使用目标label来替换真实的label,可以生成针对性对抗样本。另外,实验还说明,使用随机的类别变迁生成的对抗样本也能迷惑网络,虽然随机标签带来的干扰可能没有那么有趣,例如,网络可能将某种狗分类成另一种狗(因为不是针对正确label做对抗,带来的干扰可能并不强)。作者文中还指出,通过对抗训练,深度神经网络对于FGSM对抗样本的鲁棒性会增强。
FGSM通过增加分类器的损失在干扰图像,sign函数保证了loss能够被最大化,同时\sigma限制了干扰的l范数。Miyato等人{7]提出了一种类似对抗样本计算的方法:
Kurakin等人将其成为“Fast Gradient L2”方法。因此也可以引申出“Fast Gradient L∞”方法。广泛地来说,这些方法都应被看作计算机视觉中对抗攻击的“one-step”或“one-shot”方法。
DeepFool
Moosavi-Dezfooli et. al. [6] 等人提出了DeepFool方法,能够计算使分类器失效的干扰,同时拥有更小的范数大小。该方法从原始图像开始,周期向图像上添加一个微小的干扰向量。该向量基于线性假设[5]计算,即假设模型的分类边界为线性,由此导出每次添加的干扰。该迭代过程一直进行到,被攻击的分类器将该图片误分为止,即该图片离开模型的分类边界。实验证明,DeepFool生成的对抗干扰,在相同干扰效果的情况下,比FGSM方法有更小的范数。
Universal Adversarial Perturbation
前文提到的对抗方法往往针对不同图片,有不同的干扰,但Moosavi-Dezfooli [7]发现了一种可以对任意图片进行攻击的方法,该方法与DeepFool生成对抗的方法类似,迭代地将图片推向分类边界。但不同的是,UAP方法顺序地计算每个图片的干扰向量,并,将每张图分别推向分类边界,同时得到适合全局的干扰。该方法使用L2以致L∞范数计算干扰的规模,实验显示,在干扰大小的上界仅为4%时,在当时的SOTA分类器下已能实现80%的精度衰减。
同时,尽管干扰生成的过程需要针对某种特定模型,但是实验显示,在一种模型上生成的UAP干扰可以在其他网络模型上产生干扰作用,作者将其成为“双重全局性能”,该干扰在许多模型上都能产生大于50%的预测精度干扰效果。
相关可解释性研究
与人类视觉系统(HVS)的对比
图像的对抗样本的研究让人们有了一种新的视角,尝试理解神经网络。尤其在卷积神经网络,先前普遍认为其与人类视觉系统的相似性也开始被重新审视。Zhou[8]等人用生成的对抗样本图片和干扰图片分别让人和卷积模型预测,统计结果发现,人与CNN在预测偏差上有相似的特点,甚至对于单独的干扰图片,即在一般意义上认为是人类无法识别的对抗噪声,在统计结果中,人与机器预测的结果仍然存在相似的偏好。因此,Zhou等人得出结论,人类视觉在直觉层面与卷积神经网络的分类方式有着相似的特点。但存在后续的工作提出了[9]反驳:
Marin[9]等人指出,尽管先前的工作指出了人与DCNN在处理看似无法识别的干扰图像中的相似性,但并不足以证明人与DCNN在视觉上的相似,对抗样本仍然是理解DCNN理论与人类视觉相似性的一大挑战。文中针对[8]中的实验设计提出质疑,虽然其令被测从48个类别中预测,随机概率仅有1/48,因此,当人与DCNN预测相同两次或以上时,其相关性就可以被很大程度上证实。Marin表示,该实验忽视了被测结果的重要性区别,例如,48次与DCNN预测都相同的被测,与预测出两次相同的被测被看成同类,都被记作1。另外,实验只关注相同的次数,而忽略了不同,若被测仅仅个位次数与DCNN次实验结果相同,但剩余35-46次均不同,则尽管概率意义存在一定相关意义,但是将其解释为,DCNN与人类视觉机制具有相似性,仍然缺乏足够的说服力。被测文中通过重新设计实验,试图证明观点,指出前文表现出的对普遍认为对人类视觉无关的干扰图像,人所展现的偏好与和DCNN的相似性无关,并且人类视觉与DCNN的差异比前人工作中提到的更大。
对抗噪声的频域理解
许多工作尝试从对抗噪声本身,理解对抗攻击生效的机制。Dziugaite et. al. 2016 [10]发现,JPG压后的对抗样本,在被同样的网络处理时,预测精度会比未压缩的对抗样本有所提升,即,JPG压缩能在一定程度上逆转对抗攻击的过程。但由于JPG有损压缩的特性,该方法并不能作为一种防御方法。作者假设、ImageNet图像所采用的JPG格式自身属于图像空间下的一个子空间JPG空间,而其对抗为了使DCNN难以识别,干扰方向与可识别的超平面正交,因此假设其方向与JPG空间正交,若假设成立,则JPG变换能够抵消对抗过程。
压缩使用的JPEG算法经历三个过程:YUV转换-色度抽样-离散余弦变化(DCT)-量化-编码,其中,在色度抽样中,可以看作对图片进行了降采样,在量化过程中,对DCT后的频域数据,又舍弃了部分高频信息,其余过程均为无损过程,因此,JPEG算法可以被看作是舍弃高频信息的压缩。而[10]中的JPG变换,同样可以解释为,舍弃对抗图像的高频信息,能够提升DCNN模型对于对抗样本的鲁棒性。这在许多工作中得到相同的支持 Song et. al.[11]Wang et. al.[12]。
[11]进一步验证了这个假设,通过Saak变换,将图像分频,并对比原始样本与对抗样本各个频段的统计特征,发现对抗样本呢的低频信息与干净图像差异较小(上图左1),而高频部分,差异很大(上图左2)。各个频段的均方差也支持了这一点,可以看出,归一化的均方差随着频率升高而增加(右图2)。[12]则尝试验证了,当模型预测结果与图片低频信息的关联性越大时,模型则会更加鲁棒。
Wang et. al. [13]对高频信息对DCNN的影响做出了更加系统的研究。文中首先证明了,训练好的DCNN对于高频信息有很强的依赖,甚至仅仅采用人眼无法识别的图像的 高频部分,就可以做到很高置信度的分类,而对去除了高频部分的人眼可以识别的低频图像,分类的效果却大大降低,甚至无法识别。
紧接着,作者通过打乱图像label的对比试验,与真实label的数据分别训练网络,训练时分开了使用了频率信息,实验发现,对于随机label的样本,当使用低频信息训练时,模型无法正确拟合,对比同样使用低频信息的真实label样本的实验,拟合效果有明显减少。而对于加入高频信息的实验,两者都能获得很好的拟合效果。
实验可以说明,高频信息之间由于差异较大,模型能够建立其与任意label之间的关系,更类似于“记忆”。并且,学习真实样本时,模型偏好低频信息,这与人类视觉对低频信息的偏好吻合(分析较复杂强烈推荐看原文)。
总结
本文整理了近期阅读的图像对抗样本的文献,介绍了一些对抗样本生成方法,以及近期有关对抗样本的频率观点的可解释性工作。这些观点非常直观简洁,试验工作也愈发清晰,因此也诞生了许多基于处理图像高频部分技术的对抗防御研究,和针对高频部分的傅里叶基,生成有效对抗样本的工作。