作者丨晏志远,加小俊
近日,由中科院信工所、香港中文大学(深圳)和腾讯AILab共同提出的一种可学习的对抗训练框架LAS-AT,被CVPR 2022(Oral)顺利接收。通过引入“可学习的攻击策略”,LAS-AT可以学习自动产生攻击策略以提高模型的鲁棒性。该框架由一个使用对抗样本进行训练以提高鲁棒性的目标网络和一个产生攻击策略以控制对抗样本生成的策略网络组成。在不同数据集上的实验结果展现了LAS-AT的优越性。
论文标题: LAS-AT: Adversarial Training with Learnable Attack Strategy
收录会议: CVPR 2022
论文链接: https://openaccess.thecvf.com/content/CVPR2022/html/Jia_LAS-AT_Adversarial_Training_With_Learnable_Attack_Strategy_CVPR_2022_paper.html
代码链接: https://github.com/jiaxiaojunQAQ/LAS-AT
1
问题背景
许多先前工作证明,深度神经网络(DNN)的许多实际应用都很容易受到对抗样本(AE)的影响,如图像分类、物体检测、机器翻译等。为了解决该问题,有许多相关的防御方法被提出。其中,对抗训练(AT)被认为是最有效的防御方法之一。对抗训练经常被建模为求解一个min-max问题,而对抗样本的生成是求解该问题的关键。以前的研究工作大多采用投影梯度下降法(PGD),并手动指定攻击参数来生成AE,这些攻击参数的组合可被视为攻击策略。目前的方法主要存在以下两个问题:
1)大多数现有的方法仅利用手工制定的攻击策略来生成AE,即仅使用固定的攻击策略来生成AE,限制了模型的鲁棒性;
2)大多数方法只使用一种攻击策略,而目前已有研究指出在对抗训练的不同阶段中使用固定的攻击策略会使得模型的鲁棒性受限。
在本文中,我们通过引入“可学习的攻击策略”,即LAS-AT,提出了一个新颖的对抗训练框架,它可以学习自动产生攻击策略以提高模型的鲁棒性。
2
方法介绍
LAS-AT方法的总体框架如图所示:
LAS-AT框架图:它由一个策略网络和一个目标网络组成。这两个网络是具有竞争关系的。对于策略网络,在给定一个干净的图像时,策略网络会生成一个对应的针对该样本的攻击策略;对于目标网络,AE生成器会根据攻击策略和目标网络来生成一个AE,用于训练目标网络。同时,目标网络也会分别给予AE生成器和策略网络一个监督信号。
目标网络是一个用于图像分类的卷积神经网络,可以表示为,其中表示的是估计标签,表示一张输入图像,表示神经网络的参数。
策略网络生成对抗攻击的策略进而去控制对抗样本的生成,其输入的是一个样本,输出的是一个策略。由于策略网络的参数是逐步被更新的,在不同的训练阶段中,根据目标网络的鲁棒性的情况,给定相同的样本作为输入也会给出不同的策略。令表示一种策略,其中每个元素表示的是一个攻击参数。
表示的是策略值空间,参数有个选项,并且被编码成one-hot向量。在不同的攻击参数下每个参数选项的意义是不同的。比如对于PGD攻击来说,它有三个攻击参数,即攻击步长的大小,攻击迭代数,以及最大的攻击扰动强度。
每一个参数有个可选值,比如攻击步长的取值范围为,攻击迭代数的取值范围为。这些攻击参数的可选值的一个组合可以看作是一个策略。策略网络在给定输入时输出策略的条件概率分布,其中是输入图片,是策略网络的参数。
给定一个干净的样本,对抗样本的生成过程可以被定义为:
其中表示的是一个干净的样本,表示的是其对应的对抗样本,是一个攻击策略,表示的是目标网络的参数,表示的是PGD攻击。
标准对抗训练有固定的攻击策略,可以表示为:
其中,并且表示的是人为设定的攻击策略。是训练集,表示的是交叉熵损失函数,其用于衡量对抗样本的预测标签与真实标签之间的距离。在本文中,我们没有使用基于人为设定的策略的样本,而是使用一个策略网络去自动生成基于策略的样本。在论文中对抗训练的策略可以公式化表示为:
与标准的对抗训练相比,最与众不同的地方在于对抗样本的生成方式。标准对抗训练采用的是人为设定的策略去求解内部优化问题。然而本文中我们是使用策略网络根据条件概率分布去产生一个样本依赖策略,即我们提出的策略是可以学习的,其对抗样本的生成包含策略网络参数,这会导致损失函数是两个网络参数的函数。
由论文提出的对抗训练的公式可知,目标网络和策略网络是有一种相互竞争的关系,即最小化和最大化相同的损失函数。目标网络学习调整参数去抵御对抗攻击策略生成的对抗样本,而策略网络根据给定的攻击目标网络的样本去提高攻击策略。
在一开始的训练阶段,目标网络是非常脆弱的,一个弱的攻击就可以使它分类出错,此时,策略网络可以很容易的生成有效的攻击策略,并且策略是多种多样的,因为弱的攻击策略和强的攻击策略都可以成功攻击目标网络。
随着训练过程的进行,目标网络变得越来越鲁棒,策略网络不得不去学习生成更强对抗样本的攻击策略。因此,这种博弈机制可以随着策略网络的生成策略的提高逐步促进目标网络的对抗鲁棒性。
为了引导策略网络的学习,我们提出了一种新的度量方式去评估对抗攻击,主要使用的是目标网络单步更新的鲁棒性。具体地,一个攻击策略首先被用作去创造一个对抗样本,并且该对抗样本通过一阶梯度下降法去单步调整目标网络的参数。
如果更新后的目标网络能够正确预测由其它攻击策略生成的对抗样本的标签,则此时可以说该攻击策略是有效的。评估鲁棒性的损失函数可以表述为:
其中,是更新目标网络的参数,是步长,是由攻击策略生成的对抗样本。
一个好的攻击策略应该不仅可以提高目标模型的鲁棒性也能够保持预测干净样本的准确率。在本论文中我们也考虑了单步更新目标模型在预测干净样本的性能,评估攻击策略的损失函数可以被定义为:
结合以上两个损失函数项,本论文方法的对抗训练总损失函数可以表述为:
其中,和表示为和的权衡系数。
2.6. 优化
我们提出一个算法交替优化这两个网络的损失函数。给定参数,优化目标网络的子问题可以表述为:
给定一个干净的样本,策略网络生成一个策略分布,从该条件分布中随机采样出一个策略,并用该策略去生成对抗样本。利用以下梯度下降法去更新目标模型的参数:
其中表示的是在一个批次中的样本数量,表示的是学习率。
给定,优化策略网络的参数的子问题可以描述为
其中
在这个优化问题中,最大的挑战在于对抗样本生成的过程是不可微的,即梯度信息不能通过对抗样本被反向传播到攻击策略的调整中。
另外,还有其它很多不可微的操作,如关系到对抗攻击中迭代次数的选择等,它们很难将梯度信息反向传播到策略网络中。在该论文中我们利用强学学习算法去解决以上不可微的问题,具体过程请参见原文。
3
实验结果
下表分别为不同对抗训练的方法在CIFAR10、CIFAR100以及Tiny Imagenet三种不同数据集上鲁棒性的实验结果。可以发现,在大多数攻击场景下,论文中提出的三种方法对抗训练出的模型的性能都优于其它方法对抗训练出的模型,而且在很多情况下,论文中的方法不仅提高了基础模型的鲁棒性,而且提高了干净样本分类的精度。
Cifar-10结果
Cifar-100结果
Tiny-ImageNet结果
我们将论文中方法与其他超参数搜索方法进行了比较,包括经典的超参数搜索方法(随机搜索)和两种自动超参数搜索方法。从下图可以看出,论文中的方法在所有攻击场景下对抗训练出的模型都达到了最佳的鲁棒性性能。
为了研究LAS-AT的工作原理,我们分析了策略网络在不同训练阶段的攻击策略分布。最大扰动强度的范围设定为3到15,下图所示为对抗训练期间最大扰动强度的分布演变情况。
在对抗训练开始时,分布覆盖了最大扰动强度的所有可选值。每个值都有选择的机会,这确保了对抗样本的多样性。随着对抗训练的进行,小扰动强度的百分比降低。在后期,最大扰动强度的分布被几个大值占据。
这一现象表明,策略网络逐渐增加大扰动强度的百分比,以生成更强的对抗扰动,进而目标网络的鲁棒性通过使用强对抗样本进行训练而逐渐增强。
我们也在WRN-70-16上测试了方法的有效性。实验表明LAS-AWP可以提高模型的鲁棒性,实现更高的鲁棒性精度。在CIFAR-100上,Cui等人为LBGAT训练WideResNet34-20(WRN-34-20),并在没有额外的真实或合成数据的情况下实现了最先进的稳健性。在WRN-34-20上,LAS-AWP也可以达到更高的鲁棒性精度。结果见表5。
为了验证目标函数中每个元素的有效性,我们在CIFAR-10上用ResNet18进行消融实验。在我们的损失中,除了损失,我们还提出了两个额外的损失项来指导策略网络的学习,即评估稳健性的损失和预测清洁样本的损失。我们通过使用、&、&和&&,分别训练四个LAS-PGD-AT模型。用一组对抗性攻击方法对训练好的模型进行攻击。结果显示在下表中。分类精度是评价指标。“clean”代表使用干净图像进行测试,而其他攻击方法使用AE进行测试。
4
总结
我们通过引入“可学习攻击策略”的概念,提出了一个新颖的对抗训练框架,它由目标网络和策略网络构成。在博弈机制下,策略网络根据目标模型的鲁棒性学习产生动态的攻击策略,用于对抗样本的生成,而不是使用纯手工的方法。为了指导策略网络的学习,我们还提出了两个损失项,并在三个基准数据集上进行了广泛的实验评估,以证明所提方法的优越性。