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