APP下载

基于U⁃Net 的对抗样本防御模型

2021-12-20赖妍菱石峻峰陈继鑫白汉利唐晓澜邓碧颖郑德生

计算机工程 2021年12期
关键词:集上扰动成功率

赖妍菱,石峻峰,陈继鑫,白汉利,唐晓澜,邓碧颖,郑德生

(1.西南石油大学 计算机科学学院,成都 610500;2.中国空气动力研究与发展中心,四川 绵阳 621000)

0 概述

机器学习是一门多领域交叉学科,专门研究计算机模拟或实现人类的学习行为,以获取新的知识或技能,并重新组织已有的知识结构使之不断改善自身性能[1]。深度学习作为机器学习的重要分支,是学习样本数据的内在规律和表示层次的算法,在学习过程中获得的信息对文字、图像、声音等数据的解释有很大帮助,目前已被广泛应用于现实世界,但容易受到对抗攻击[2-3]。对抗攻击是指攻击者对输入样本添加微小的扰动[4],这种扰动人眼难以区分,但是对于机器而言,模型会为添加扰动后的输入样本给出一个高置信度的错误输出,添加扰动后的输入样本称为对抗样本[5]。

近年来,关于对抗样本防御的研究主要包括增强模型鲁棒性和数据预处理两方面[6]。增强模型鲁棒性的方法有很多,现有研究证明对抗训练和蒸馏能有效防御对抗攻击[7]。对抗训练是用特定某一种攻击的对抗样本来训练模型,训练后得到的模型对于该攻击的对抗样本具有防御能力。对抗训练框架借鉴了标准经验风险最小化方法,目标是尽量减少对抗样本的风险[8]。蒸馏在不改变网络结构的情况下,为提高自身的鲁棒性,以训练数据的分类概率向量的形式提取知识,将分类概率向量作为新的标签训练出一个与原模型结构相同、蒸馏温度相同的新模型。实验结果表明,新模型可以提高对图像中微小扰动的恢复能力[9]。数据预处理防御对抗样本是在数据输入分类模型之前,提前将数据进行处理,消除图像的扰动[10]。数据预处理的方法主要有JPEG压缩、PixelDefend 和HGD。JPEG 压缩能够去除图像的高频信号分量,该操作相当于选择性模糊图像,有助于消除扰动[11-12]。PixelDefend使用CNN将对抗样本投射回数据流形,然后将其反馈到原始分类器,无须训练数据[13]。HGD 是端到端的除噪网络,采用去噪模块来消除扰动[14]。

本文提出一种对抗样本除噪模型SE-ResU-Net,基于编解码网络结构,通过编码网络对图像进行压缩去除图像中的噪声,这些噪声可看作是对抗样本中的扰动。利用解码网络对图像进行重建,将压缩后的图像重建为与干净样本接近的清晰图像,并且能够被分类模型正确分类。

1 相关工作

1.1 对抗攻击

在图像分类中,常见的对抗攻击方法有FGSM、MI-FGSM、PGD、DeepFool 和C& W。

FGSM攻击是通过使成本函数J(θ,x,y)变大来达到攻击的目的,是对抗样本领域的主要攻击方法。设θ为模型参数,x为模型输入,y为x的正确标签分类,J(θ,x,y)为训练神经网络的成本函数,ε为扰动系数。将成本函数在θ的当前值附近线性化,使用FGSM 攻击得到最优的最大范数约束扰动。对抗样本xadv生成方法定义如下[15]:

MI-FGSM 攻击通过在攻击过程中融入动量,解决了FGSM 攻击容易陷入局部最优的问题。MI-FGSM 攻击定义如下[16]:

其中:gt使用式(2)中定义的衰减因子μ收集前t次迭代的梯度来稳定梯度更新方向,避免陷入局部最大值。

PGD 攻击是一种攻击性很强的一阶攻击,因此很多防御对抗攻击研究采用PGD 攻击进行实验。常见的关于p范数攻击的设置是通过Bε(x)=x+δ:找到一个对抗样本xadv,这是原始图像x周围的ε半径球。PGD 攻击会反复使用以下更新规则,以在Bε(x)中找到一个对抗样本[17]:

DeepFool攻击通过将输入样本投影到最接近的分割超平面来找到导致错误分类的最小扰动,解决了FGSM攻击中参数选择困难问题。最小扰动是输入样本与分类器上的正交投影之间的距离,属于求解目标函数最小值的问题,可以通过迭代的方式进行求解[18]。

C& W 攻击是基于优化的攻击,目的是最小化由扰动和分类到攻击类别的概率两部分的目标函数值,定义如下:

其 中:f(x′)=max(max{Z(x′)i:i≠t}-Z(x′)t,-k);rn是干净样本和对抗样本之差,攻击类别记为t;Z(x)t是输入样本x通过分类模型但未经softmax 层计算得出的输出向量。将对应类别不同于t的最大值记为max{Z(x′)i:i≠t}。

C& W 攻击目标为:1)最小化干净样本和对抗样本之差,就是使扰动变得微小,将rn中计算的对抗样本值映射到tanh 空间,是为了优化对抗样本分布;2)使对抗样本被误分类到攻击类别t的概率尽可能高,也就是使分类为t的置信度k尽可能大[19]。C& W 攻击通过调节置信度使得生成的扰动非常小,可破解很多防御模型。

1.2 防御模型

文 献[12,20]提 出FeatureSqueezing 和Spatial Smoothing模型进行对抗样本防御。FeatureSqueezing的原理是减少输入图片中的冗余特征,通过降低图片中每个像素的深度来破坏对抗样本中的扰动。FeatureSqueezing对图片进行压缩,但不会影响分类器对图片的判断,因为图片的主要特征未被破坏。SpatialSmoothing 使用局部平滑来消除对抗样本中的扰动,由于图片中相邻像素点之间其实是关联的,局部平滑不会影响图片的总体特征。

文献[21]提出使用端到端的图像压缩模型ComDefend 来防御对抗样本。ComDefend 由ComCNN和RecCNN 两个模块组成,ComCNN 将输入压缩,去除冗余信息,使对抗样本变回干净样本,RecCNN 在ComCNN 输出的基础上重建清晰图像。ComDefend 无须训练对抗样本,只需训练干净样本,并且防御后得到的图像能降低模型分类错误率并且图像清晰。

2 对抗样本防御模型

2.1 基础模型

2.1.1 U-Net 模型

U-Net 是一种图像语义分割网络[22-23],如图1 所示,U-Net 结构由两个对称部分组成:1)左半部分网络是下采样过程,与普通卷积网络相同,主要使用3×3 的卷积层和2×2 的池化层,能够将输入图片进行特征压缩和降维;2)右半部分网络是上采样过程,主要使用3×3 的卷积层和2×2 的反卷积层,达到图像还原的目的,最终使用两个1×1 的卷积层得到期望的特征通道数[24-25]。图1 共进行4 次下采样操作和4 次上采样操作。每次下采样会将特征通道数增加到之前的2 倍,长宽尺寸减半,如第1 次下采样将特征通道数64 加倍为128,尺寸由568 减半到284。每次上采样会将特征通道数减半,长宽尺寸加倍,如最后一次上采样将特征通道数128 减半为64,尺寸由196 加倍为392。

图1 U-Net 模型结构Fig.1 U-Net model structure

2.1.2 ResNet 模型

梯度消失、梯度爆炸和神经网络退化会阻碍深层神经网络模型训练,直接导致深层神经网络模型无法收敛,ResNet可有效解决这些问题[26-27]。ResNet通过构建残差块的形式来添加相应的恒等映射y=x,达到优化深层神经网络模型性能的目的。残差块结构有两层神经网络,输入为x,激活函数为Relu(x)。假设第2个权值层weight layer输出为F(x),那么对于残差块而言,输入x会经过如图2所示的右边这条连接线与F(x)相加,需要注意的是x和F(x)的结构要保持一致。经过Relu函数输出得到最后的结果,假设为H(x),H(x)=F(x)+x,那么F(x)=H(x)-x为该残差块的残差。在深层神经网络中若有很多冗余层,则在训练过程中不能学习到很多知识。假设残差块中的weight layer可看作模型中的冗余层,则该模块中存在H(x)=x的恒等映射,那么F(x)=0,在此情况下学习会变得容易很多。

图2 ResBlock 结构Fig.2 ResBlock structure

2.1.3 SENet 模型

SENet是ImageNet 2017竞赛图像分类任务的冠军模型,可较容易地扩展到已有网络结构中[28-29]。卷积的主要目的是提高感受野,即空间上融合更多特征或提取多维度的空间信息。SENet 的创新点在于关注特征通道之间的关系,使得模型可以自动学习到不同通道特征的重要程度。SENet 模型如图3 所示,共进行Squeeze、Excitation 和Reweight 3 个操作。

图3 SENet 模型结构Fig.3 SENet model structure

首先,通过任意变换Ftr将H′×W′×C′空间维度的输入转化为H×W×C。然后,Squeeze 经过一系列卷积变换进行特征压缩,将每个二维特征通道均转换为一个实数,这个实数具有全局的感受野,并且输入的特征通道数和输出维度相匹配,这一过程用Fsq(•)表示。其次,Excitation 通过参数w学习特征通道之间的相关性,确定每个通道的权重值,这一过程用Fex(•,W)表示。最后,Reweight将权重值加权到各通道的特征上,对各个特征通道上的特征进行权重分配,确保重点关注信息量大的特征并忽略不重要的特征,这一过程用Fscale(•,•)表示。

2.2 SE-ResU-Net 模型

对抗样本防御流程如图4 所示,由于对抗样本的扰动很小,因此无法被分类模型检测,SE-ResU-Net 在对抗样本输入分类模型之前就能消除其扰动,把对抗样本转化为干净样本。如图5 所示,SE-ResU-Net 在整体框架上参考U-Net 的跳跃连接结构,即每个卷积层都与对应反卷积层跳跃连接。SE-ResU-Net 左半部分网络经过卷积块ConvBlock 经过卷积和池化层MaxPool2D 进行池化来对图片进行压缩,并且卷积使用same 模式,不会造成图片像素的损失。右半部分网络经过残差块ResBlock进行残差和上采样Upsample2D来对图片进行重建。在整个网络中,与U-Net 保持一致,使用3×3 的卷积层、2×2 的池化层和2×2 的反卷积层。SE-ResU-Net使用的卷积块ConvBlock 结构如图6所示,残差块ResBlock 结构如图7 所示。

图4 对抗样本防御流程Fig.4 Defense procedure of adversarial examples

图5 SE-ResU-Net 模型结构Fig.5 SE-ResU-Net model structure

图6 SE-ResU-Net 模型中的ConvBlock 结构Fig.6 ConvBlock structure in SE-ResU-Net model

图7 SE-ResU-Net 模型中的ResBlock 结构Fig.7 ResBlock structure in SE-ResU-Net model

SE-ResU-Net 的创新点是在U-Net 的基础上,解码网络部分将卷积组替换为残差块,同时将网络中的BN 层替换为LN 层,并且使用Elu 激活函数。BN层在深度学习中表现较好,因此在大多数网络中均使用BN 结构,但在该任务中并不适用,BN 的作用是使各层网络满足独立同分布,使得网络训练变得更加方便,但这也意味着会改变激活值的数据分布。在对抗样本防御时,对于防御网络的输入和输出要求具有相似的数据分布,使用BN 不利于图像重建。除此之外,SE-ResU-Net 还引入轻量级注意力机制的挤压激励网络结构SEBlock,使模型忽略了有干扰的无用特征,从而增强了对分类有用特征的注意力。

选用扰动系数ε为8/255 的50 000 张CIFAR10图像和60 000 张Fashion-MNIST图像的MI-FGSM 对 抗样本来训练防御网络,以得到两个数据集各自对应的防御网络模型训练结果。研究发现,在训练防御网络时,损失函数不管是使用平均绝对误差(Mean Absolute Error,MAE)还是内容损失都能达到去除对抗样本中扰动的目的,但也存在一定的不足。最小化MAE 会使输出图像和原图尽可能接近,但并不能完全消除扰动对分类网络的干扰,即图像和原图虽然极为相似,但所表达的语义信息是不相同的。最小化内容损失会使网络学会还原图片的语义信息,但并不能保证图像还原质量,图像质量不佳同样会影响分类网络的准确率。因此,在训练网络时,损失函数选择MAE 和内容损失的混合形式,取得了较好的效果。

MAE 是模型预测值f(x)与真实值y距离的平均值,计算公式如下:

MAE 在大部分情况下梯度都是相等的,对于模型输入,梯度是稳定不变的,不会导致梯度爆炸问题,但MAE 梯度的值较大,模型收敛速度较慢。

通过从VGG19 网络中提取的特征通道之间的欧几里得距离来定义内容损失函数[30]:

其中:φi,j表示VGG19网络中第i个最大池化层之前的第j个卷积获得的特征通道;ILR表示重建图像;IHR表示参考图像;Wi,j和Hi,j描述了VGG网络中各个特征通道的尺寸大小。

SE-ResU-Net 的损失函数定义如下:

其中:超参数α表示平衡因子,用来调节MAE 和内容损失的比重。因为这两个损失函数优化目标不同,MAE 是为了重建图片,使输出图片与原图片在空间上接近,内容损失是为了保留语义,使输出图片与原图片在内容上接近。

3 实验与结果分析

3.1 实验设置

实验使用CIFAR10 和Fashion-MNIST 数据集。CIFAR10 是一个用于识别常见对象的小型数据集,共包括10 种RGB 彩色图片,有50 000 张训练图片和10 000 张测试图片。Fashion-MNIST 是一个用于识别商品的小型数据集,共包括10 种灰度图片,有60 000 张训练图片和10 000 张测试图片,在实验中将Fashion-MNIST 数据集图片处理为32 像素×32 像素的图片尺寸。

实验中CIFAR10 数据集使用的分类模型为SEResNet18,该分类模型在CIFAR10 数据集上达到了91.8%的分类准确率。Fashion-MNIST 数据集使用的分类模型为SEResNet24,该分类模型在Fashion-MNIST数据集上达到了95.3%的分类准确率。

实验选取MI-FGSM、PGD、DeepFool、C& W 来攻击分类模型,扰动系数ε为2/255、4/255 和8/255,使用10 000 张CIFAR10 数据集和10 000 张Fashion-MNIST 数据集的测试图片来生成MI-FGSM、PGD、DeepFool 和C& W 的对抗样本。由于C& W 对抗样本的生成速度较慢,因此选择1 000 张测试图片来生成C& W 对抗样本。

3.2 实验结果

3.2.1 不同训练策略对比

由于训练过程中损失函数不同,SE-ResU-Net 将产生不同的防御效果,因此使用不同的损失函数来训练SE-ResU-Net,在实验中共进行80 次迭代训练。实验采用4 种不同的损失函数组合,MAE(80)表示在SE-ResU-Net 中使用MAE 进行80 次迭代训练,内容损失(80)表示使用内容损失进行80 次迭代训练,MAE(50)+混合(30)表示先进行50 次MAE 的迭代训练,再进行30 次MAE 和内容损失的混合迭代训练,混合(80)表示进行80 次MAE 和内容损失的混合迭代训练。表1、表2 和表3 分别给出了在CIFAR10 数据集上SE-ResU-Net 对各种对抗攻击的防御成功率,扰动系数ε分别为2/255、4/255 和8/255,其中最优指标值用加粗字体标示。

表1 CIFAR10 数据集上不同损失函数组合的防御成功率(ε=2/255)Table 1 Defense success rate of different loss function combinations on CIFAR10 dataset(ε=2/255) %

表2 CIFAR10 数据集上不同损失函数组合的防御成功率(ε=4/255)Table 2 Defense success rate of different loss function combinations on CIFAR10 dataset(ε=4/255) %

表3 CIFAR10 数据集上不同损失函数组合的防御成功率(ε=8/255)Table 3 Defense success rate of different loss function combinations on CIFAR10 dataset(ε=8/255) %

实验结果表明,混合(80)对不同攻击方法及扰动系数均有较好的防御效果。在CIFAR10 数据集干净样本分类准确率达到91.8%的情况下,最优训练策略为混合(80),该策略在MI-FGSM、PGD、DeepFool 攻击方法上最高达到81.7%、82.5%、84.7%的防御成功率,在C& W 攻击方法上达到87.0%的防御成功率。

3.2.2 不同防御模型对比

为更好地衡量SE-ResU-Net 模型的防御效果,将其与相同扰动系数ε下的其他防御模型进行比较。由于80 次MAE 和内容损失的混合迭代训练防御效果最好,因此实验使用80 次MAE 和内容损失的混合迭代训练的SE-ResU-Net 与其他模型比较。表4、表5 和表6 分别给出了在CIFAR10 数据集上各种防御模型对于扰动系数ε为2/255、4/255 和8/255 的 各种对抗攻击的防御成功率。

表4 CIFAR10 数据集上不同防御模型的防御成功率(ε=2/255)Table 4 Defense success rate of different defense models on CIFAR10 dataset(ε=2/255) %

表5 CIFAR10 数据集上不同防御模型的防御成功率(ε=4/255)Table 5 Defense success rate of different defense models on CIFAR10 dataset(ε=4/255) %

表6 CIFAR10 数据集上不同防御模型的防御成功率(ε=8/255)Table 6 Defense success rate of different defense models on CIFAR10 dataset(ε=8/255) %

表7、表8 和表9 分别给出了在Fashion-MNIST数据集上各种防御模型对于扰动系数ε为2/255、4/255 和8/255 的各种对抗攻击的防御成功率。

表7 Fashion-MNIST 数据集上不同防御模型的防御成功率(ε=2/255)Table 7 Defense success rate of different defense models on Fashion-MNIST dataset(ε=2/255) %

表8 Fashion-MNIST 数据集上不同防御模型的防御成功率(ε=4/255)Table 8 Defense success rate of different defense models on Fashion-MNIST dataset(ε=4/255) %

表9 Fashion-MNIST 数据集上不同防御模型的防御成功率(ε=8/255)Table 9 Defense success rate of different defense models on Fashion-MNIST dataset(ε=8/255) %

实验结果表明,在将干净样本通过SE-ResU-Net后,分类准确率没有降低太多,CIFAR10 数据集保持在86.2%,Fashion-MNIST 数据集保持在93.1%。对于不同的扰动系数ε,通过SE-ResU-Net 后,CIFAR10数据集上的MI-FGSM 对抗样本防御成功率分别提高了50.1、61.1、64.0 个百分点,PGD 对抗样本防御成功率分别提高了51.5、76.6、76.6 个百分点,DeepFool对抗样本防御成功率分别提高了78.8、78.6、78.5 个百分点,C&W 对抗样本的防御成功率提高了81.9 个百分点。对于Fashion-MNIST 数据集,MI-FGSM 对抗样本防御成功率分别提高了47.9、70.5、77.9 个百分点,PGD 对抗样本防御成功率分别提高了70.6、88.3、88.1 个百分点,DeepFool 对抗样本防御成功率分别提高了78.5、89.2、89.1 个百分点,C&W 对抗样本的防御成功率提高了89.5 个百分点。与其他防御模型相比,对于实验中不同对抗攻击方法及扰动系数,SE-ResU-Net 的防御成功率均高于其他模型。

3.3 防御效果展示

如图8 所示,CIFAR10 和Fashion-MNIST 数据集中的第1~3 列分别显示了干净样本图像、对抗样本图像和通过SE-ResU-Net 防御后的图像。由此可见,实验中生成的对抗样本是有效的,并且SE-ResU-Net能够保证对抗样本图像的还原质量。

图8 防御效果展示图Fig.8 Defense effect display diagram

4 结束语

针对深度神经网络模型受到的对抗攻击问题,本文从数据预处理角度出发,提出神经网络除噪模型SE-ResU-Net,采用先压缩后重建的编解码网络结构,使用扰动系数ε=8/255 的MI-FGSM 对抗攻击方法生成的对抗样本作为训练集。在CIFAR10 和Fashion-MNIST 数据集上进行防御实验,结果验证了SE-ResU-Net 对MI-FGSM、PGD、DeepFool 和C& W 攻击具有较好的防御效果和一定的泛化能力。后续将优化除噪网络模型SE-ResU-Net 结构,进一步提高防御成功率。

猜你喜欢

集上扰动成功率
Bernoulli泛函上典则酉对合的扰动
成功率超70%!一张冬棚赚40万~50万元,罗氏沼虾今年将有多火?
如何提高试管婴儿成功率
Cookie-Cutter集上的Gibbs测度
链完备偏序集上广义向量均衡问题解映射的保序性
(h)性质及其扰动
如何提高试管婴儿成功率
复扇形指标集上的分布混沌
小噪声扰动的二维扩散的极大似然估计
用于光伏MPPT中的模糊控制占空比扰动法