基于FGSM的对抗样本生成算法

2023-03-27 02:18汤家军
计算机技术与发展 2023年3期
关键词:白盒梯度方向扰动

汤家军,王 忠

(中国人民解放军火箭军工程大学 基础部,陕西 西安 710025)

0 引 言

随着统计学习和计算机硬件的不断发展,深度学习在各个领域都取得了飞速的发展,在有的方面的表现甚至已经超过了人类。无论是AlphaGo在围棋上的优异表现,还是机器翻译取得的巨大成功,都表明了深度学习存在着巨大的潜能。基于深度学习的各种应用也走进了大众的视野,比如人脸识别[1]、手语识别[2]、医学影像[3-4]等。但是深度学习还存在一定的不稳定性[5],造成很多安全问题[6]。尤其是容易受到对抗样本的攻击,引起模型分类错误[7]。

前人提出了很多对抗攻击[8-9]与防御[10]的方法,但是还存在着很大的缺陷。该文对其中的一些缺陷进行了研究,提出了一种动态改变噪声幅值、随机添加扰动防止陷入局部最优解的算法,即Dynamic Change Iterative Fast Gradient Sign Method (DCI-FGSM)。

1 相关工作

自从Szegedy等提出对抗样本[11]以来,学者们发现只需要添加细微的扰动就可以让模型产生错误的预测。近年来,越来越多的研究发现对抗样本不仅可以找到模型的缺陷[12],还能使模型更具有鲁棒性[13],同时这种方法还可以适用于不同的模型。

为了攻击神经网络模型,Szegedy等人[11]提出有边界约束的L-BFGS算法,其收敛速度快、内存开销小,但步长计算精度不高;Goodfellow等[14]提出基于梯度方向的FGSM算法,可以有效生成对抗样本对模型进行白盒测试,但其只对梯度方向上进行一次更新,生成的对抗样本效果一般;Kurakin等人[15]基于FGSM,提出了I-FGSM算法,可以在梯度方向上进行多次迭代,但是可能会陷入梯度的局部最大值。所以Dong等[16]为了增强对抗攻击,提出了一类基于动量的迭代算法,可以摆脱局部最大值,但其只是盲目的去摆脱,存在着一定的局限性。Jia等人为了通过梯度的均方根对学习率进行约束,提出了AdaDelta-Nesterov动量方法[17],这种方法甚至不需要提前设定学习率,同时减少了无用的迭代过程。Wang 等人[18]为了欺骗模型,利用风格迁移使得对抗样本人眼不易区分,这种方法虽然具有一定的效率,但是在风格迁移的过程中可能会丢失图片本来的特征。Lin等人[19]提出一种防御量化的方法来防御对抗攻击,同时保持攻击的效率,在对于经过对抗训练的模型上取得了显著的成果。

2 对抗攻击算法

2.1 FGSM算法

Goodfellow等人[14]首次提出对抗训练,即用对抗样本训练神经网络,使得网络更具鲁棒性。他们提出FGSM(Fast Gradient Sign Method)方法,认为高维度的线性模型就可以产生对抗样本。他们在梯度上进行一步探索去最大化损失:

(1)

其中,∇xJ(θ,x,y)表示损失函数的梯度,sign(·)表示sign函数。

2.2 I-FGSM算法

FGSM算法在梯度方向上做攻击,速度快,但是其只能在梯度方向上做一次攻击。在FGSM算法的基础上,提出迭代式的FGSM算法,即I-FGSM(Iterative Fast Gradient Sign Method)算法[15]。I-FGSM算法沿着梯度的方向进行多步扰动,并且每一次都重新计算扰动的方向。

算法流程为:

(2)

(3)

2.3 MI-FGSM算法

I-FGSM在每次迭代中将对抗样本沿梯度的方向贪婪地移动,很容易让模型陷入局部最大值,并且过拟合,可能并不适用于所有的模型。因此,Dong等人[12]提出基于动量的方法MI-FGSM(Momentum Iterative Fast Gradient Sign Method):

(4)

(5)

g0=0为初始动量且μ为衰减因子。

3 DCI-FGSM算法

在现实世界中存在着很多的对抗样本[14],让人们更加关注深层神经网络的稳定性,学者们提出了大量的对抗攻击算法去对抗各个领域的模型(如:人脸识别、目标检测、语义分割等)。该文仅针对白盒测试中基于梯度的图像对抗样本算法做出分析。

图1 各种攻击算法关系

算法:DCI-FGSM。

输入:分类器f,损失函数J,真实样本x及其标签y,扰动幅度ε,迭代轮次T。

(a)xadv=x;

(b) 获得初始梯度g0=∇xJ(θ,x,y)

(c) fort=0 toT-1 do

(d)α=ε/t+1;

(g) end for

根据前人的研究,α最好的取值为ε/T,T是总的迭代次数,在迭代的过程中,α始终保持不变可能会导致模型跳过最优值。受此启发,在DCI-FGSM算法中,α不再这样取值,而是根据每次迭代的次数去取值,这样做的好处是不至于让每次迭代的步长过大,能够有效找到原始数据的边界。

图2为DCI-FGSM算法的基本流程,包含五个步骤。通过卷积神经网络获得扰动,不断迭代更新梯度获取对抗扰动,基于原始图像获取对抗样本。

图2 DCI-FGSM攻击算法流程

图2中,①表示通过卷积神经网络训练原始样本;②表示获取初始扰动,代表算法中的第2步;③表示迭代不断更新对抗样本,代表算法中的循环;④⑤表示将原始样本加上对抗扰动获取对抗样本。

DCI-FGSM算法总体公式为:

(6)

(7)

4 实验测试

在本节,通过实验对比了所提方法的效率,以验证DCI-FGSM的优势。

4.1 实验设置

(1)数据集。采用的是MINIST数据集,由60 000个训练样本和10 000个测试样本组成,每个样本都是一张28*28像素的灰度手写数字图片。

(2)网络模型。实验采用的网络模型为简单神经网络模型,网络结构如图3所示。

图3 简单神经网络模型结构

(3)实验设置。对于超参数,遵循文献[12]中的设定,迭代轮次T=10,步长初始为1.6,对于MI-FGSM的衰减因子=1.0。实验在GTX1080Ti显卡上运行计算。

(4)评价指标。通过模型的准确率以及模型的损失值判断生成的对抗样本的效果。准确率指简单神经网络模型对于正确分类图片对图片总数的占比,准确率越低,对抗样本的效果越好;损失值越高,对抗样本的效果越好。

4.2 实验结果

在本节,采用算法对模型进行了攻击,并对不同的算法进行比较。

图4、图5为神经网络在进行10个epoch训练下的准确率和损失值,可以看到损失已经降到极低且准确率很高,基本达到百分之一百。本节采用FGSM、I-FGSM、MI-FGSM、DCI-FGSM算法对此神经网络进行攻击,生成对抗样本,结果见表1,其中模型准确率是攻击前后模型对于图片的分类准确率,损失是攻击前后模型的损失值。在图6中最左边为原始图像,中间的为噪声,右边的为原始图像加上噪声后的图片。可以看到,原始图像与对抗样本无明显区别,但是神经网络却会对图像进行错误的分类。

图4 模型准确率随epoch变化

(左:真实样本,中:噪声,右:对抗样本)

表1中的结果显示,DCI-FGSM能够提高白盒攻击下的成功率,原始模型的准确率为98.25%,经过DCI-FGSM算法的攻击,其准确率降至4.5%,且相比较于FGSM、I-FGSM和MI-FGSM算法,DCI-FGSM具有更高的攻击效率,使得模型的损失值更大。

表1 攻击自定模型的准确率与损失

研究设置了不同的扰动值ε,针对正常训练的神经网络模型,生成对抗样本。图7、图8展示了在不同的ε下各种攻击算法的成功率。从图中可以看到,随着扰动值ε的增大,各个算法的攻击成功率也在升高,但是DCI-FGSM算法的变化趋势与其他不一样,DCI-FGSM能够使模型的准确率以更快的速度降到更低的值,使得模型的损失值以更快的速度提升至更高的值。足以表明DCI-FGSM的优越性。

图7 模型准确率变化

图8 模型损失变化

5 结束语

该文提出一种基于白盒攻击的对抗样本生成算法,通过动态改变扰动的值,并且通过前一步梯度去更正梯度前进的方向,防止模型陷入局部最优,从而生成更有效的对抗样本。实验结果表明,与传统的对抗样本生成算法相比,DCI-FGSM在白盒攻击上具有更强大的效率。目前DCI-FGSM算法仅针对白盒攻击,其在黑盒攻击上是否有更高的效率,还需要进一步研究。

猜你喜欢
白盒梯度方向扰动
Bernoulli泛函上典则酉对合的扰动
面向未来网络的白盒交换机体系综述
基于机器视觉的钢轨接触疲劳裂纹检测方法
DWB-AES:基于AES 的动态白盒实现方法
(h)性质及其扰动
基于梯度方向一致性引导的边缘检测研究
网络“黑”“白”之争
基于光谱上下文特征的多光谱舰船ROI鉴别方法
小噪声扰动的二维扩散的极大似然估计
基于支持向量机的分类器训练研究