本次分享的论文是发表于ICML2020的 Attacks Which Do Not Kill Training Make Adversarial Learning Stronger,作者为 Jingfeng Zhang, Xilie Xu, Bo Han, Gang Niu, Lizhen Cui, Masashi Sugiyama, Mohan Kankanhalli。
为了得到鲁棒性较强的神经网络,我们常常用到基于minmax方法的对抗训练。但是对抗样本的选取通常是保守的以至于对抗训练会损害到网络的泛化能力。
在这篇文章中,作者提出一个基本的问题:网络的泛化能力和鲁棒性一定二者不可得兼么。作者认为对抗训练需要用真正的对抗样本去更新模型,从而提出了一种新的对抗训练方式——friendly adversarial training (FAT):不是用loss最大的样本作为训练用的对抗样本,而是在所有自信会导致分类错误的样本里去找loss最小的那个作为对抗样本。
文中给出的方式也很容易实现,只要早一点停下来PGD这样的生成对抗样本的算法,作者称之为early-stopped PGD。理论上,FAT可以通过给出对抗风险的上界证明;实验上,early-stopped PGD让我们可以否定最开始提出的问题:对抗鲁棒性可以在不对泛化能力做妥协的情况下达成。
找到loss最大的对抗样本一般用到的方式是固定步长的PGD:
文中将其称为cross-over mixture,即不同类样本高度混杂的情况,从而使分类器学习的难度大大增加,泛化效果一落千丈,“杀死了”神经网络的训练。在这篇论文中,作者引用尼采的名言:“杀不死你的会使你更强大”,并以此为指导思想提出了friendly adversarial training (FAT)。
如图所示:FAT不是用loss最大的样本作为训练用的对抗样本,而是在所有我们基本确信会导致分类错误的样本里去找loss最小的那个作为对抗样本。
这种方法的理论上的正确性是由推出它是对抗风险的一个上界证明的。对抗风险定义为:
我们通过early-stopped PGD来实现,具体算法如下:
这里τ的设置保证了我们生成的对抗样本会分类错误的置信度,是一个超参数,也可以通过实验调参找到相对合适的值。FAT可以认为是一个合理的改进策略有两方面的原因:首先,它对于对抗样本的生成纠正了之前AT防御方法应对攻击的一个矛盾——攻击方法生成样本的目标是尽可能骗过分类器使之分类错误,而AT找来训练的对抗样本确是是分类器loss最大的那些,loss最大和分类错误并不是一种最合宜的对应;另外,它将课程学习的思路贯穿始终,即随着网络训练过程的发展渐进式地增大训练的难度,这里一方面由FAT里对抗样本产生的条件内在保证,另一方面我们可以在训练过程中分阶段增大τ值。
可以发现,无论是与标准AT、加入了课程学习的CAT/DAT比较,还是融入TRADES之后与原TRADES算法比较,FAT都做到了在鲁棒性小损失甚至不损失的情况下挽回了网络的泛化性能;另外,由于一定程度上避免了过度PGD导致的cross-over mixture问题,对FAT可以使用更大的生成对抗样本的鲁棒半径,从而有机会进一步提升鲁棒性而不使泛化能力大幅下降。
FAT可以很顺利地应用到诸如TRADES、MART等所有由AT衍生出的state-of-art的方法里。与传统的对抗训练相比,FAT 面对自然数据的测试具有更好的精度,同时对对抗性数据保持具有竞争力的鲁棒精度。FAT 在计算上是高效的,因为early-stopped PGD节省了大量用于搜索对抗性数据的反向传播。由于FAT 可以缓解cross-over mixture问题,它可以启用更大的扰动边界值。