基于决策边界搜索的对抗样本生成算法

2022-10-29 01:57刘欣刚江浩杨
电子科技大学学报 2022年5期
关键词:扰动神经网络决策

刘欣刚,江浩杨,苏 鑫,冯 晶

(电子科技大学信息与通信工程学院 成都 611731)

深度神经网络模型被广泛应用于各种机器学习领域,包括图像识别[1-2]、图像与视频目标检测领域[3-4]、音频数据处理[5]和自然语言处理领域[6-7]等。深度神经网络模型在许多任务上都取得了成功。

然而研究发现神经网络模型容易受到一种虚假样本的攻击[8]。这种样本通常是在真实数据样本上进行一定程度的轻微修改而生成的。当这种虚假样本输入到神经网络中,神经网络会产生与原始真实数据完全不同的输出。这样的虚假样本通常被称为对抗样本。

对抗样本被发现存在于许多领域。在图像处理领域,被轻微修改的图像可以使得神经网络对图像给出错误的分类[9-11],也可以使得语义分割模型完全无法识别图像上的人物[12];在自然语言处理领域,Seq2Sick 攻击可以生成对抗性的文本,使得基于序列的神经网络翻译模型无法正确理解文本的语义[13-15];在音频数据领域,文献[16]提出了一种算法,将一个噪音嵌入到正常音频中,可以使得音频语义识别网络输出想要的任意结果。

对抗样本的生成技术也被广泛研究。文献[17]指出对抗样本的存在与神经网络的高度线性性质有关,并提出了一种快速梯度下降法(fast gradient sign attack, FGSM)来生成对抗样本,这种方法针对非鲁棒性模型非常有效,并且对抗样本的生成速度也非常快。文献[10]提出了一种有效生成最小化L2度量距离的对抗样本技术,其所生成对抗样本的扰动相比FGSM 更加隐蔽。文献[9]通过求解优化问题的方式找到对抗样本,该方法可以计算任意p范数的最小化Lp的对抗样本。文献[18-19]提出了寻找稀疏形式对抗样本的攻击,可以只改变少量的像素点即可达成攻击。文献[20]利用对抗生成网络框架,提出使用神经网络生成对抗样本,这种方法可以针对目标模型快速生成对抗样本。然而,这些方法大都使用类似梯度函数方向更新的方法,计算真实样本点附近的梯度,寻找可以使损失函数增大的对抗样本,而没有考虑沿着决策函数的边界进行搜索以寻找扰动最小的样本。

本文提出了一种基于神经网络决策边界搜索的对抗样本生成算法。该算法首先使用线性搜索或二分搜索在数据空间中找到一个处于决策边界的数据点,并计算该点相对于决策函数的法向量方向,基于决策平面局部平滑的假设,利用法向量的正交空间,寻找一个更接近真实样本的数据点,通过多步迭代的方式最终找到最优对抗样本。本文将该过程进行数学建模,然后将该数学问题转化为一个标准的优化问题。为了求解该优化问题,首先推导出当神经网络决策函数为仿射函数时的解析解,然后给出在更一般情况下的迭代式求解算法。

1 对抗样本攻击建模

图1 是典型的白盒攻击模式,一个训练良好的分类器F(·)对 正常样本x进行预测,得到其正确的标签y。攻击方通过观测分类器的预测过程,得到输入x对于分类器的梯度信息及最终的分类置信度等信息,根据这些信息生成对抗样本x′,如果分类器F(·)对 输入x′做 出错误的预测y′,则攻击成功。

图1 典型白盒攻击流程

该过程可以用数学语言进行如下描述。

对给定的分类器F(·)和 输入x,对应于该输入x的最优对抗样本x′可以通过求解以下优化问题获得:

式中,fk(x)是 网络对应第k类的输出;//r//p表 示Lp距离,定义为:

在对抗样本攻击领域,通常研究生成最小化L2与L∞的对抗样本。

由于原问题不属于标准的优化问题,需要将该问题转化为标准形式才能使用优化算法进行求解。

原问题可以转化为另一个等价的形式,即:

虽然将原优化问题转化成为了标准形式,但因为函数L(·)是一个高度非凸函数,无法使用如牛顿法及拉格朗日乘子法等对该问题求解。

2 决策边界搜索攻击算法

2.1 随机初始点搜索

L(x′)>0表 明输入x′与x是 相同的类,L(x′)⩽0表明输入x′与x分属不同类,对抗样本只可能存在于决策边界,且满足L(x′)=0。

通常而言,直接得到一个输入x0满 足L(x0)=0是困难的,但是利用函数L(·)的连续性质,可以有效找到该初始点。

假设输入x为正常样本,且满足L(x)>0。随机生成输入数据x¯ , 直至满足L(x¯)<0。 因为L(·)为连续函数,则必定存在初始点x0=θx¯+(1−θ)x,满足L(x0)=0, 其中,0 <θ<1。

实验发现,以固定概率分布随机生成的数据x¯,通常会以高概率被判别为某一类。因此,更有效的方法是直接在数据集中挑选一个标签不同的样本x¯。θ则可以使用线性搜索或者二分搜索来得到。使用二分搜索的初始点搜索由算法1 给出。

算法 1 基于二分搜索法的初始攻击点查找算法

搜索到的初始点x0通 常与样本x相差较大,因此,需要通过迭代的方式找到新的对抗样本xi,使得xi与x越 来越接近,即使得其对抗扰动ri=xi−x的范数减小。

2.2 迭代攻击算法

1) 线性决策器。给定一个线性函数L(x)=wTx+b, 和一个已知的起始扰动r0, 满足L(x+r0)=0。r0可 以分解为两个部分,即r0=ropt+rstep,其中ropt存 在闭式解,且ropt为全局最优解:

式中,w为L(·)在r0处 的梯度,w可以使用现有的神经网络学习框架计算得出。

如 图2 所 示,ropt是r0在 梯度 方向 ∇L(x+r0)的投影,rstep是r0在 决策方向上的投影,注意到rstep和ropt是 相互正交的,所以对于任意r1=ropt+αrstep,0 ⩽α<1,可得出:

图2 线性决策器

2) 非线性决策器。对于大多数的深度神经网络,L(x)是高度非凸函数,但可以从线性情况的推导中得出。每次迭代得到的扰动ri+1会比上一个扰动ri更 优,因此,最后ri会收敛至一个较小的值。

迭代公式由下式得出:

式中, ( 1−α) 表 示学习率,0 <(1−α)<1。学习率大可能导致不收敛;学习率小,则收敛速度慢。

图3 给出了在非线性决策器形况下,该方法的几何说明。首先利用二分搜索法选择一个接近决策边界的起始点,然后使用迭代求解,直到//ri//2收敛。

图3 非线性决策器

2.3 针对无穷范数指标的攻击优化

上述推导中给出了针对L2范数的对抗样本攻击迭代公式,本文所提出的攻击方法也可以应用于最小化L∞范 数的对抗样本攻击。对于最小化L∞范数的对抗样本生成,ri的迭代公式为:

2.4 整体攻击流程

算法2 展示了决策边界搜索攻击算法的攻击流程:首先,需要通过线性(或二分)方法定位到模型的决策边界;然后,计算该点相对分类模型的梯度信息,利用梯度信息更新对抗样本。新的对抗样本依然处于模型的决策边界,且更接近真实的数据点。当所找到的对抗样本满足范数要求或者对抗扰动收敛时,停止迭代并输出最后一个找到的对抗样本。

3 实验与分析

为了测试本文算法的有效性,将所提出的算法应用于3 个图像数据集与3 种图像分类模型架构上,测试在受到攻击的状态下,5 个图像分类神经网络的分类性能下降程度。

3.1 实验设置

1) 数据集与分类模型。将使用3 个图像数据集与3 种图像分类模型用于受攻击测试。

MNIST[21]:手写体数字图像数据集,数据集中包含70 000 张图像,其中10 000 张为测试图像。对于该数据集,使用两个分类模型,分别为一个多层全连接神经网络与一个两层结构的LeNet 卷积神经网络架构。

FashionMNIST[22]:MNIST 数 据 集 的 一 个 变体,包括10 类不同商品的图像,数据格式与MNIST完全一致。对于该数据集,考虑使用两个分类模型,即一个两层结构的LeNet 卷积神经网络架构和一个ResNet 架构模型。

CIFAR10[23]:普适物体的图像数据集,包括飞机、车辆、船只等一共10 种类别。对于该数据集,使用一个ResNet 架构模型进行分类。

其中,MNIST 与FashionMNIST 数据集的数据格式完全一致,因此所使用的LeNet 网络架构完全一致。

本文实验使用Pytorch 深度学习框架[24]训练图像分类模型,表格1 列出5 个图像分类模型对3 个数据集的分类精度。

表1 受攻击模型参数

2)最大可允许扰动 ρ与对抗样本分类率。一个有效的对抗样本x′被定义为:其预测标签与原数据x的真实标签y不同,且x与x′必须足够相似,即F(x′)y且//x−x′//p<ρ。

对一个对抗样本攻击算法而言,越大的 ρ表示可允许的攻击范围越大,代表其可允许的攻击强度越大。因此,分类模型对其生成的对抗样本的分类率越低。对多个攻击算法进行对比,在相同的 ρ下实施攻击,分类模型对攻击算法所生成的对抗样本的分类率越低,说明该攻击算法越有效。

3)对比方案。在5 个训练良好的图像分类模型上,使用本文所提出的对抗样本攻击算法,分别针对L2与L∞范数生成对抗样本。在多个最大可允许扰动 ρ值下,生成对抗样本,然后使用分类模型对对抗样本进行分类,记录在不同攻击强度下的对抗样本分类精度。本文使用3 个经典的攻击算法进行对比。

1)快速梯度方向算法(fast gradient sign method,FGSM)和 快 速 梯 度 算 法(fast gradient method,FGM)[17]:FGSM 是经典的对抗样本生成方法,主要针对于生成最小化L∞范数的对抗样本,FGM为FGSM 的最小化L2范数版本。

2)梯度投影下降算法(projected gradient descent,PGD)[25]:FGSM 的多次迭代版本,并在此基础上加入了初始点随机化以增加攻击成功率。

3) DeepFool[10]:基于超平面分类决策器假设的攻击算法,可以生成对抗扰动较小的对抗样本。

除了本文外算法,其余的攻击算法由通用对抗样本攻击工具箱Foolbox[26]实现。

3.2 实验结果

图4 展示了在3 个网络模型(FC-MNIST, LeNet-FashionMNIST, ResNet-CIFAR10)上使用4 种攻击算法在不同攻击强度下的攻击效果。当最大可允许扰动ρ 为 0 时,纵坐标值表示该模型对正常图像的分类精度。图4 表明,这4 种攻击方法针对L2与L∞指标所生成的对抗样本,都可以有效地使得神经网络分类错误。

图4 对抗样本攻击算法在3 个模型上的攻击结果

从实验结果中可以看出,本文所提出的对抗样本生成算法的攻击效果最佳。在每一组实验中,在同一个最大可允许扰动ρ 下,图像分类模型对本文算法生成的对抗样本的分类率都是最小的。而DeepFool算法与PGD 算法效果在大多数情况下相近,而在MNIST 与FashionMNIST 数 据 集 中,DeepFool 算法相比PGD 算法生成的最小化L2对抗样本更优。FGSM 为4 种算法中计算效率最高的,但攻击效果最差。

本实验所使用的3 个数据集都有10 个图像类别,可以认为对于一个完全无分类能力的模型(随机分类模型)而言,其图像分类精度应为10%。表2~表4 分别记录了使用4 种攻击方式对5 个图像分类模型进行攻击,图像分类模型对对抗样本的分类精度达到10%时,每种攻击方法所需要的最大可允许扰动值。

表2 MNIST 数据集攻击实验

表3 Fashion-MNIST 数据集攻击实验

表4 CIFAR10 数据集攻击实验

从表中可以看出,在每组实验中本文算法所需要的最大可允许扰动 ρ都最小。并且,在MNIST与FashionMNIST 实验中,本文所提出的算法相较于其他3 种有较大提升,而在CIFAR10 的实验中,本文算法与PGD,DeepFool 算法效果相近,但是,FGSM 在多个攻击实验中无法使得图像分类模型的对抗样本分类精度下降至10%。

实验分析认为本文算法在3 个数据集上的性能不同的主要原因是数据集的数据分布存在差异。MNIST 与FashionMNIST 的图像为单通道灰度图,图像尺寸较小。而CIFAR10 数据集为三通道图像,尺寸相对MNIST 稍大,图像内容更加丰富。因此,在CIFAR10 数据集上,使用线性搜索寻找攻击初始点,与有效对抗样本存在的空间距离较远,后续的迭代无法有效找到最优的对抗样本。

设计实验对该假设进行验证。在所提出的攻击算法的第一步中,将线性搜索的方法替换为使用DeepFool 算法生成初始攻击点,以此为基础进行对抗样本搜索。表5 中列出了改进的算法在攻击模型至10%精度所需要的ρ 值。

表5 使用DeepFool 作为初始点攻击效果

可以看出相较使用随机初始点搜索的方法,使用DeepFool 攻击所找到的对抗样本作为初始点,在所有对比实验中攻击图像分类模型至10%时所需要的ρ 值都要更小。

改进后的攻击算法本质上是在使用DeepFool搜索到一个有效的对抗样本后,使用迭代的方法进一步缩小对抗样本与原样本的距离。这表明了使用本文算法与其他对抗攻击算法结合,可以找到扰动更小的对抗样本。

4 结 束 语

本文提出了一种新的对抗攻击算法,即基于分类模型决策函数边界的对抗样本搜索算法。该算法是基于现有的神经网络图像分类模型的全局连续性与可导性,使用多步迭代的方式在分类模型的决策边界寻找一个与原数据点距离相近的对抗样本。

实验证明在数据分布简单的数据集上,本文方法可以取得最优的攻击效果。而在复杂数据集上,需要使用更有效的方式找到攻击初始点,以保证整体的攻击性能。这表明本文算法可以有效地优化其他对抗攻击算法所生成的对抗样本。因此,在后续设计其他对抗样本生成技术时,可以将本文提出的迭代的搜索方法作为优化手段,提升其他攻击算法的性能。

猜你喜欢
扰动神经网络决策
一类五次哈密顿系统在四次扰动下的极限环分支(英文)
基于递归模糊神经网络的风电平滑控制策略
基于增强型去噪自编码器与随机森林的电力系统扰动分类方法
扰动作用下类岩石三轴蠕变变形特性试验研究
为可持续决策提供依据
带扰动块的细长旋成体背部绕流数值模拟
神经网络抑制无线通信干扰探究
基于神经网络的中小学生情感分析
决策大数据
决策大数据