关于Adversarial Machine Learning at Scale的理解

 Goodfellow基于之前的FGSM攻击方法做出了一部分改进。鉴于之前的FGSM的成功率并不高(在imageNet上仅有63%69%)。Goodfellow做出了一些改进,从原先的以增加原始类别标记的损失函数为目标变为了减少目标类别的损失函数为目标:

Xadv=Xϵsign(XJ(X,ytarget))

其中ytarget是所有类别标记中"最不可能"的标记。即
yLL=argminy{p(y|X)}

除此以外,还可以通过迭代的方式来增加攻击成功率:
Xadv0=X,XadvN+1=ClipX,ϵ{XadvN+αsign(XJ(XadvN,ytrue))}

他们将该方法称为Basic Iterative Methods(BIM),后来Madry等人指出这实际上等价于无穷范数版本的Projected Gradient Descent(PGD),这是一个标准的凸优化方法。
作者实验还表明了FGSM的可转移性比BIM的可转移性强很多,这很可能是因为BIM生成的对抗样本太过针对性,因此减少了对抗攻击的泛化能力。这也许为黑箱攻击提供了一些鲁棒性。
 此外,由于之前的对抗训练并没有考虑到大规模样本下的复杂模型,因此作者提出了一个新的对抗训练方式来应对批量训练,使用一个可以独立控制每批次对抗案例的数量和相关权重的损失函数:
Loss=1(mk)+λk(icleanL(Xi|yi)+λiadvL(Xadvi|yi))

其中L(X|y)是单个样本X对于真实标记y的损失函数,m是小批量上的训练样本总数,k是小批量内对抗样本的数目而λ是参数来控制对抗样本对于损失函数的权重。
具体算法如下:
missing
需要注意到的是,这里用于生成对抗样本的原样本就没有再放进去训练。
 对抗训练增加了对于这些对抗攻击的鲁棒性(这应该是显而易见的)。但作者同时也指出了对抗训练略微减少了泛化精度,并且对于此给出的解释是:对抗训练起到了一定的正则化的作用。并给出了相关实验的一些论证:在过拟合的模型上,对抗训练能够降低测试误差;而在像ImageNet这些训练误差就很高的数据集上(欠拟合),对抗训练反而增大了训练误差,扩大了训练误差和测试误差的差距。因此也许,对抗训练也有一些正则化的作用。
 除此以外,作者还提出了一个比较重要的发现:标签泄漏(label leaking)。即将FGSM生成的对抗样本作为训练集训练出来的分类器,会使得在对抗样本测试集上的分类精度远高于"干净"样本测试集。
 对此,作者给出的解释是:由于对抗样本的生成是将真实样本标记和原始样本一起放入,生成的改变标记的对抗样本,再放入DNN中训练,可能隐含的将真实样本标记的信息给了DNN。(作者原话是,我们的攻击方式(one-shot)太过简单:基于真实类别标记做一个非常简单并且可以预见的变换,也许DNN学习到了这个变换,这使得我们无意之间在输入中泄漏了真实标记。)为了防止标签泄漏,作者提出使用迭代的方式或者将分类器分类原始样本的标记作为原始标记来代替原先的真实样本标记。(这个方式其实觉得值得考虑,按照作者的解释,这样不是相当于将分类器原始分类样本的标记放入输入了么,这不会诱导对抗样本训练出来的分类器作出原始样本分类的结果?)
 进一步的,作者给出了标签泄漏的定义:对于一个给定样本,当分类起将基于真实标签生成的对抗样本分类正确而将基于其余标签生成的对抗样本分类错误时,就称该样本标记泄漏了。
作者还做了有关模型大小和鲁棒性的关系,作者指出对于没有对抗训练的模型,太大的模型或者太小的模型都会导致鲁棒性很差,而对于对抗训练的模型,由于条件限制,目前的模型越大,鲁棒性显得越好。

阅读更多

没有更多推荐了,返回首页