深度模型是脆弱的,易受人类难以察觉的扰动的影响而误判。蚂蚁集团的业务时刻面临黑产攻击的风险,这对模型的鲁棒性提出了极大的挑战。天筭实验室研究发现,在对抗训练中,使用高效的自动化攻击器,实时地根据模型和样例构造最优扰动,提升攻击效果,有助于增强防御模型的鲁棒性。
“防不严,攻(击器)之惰”。近日,蚂蚁安全实验室旗下天筭实验室的论文研究被录用于NeruIPS 2022(人工智能顶级学术会议“神经信息处理系统大会”)。本篇论文聚焦于对抗训练中的攻击器,通过高效的自动化攻击器,在训练中实时地根据模型和样例构造最优扰动,提升攻击效果,从而增强模型的鲁棒性,适用于多种安全业务场景。NeurIPS(Neural Information Processing Systems)是全球最负盛名的机器学习和计算神经科学领域顶级会议之一,讨论内容包含机器学习、计算机视觉、自然语言处理、神经科学等领域,其收录论文代表了相关研究的最高水平,也是未来技术发展的重要风向标。今年NeurIPS共收到 10411 篇论文投稿,接收率为 25.6%。1. 对抗训练技术背景
深度模型尽管在各种应用中取得了成功,但是容易受到人类难以察觉的扰动的影响。如图1所示,在输入中添加称为对抗扰动的具有特异性的噪声,可以使深度模型以高置信度做出错误的预测。这些现象表明,通过最小化经验风险训练的深度模型并不具备鲁棒性。
图1. 对抗样本示例[Goodfellow et al., 2015]对抗训练是提升模型的鲁棒性的有效范式:在每步训练时,攻击器通过扰动自然样本,得到最大化当前模型损失的对抗样本,用于训练模型;模型在最小化攻击器造成损失的博弈中,显著地提升自身的鲁棒性。基于对抗训练的鲁棒性提升,学术界对其各个部分进行了改进,例如使用更具鲁棒性的模型架构、设计更好的损失函数和利用未标记的数据等。公式1. 从模型训练到对抗训练
然而,在对抗训练的实际应用中,不同数据类型、任务场景需要人工调整攻击器关于生成对抗样本的超参数。由于对抗训练会成倍增加模型的训练开销,这一过程需要消耗大量资源。并且,经验证明,更好的扰动能产生更鲁棒的模型。“防不严,攻之惰”,现有方法对训练时不断更新的模型与所有样例都使用相同的攻击器超参数,阻碍了模型鲁棒性的进一步增强。针对上述两个缺陷,我们提出了自动化攻击器A²,希望在对抗训练的过程中,实时地根据当前模型与样例,自动调整扰动生成的超参数,生成最适合的对抗样本,进一步提升模型的鲁棒性。2. 更好的攻击,更鲁棒的模型
表1. 不同的攻击步数K下,模型的鲁棒精度 [Gowal et al., 2020]
首先,我们需要验证更好的攻击能否提升模型的鲁棒性。[1]中调整攻击器的超参数(攻击步数和扰动空间),展示了对抗训练得到模型的鲁棒精度。表1显示,随着攻击步数K的增加,模型鲁棒精度也不断上升(存在边际效应)。然而,训练开销也随之线性增加。其次,我们探究能否通过攻击器的超参数调优,提升模型的鲁棒性。[2]指出使用随机初始化+单步攻击器生成对抗样本,并人工调整超参数,即可达到多步攻击器的效果,极大地节省了对抗训练的开销。3. 方法介绍
A²是一个参数化的自动攻击器,可以在对抗训练过程中自动调优,根据当前模型和样例,生成最适合的扰动。
我们通过参考现有的攻击器来设计一个通用的攻击器空间。攻击者空间由 attack cell 堆叠而成,每个 cell 表示单步攻击。cell 由表示每类超参数的 block 组成,其中元素为超参数的具体取值 operation。然后,我们采用一个参数化攻击器在每步 cell 中搜索每个 block 的 operation,从而为当前模型和每个样例构建最大化损失的攻击器。图2(a)展示了A²的流程,图2(b)和图2(c)展示了构建的攻击器案例。
图2. A²总览[论文截图]
3.1 攻击器空间
通过归纳大部分攻击器,我们发现攻击器可以表示为由扰动方法和攻击步长两类超参数组成的单步攻击器的堆叠。因此,如图2(a)所示,我们设计了一个由K步 attack cell 组成的通用的攻击器空间。其中,每个 cell 包含了两类超参数 block:- 扰动方法:离散超参数,包含了经典攻击方法 FGM 和 FGSM,带动量的攻击方法 FGMM 和 FGSMM,随机扰动 Gaussian 和 Uniform,以及用于停止扰动的 Identity;
攻击器空间具有丰富的表达能力,可以表示许多常用的攻击器:- K步 PGD:如图2(b)所示,在前K个 attack cell 中,我们选择 FGSM 作为扰动方法,2/255作为攻击步长;在后续 attack cell中,选择 Identity作为扰动方法即可;
- R+FGSM:如图2(c)所示,在第 1 个 attack cell中,选择步长为 8/255的均匀噪声 uniform,在第 2 个 attack cell中,选择步长为 10/255 的梯度扰动 FGSM,在后续 attack cell中选择 Identity作为扰动方法即可;
3.2 自动化攻击器
如图2(a)所示,我们认为当前输入对于模型损失的梯度同时包含了当前模型和样例的信息,通过自动化攻击器中的网络提取其中信息投影到因空间内,作为 query。对于 block 中的每个 operation,我们为其在自动化攻击器中初始化了可训练的 embedding 作为key。通过 dot-product attention,可以得到每个 operation 的 score,从而进行选择。对于连续超参数,我们用归一化的 score 作为权重对 opeartion 进行汇总。对于离散超参数,以归一化的 score 为概率,从相应的 block 中采样某个 opeartion。然而,对扰动方法的采样导致训练自动化攻击器的梯度为0,即其 opeartion embedding 无法训练。我们使用重参数化将采样的随机性转移到辅助噪声,重构自动化攻击器的目标函数,并使用蒙特卡洛法对期望损失进行估计。4. 实验结果
表2. A²与常用的PGD在不同攻击步数下的攻击效果比较
从表2可以看出,A²通过在攻击器空间的搜索,调整扰动方法与步长,构造了更强的攻击器,具有更好的攻击效果。图3. A²的收敛性 [论文截图]
图3验证了A²在从头训练的设置下,需要约20个 epoch 收敛。在实际对抗训练中,由于采用了近似估计的方式,A²在相同步数下,从存储和计算开销的角度,仅比同步数的PGD多约5%的开销。表3. 不同数据集上,PreActResNet-18的鲁棒精度表4. CIFAR-10上,WideResNet-34-10的鲁棒精度
表3和表4是A²在不同robust benchmark的结果。从中可以看出,A²对于各类对抗训练方法是通用的,并能可靠地提高模型鲁棒性。表5. 超参数实验:A²在不同学习率和不同扰动限制下的攻击效果
A²引入了优化自动化攻击器的优化器超参数和扰动限制的超参数。表5验证了A²对这两类超参数不敏感,显示了稳定的攻击性能。5. 可视化
图4. 不同数据集上,各步 cell 选择的扰动方法的分布
图4展示了A²对扰动方法的选择,可以看出:对于攻击初期,即 block 1,倾向于简单的FGM、FGSM和少量随机扰动;对于中间攻击步,基于动量的扰动方法更受偏好;不同数据集对不同的扰动方法具有偏好。6. 总结与展望
本文先介绍了对抗训练的技术背景,并验证了更好的攻击产生更鲁棒的模型的思想,通过算法创新提出A²,利用自动化攻击器,在通用的攻击器空间中,利用注意力机制来选择离散攻击方法和连续步长,并进一步生成对抗性扰动用于对抗训练。实验结果表明,A²以较低的额外开销产生了更强的攻击,并可靠地提高了各类对抗训练方法的鲁棒性。未来,我们将从如下方向继续在对抗训练上探索和实践:- 通过正则化项约束自动化攻击器,考虑自然精度和鲁棒精度的平衡;
[1] Gowal S, Qin C, Uesato J, et al.
Uncovering the limits of adversarial training against norm-bounded adversarial
examples[J]. arXiv preprint arXiv:2010.03593, 2020.[2] Wong E, Rice L, Kolter J Z. Fast is
better than free: Revisiting adversarial training[C]//International Conference
on Learning Representations. 2019.