APP下载

基于对抗训练增强模型鲁棒性的新方法 ①

2022-01-14叶从玲

关键词:鲁棒性扰动训练方法

叶从玲

(安徽理工大学计算机科学与工程学院,安徽 淮南 232001)

0 引 言

研究表明,防御性能对抗训练方法表现良好且应用广泛。近年来研究人员们提出许多对抗防御技术,如Goodfellow等人[1]提出基于梯度的攻击算法FGSM(Fast Gradient Sign Method),并最先使用对抗训练的概念,经过FGSM对抗训练的模型可以使FGSM对抗样本的攻击成功率大大下降,但是其模型泛化性能差,只能防御FGSM对抗样本。Madry等人[2]提出基于迭代的PGD(Project Gradient Descent)方法进行对抗训练,经过PGD对抗训练的模型能抵御一阶L∞攻击,但是由于迭代次数太多导致训练代价太高。针对这一问题Shafahi等人[3]进一步对PGD方法进行了改进,其核心思想是高效利用一次计算过程产生的两种梯度,但是该方法未能有效解决迭代次数过多的问题。Tramèr等人[4]提出集成对抗训练算法(Ensemble Adversarial Training),该方法的提出缓解对抗训练模型易受黑盒攻击的问题。Zhang等人[5]提出利用神经网络结构降低梯度计算量的YOPO(You Only Propagate Once)方法,该方法通过传播第一层来估计输入的梯度。通过对样本添加人类难以察觉的扰动,会使深度学习模型以高置信度给出错误的预测。这一现象给深度神经网络的应用领域带来了极大安全威胁[10]。为了更好地防御对抗样本的攻击,需要构建更加完善的对抗防御体系。

上述研究中提出的方法都未能在维持模型鲁棒性的情况下降低计算成本,反而通过一系列的操作(如增加迭代次数,计算多次梯度等)增加了计算成本,我们采用基于FGSM随机扰动的对抗训练方法,通过引入周期学习率机制,在提高模型训练的效率和鲁棒性的同时降低训练成本。

1 基本概念

1.1 对抗样本

对抗样本(Adversarial Examples)是攻击者有意向原始样本添加难以察觉的扰动,使得深度学习模型出现显著的准确率降低现象。输入样本通常包含原始图片--类别标签对,由于对抗样本是在原始图片的基础上添加扰动变换得到且这种变换只针对的图片,与类别标签无关。因此我们提出的方法主要强调不含类别标签的对抗样本特性。简单来说,如果有一个目标分类器模型C和一个原始样本S(未添加噪声),假设S被C正确分类,即C(S)=ytrue。此时对输入样本添加一定程度的扰动,得到S'。S'与S几乎相同,但是C(S')≠ytrue,这样的样本S'称之为对抗样本。

1.2 对抗训练

对抗训练(Adversarial Training)是最为直观的对抗样本防御方法,主要思想是将原始样本和对抗样本一起作为训练数据对模型进行训练,以此提高模型对对抗样本的鲁棒性。以下介绍几种目前较为主流的对抗训练方法。

1.2.1 FGSM对抗训练

2015年,Goodfellow等人[1]首次提出了基于对抗训练的防御方法--FGSM,他们采用FGSM方法来构造对抗样本,通过对原始样本和对抗样本共同的损失函数优化来对模型的参数进行更新,其对抗训练定义如式(1)所示:

(1-γ)J(θ,x+αsign(∇xJ(θ,x,y))

(1)

其中γ为超参数,用来调节两个损失函数的比重。该方法训练得到的模型仅仅针对基于FGSM方法构造的对抗样本具有较好的防御性能,无法防御其他攻击算法构造的对抗样本,模型的防御能力非常有限。因此在使用对抗训练方法时,需强调对抗样本的多样性,以满足训练模型具备对多种攻击算法有较好的泛化性能。

1.2.2 PGD对抗训练

为解决基于迭代方法生成的对抗样本攻击,Madry等人[2]提出PGD对抗训练方法,并从鲁棒优化的角度研究模型的对抗鲁棒性以及给出对抗鲁棒性的统一观点。对抗样本的攻击防御问题总结如式(2)所示:

minρ(θ),whereρ(θ)=Ε(x,y)~D[maxδ∈SJ(θ,x+δ,y)]

(2)

其中x为原始样本,δ为扰动信息,S为扰动信息的集合,y为原始样本x的正确标签,D是数据(x,y)满足的分布,θ是模型参数。对式(2)的优化可分别从攻击者和防御者的角度展开。攻击者希望内部的损失函数最大化,目的是找出有效的对抗样本。防御者希望外部的优化问题最小化,目的是减小对抗样本造成的损失函数升高。基于PGD对抗训练方法所得到的模型能够有效防御多种类型攻击,然而该方法存在严重的缺陷,即生成PGD对抗样本的成本太高。

2 算法实现

2.1 算法描述

虽然PGD方法有利于实现内部损失函数最大化,但是由于其模型在训练过程一般要经历三重循环,总的循环次数为T*M*N(PGD迭代次数为N),从而造成训练成本的增加。实现高效稳定的对抗训练机制关键在于减少内部寻找最优扰动的迭代次数,PGD本质上是多次FGSM扰动的结果,如果使用FGSM扰动算法代替PGD扰动算法可以将多次迭代次数降低到只有一次。但是基于FGSM的对抗训练方法同样存在缺陷,它只能防御通过FGSM方式构造的对抗样本。研究表明基于FGSM对抗训练方法泛化性能不佳的主要原因是其样本多样性不足,在进行训练时,其扰动幅度和范围有统一的规范和限制。

我们引入基于随机扰动的对抗训练方法可以缓解样本的多样性问题。首先随机初始化扰动使其服从均匀分布;其次利用初始化扰动和扰动所得的梯度值,按照不同权重组合得到最终的梯度值;再次更新扰动并将其限制在一定范围内;最后更新模型的参数。利用这种方法,可以一定程度上丰富对抗样本的多样性。由算法1可知,基于随机扰动的对抗训练方法可以很大程度减少迭代次数,降低训练成本。

算法1 基于随机扰动的对抗训练 输入:训练次数T,扰动幅度α,批量大小M,阈值∈,目标模型fθ,超参数γ(通常设为0.3)输出:θ初始化:初始化参数θ for t=1 … T do for i=1 … M doδ=Uniform(-∈,∈) // 随机初始化扰动δ=γδ+(1-γ)αsign(‰δJ(fθ(xi+δ),yi)) // 更新扰动δ=max(min(δ,∈),-∈) // 将扰动限制在一定范围内θ=θ-‰θJ(fθ(xi+δ),yi) // 更新模型参数 end for end for return θ // 返回模型参数

2.2 周期性学习率

学习率是训练深度神经网络最重要的超参数,合适的学习率对训练模型的精度和效率具有决定作用。学习率较大可加快梯度更新模型的速度,但是模型难以收敛;较小则会减缓模型收敛速度,因为此时模型可能收敛到一个局部最优点或者鞍点。目前学习率更新方法可分为三类:逐渐衰减策略、自适应调整策略[6, 7]以及周期性重启学习率调整策略[8, 9]。

为更大程度优化基于随机扰动的对抗训练方法的训练过程,引入周期性学习率机制,该机制由Leslie 等人提出[8],具体步骤是先设置学习率的区间,然后在训练过程中学习率按照此区间进行周期性变化,而不是固定的值。发生周期变化的学习率有助于模型在训练过程中跳出局部最低点和鞍点。鞍点相比于局部最低点更加阻碍模型的收敛。

通常情况下周期性学习率机制会涉及到3个主要参数:最大学习率、最小学习率以及步长,具体的取值需要根据模型的结构和数据集的类型进行设定。实验部分采用周期性学习率机制与Adam机制相结合的方法,设定迭代次数为20,最大学习率为0.05,最小学习率为0.005,每个周期初始学习率的设置如图1所示。

图1 周期学习率变化情况

3 实验分析

3.1 实验准备

本节验证基于随机扰动的对抗训练方法性能,下面将对实验的具体设置和操作进行说明:实验环境为Google Colab云平台,编程语言为Python3.8,深度学习框架为PyTorch。实验采用的数据集为FashionMNIST。FashionMNIST数据集包含10类共7万个不同商品的正面图像。将数据集分为10000个测试样本和60000个训练样本,每个样本包括一张28*28的灰度图像。

3.2 周期性学习率机制

通过实验验证引入周期性学习率机制对模型训练过程的有效性,该实验比较两种不同情况下的模型拟合效果:(1)仅使用Adam机制,学习率为0.03;(2)使用周期性学习率与Adam机制相结合的方式,最大学习率为0.05,最小学习率为0.005,初始学习率变化情况参照图1。

在FashionMNIST数据集上进行测试,其中参数α设置为0.15,∈设置为0.1。实验结果表明(如图2,图3所示),基于Adam机制在迭代到第8轮之后趋于稳定状态;采用Adam+CLR训练的模型收敛速度还是较慢,但是在迭代次数接近14次时,Adam+CLR训练的模型的拟合效果逐渐超过Adam训练模型。同样在FashionMNIST测试集上预测精确度时(如图4所示),基于Adam+CLR机制的训练过程较为稳定,且最终的拟合效果要优于Adam机制。

图2 FashionMNIST训练集损失

图3 FashionMNIST训练集预测精确度

图4 FashionMNIST测试集预测精确度

综上所述,通过引入周期性学习率机制,能够有效的提高对抗训练过程的稳定性和拟合效果,在给定的区间间隔内使用周期性变化的学习率有助于模型在训练过程中跳出局部最低点和鞍点,进而解决较小的学习率通常不能产生足够的梯度变化来跳出该点或需要消耗较大时间代价的问题。

3.3 对抗训练方法对比

需要解决的核心问题是降低对抗训练的成本,同时保证训练所得的模型性能不受影响。下面的实验分别从训练成本和模型性能两个方面来对我们提出的方法进行比较和评估。基于PGD对抗训练方法作为参考对象。对于FashionMNIST数据集,PGD对抗训练的参数设置:α=0.15,∈=0.1,N=7,优化算法为Adam,学习率为0.3。基于随机扰动的对抗训练机制的实验参数设置与实验3.2相同。实验过程中,使用对抗样本来对模型泛化性能进行测试,对抗样本由PGD算法产生。

对于训练成本,主要关注模型训练的时间。基于随机扰动的对抗样本训练机制内部采用随机初始化和FGSM,不需要进行迭代,从而大幅度降低训练时间。具体的实验结果如表1所示,这里比较每一轮迭代所需要的平均时间(时间越低意味训练成本越低),当PGD迭代次数N=7时,PGD对抗训练所需要的时间是随机扰动对抗训练的4倍左右。PGD迭代次数为N,而FGSM仅为一次迭代,理论上来讲,基于随机扰动的对抗训练方法所需要的时间约为PGD对抗训练的1/N。

表1 训练时间

表2 对抗鲁棒性

在模型性能方面,主要关注经过对抗训练所得的模型对于对抗样本的鲁棒性。在FashionMNIST数据集上(如图5所示),虽然两种对抗训练方法都有一定程度的震荡,但是基于随机扰动对抗训练方法稍微平缓一些,且整体趋势是不断上升的。表2展示了各个模型最终的预测精确度。

总的来说,所提出的基于随机扰动的对抗训练方法在减少训练成本、提高模型泛化性能等方面均优于PGD对抗训练方法。

图5 FashionMNIST数据集的模型性能

4 结 语

对抗样本的防御采用对抗训练方法能提高模型的鲁棒性,但随之而来的问题是训练成本大大增加,并且模型的泛化性能也会降低。针对以上问题,提出基于随机扰动的对抗训练方法:采用基于FGSM的随机扰动方法生成对抗样本,接着将随机扰动生成的对抗样本与原始样本用作训练集一起训练模型,并在训练过程中引入周期学习率机制。实验结果表明,我们提出的方法在训练过程中拟合效果以及稳定性比Adam机制更好,训练时间仅需PGD对抗训练的1/4,理论上训练时间约为PGD对抗训练的1/N(N为迭代次数),同时基于随机扰动的对抗训练方法训练所得的模型对于对抗样本的鲁棒性优于PGD对抗训练,证明我们提出的方法训练成本低且模型性能好。由于平台资源有限,无法在更复杂的数据集中进行测试,在今后的工作中,将会对更复杂的数据集进行深入研究。

猜你喜欢

鲁棒性扰动训练方法
一类五次哈密顿系统在四次扰动下的极限环分支(英文)
基于增强型去噪自编码器与随机森林的电力系统扰动分类方法
扰动作用下类岩石三轴蠕变变形特性试验研究
带扰动块的细长旋成体背部绕流数值模拟
武汉轨道交通重点车站识别及网络鲁棒性研究
谈高中数学习题训练方法与答题技巧
荒漠绿洲区潜在生态网络增边优化鲁棒性分析
壁球反手击球技术及其训练方法
跳远运动员专项力量训练方法
一种基于三维小波变换的鲁棒视频水印方案