APP下载

基于贝叶斯-斯坦科尔伯格博弈的DNN动态防御方法

2021-03-16周湘贞

计算机应用与软件 2021年3期
关键词:贝叶斯攻击者精度

王 芳 周湘贞

1(重庆商务职业学院 重庆 401331)

2(北京航空航天大学计算机学院 北京 100191)

3(郑州升达经贸管理学院信息工程系 河南 郑州 451191)

0 引 言

当前基于深度神经网络(Deep Neural Networks,DNN)的图像分类系统被应用于多种重要场所,如支票上手写数字的识别[1]、自动监督中物品的分类、自动驾驶领域[2]等。如果攻击者造成系统输入的分类错误,将产生严重后果。比如支票上手写数字“1”和“9”的错误分类将导致攻击者从银行取走更多的现金。文献[3-4]指出利用MNIST数据库建立的手写数字识别模型极易被攻击。交通标志中的“停止”标志如果识别错误将导致自动驾驶出现严重交通事故[3]。人脸识别等图像系统中也存在此类攻击[5]。此外,人的肉眼一般无法区分出被攻击者篡改的图像与原始图像的差别。

普通防御方法一般是通过攻击算法生成对抗样本,并将其加入到训练集中。这种途径的基本要求是需要使用尽可能强的攻击来生成对抗样本,同时网络模型的结构需要足够清晰明了,以便生成尽可能多的对抗样本,这就是对抗训练方法。

研究表明,在神经网络中,加在分类器输入图像上的单个干扰能够将基于MNIST数据库分类器的分类精度从95.5%降低到14.6%[6-7],而且对抗训练方法对此类攻击没有明显的防御效果。受网络空间领域移动目标防御思想的启发,本文提出一种基于贝叶斯-斯坦科尔伯格博弈(Bayesian Stackelberg Games)的DNN动态防御方法(简称BSG方法),与现有的防御机制一起防御深度神经网络中的各种攻击类型。

1 相关研究

1.1 深度神经网络中的攻击手段和防御策略

1) 基于梯度干扰。文献[3,6]提出多种方法生成对抗样本作为测试图像输入到DNN中。主要有以下两种类型:(1) 对抗训练模型的损失函数在数据点附近会有较大的曲率,使得基于损失函数的一阶近似攻击变得不准确,稍加扰动就可以使DNN错误分类。(2) 图像的像素点对应一个梯度值,只需选择数值大的像素点进行扰动,就能在尽可能少修改像素点的情况下进行扰动。

2) 黑盒攻击。黑盒攻击中具有代表性的就是边界攻击[8]。它不同于依赖于梯度的攻击方式,该攻击需要的模型信息很少,只需要知道模型最终的分类输出结果即可。在攻击分类中,其需要任意输入输出的能力,能实现源/目标误分类。首先寻找到一个对抗样本(不限制阈值大小),然后依据一定策略将该对抗样本沿着原样本的方向移动,直到该对抗样本离原样本最近,同时依然保持对抗性。

针对黑盒攻击常见的防御方法包括:利用攻击算法生成对抗图像来修改训练输入。将该图像与期望标签一起作为神经网络参数加入训练过程中,能使DNN减小未知高维度空间的梯度,减小对攻击干扰的影响。整个对抗训练[9]能增加此防御技术的效果。

3) 通用干扰。针对某一特定网络生成一个干扰图像。一旦加入到DNN的输入图像上,就会造成网络的分类错误[6]。因此,尽管生成干扰图像需要消耗时间,但每个网络只要计算出一个干扰就可以。而且对抗训练方法对该攻击类型无效。

另外,文献[10]提出应用随机化技术来防御针对机器学习系统的攻击,然而对DNN来说并不适用。产生误分类的攻击手段,其最终目的是降低分类的精确度,而DNN中所有提高用户分类精度的模型并没有提供针对攻击者修改测试图像添加防护措施[11]。文献[12]提出一种基于MINST数据库的检测攻击样本模型,但是该方法需要掌握一种样本误分类成另一种样本的原因,这在大部分情况下都很难实现。此外,利用分类器将输入图像区分为合法用户或者攻击者的方法也是不安全的,因为分类器本身也有可能被恶意攻击。

1.2 移动目标防御思想

移动目标防御(Moving Target Defense,MTD)应用在软件安全领域的策略是通过在多个软件系统中不断切换来降低攻击成功率[13],在网络应用系统的应用也可增加系统安全性[14]。本文提出一种基于贝叶斯-斯坦科尔伯格博弈的动态防御方法为DNN提供安全框架。将DNN中的图像分类系统和用户之间的交互模拟成一个反复贝叶斯博弈过程,保证系统的安全性,并基于博弈论方法随机从整个网络集中挑选一个网络,为输入图像进行分类。博弈论确保了攻击者无法通过人为攻击策略增加误分类率。更重要的是,该策略能平衡系统安全性和合法用户高精确度分类性。

2 深度神经网络中的动态防御

在MTD系统中,防御方存在多种系统配置,攻击者发起的攻击只能影响防御系统的部分配置。已知系统输入,防御方选择一种配置对输入数据进行处理,并产生相应的输出数据,这样攻击方无法知道系统处理输入所选择的配置。由此可见对输入进行分类时,如何随机选择配置是该方法的关键。这种架构的缺点就是它有可能降低未受干扰输入图像的分类精度,因此需要寻求一种高分类精度和高安全性之间的平衡。

2.1 防御方配置

MTD架构中的多种配置对应到DNN中就是为同一种分类任务而训练的多个DNN,并且同一种攻击方式不适用于所有DNN。对于图像分类来说,卷积神经网络(Convolutional Neural Network, CNN)的效果最好。因此,尽管防御方使用的DNN配置可能在层数、参数和激活函数等方面有所不同,但也可能会使用CNN的单元来产生类似的结果。本文模型中用N表示防御方的一组配置集,实验中N为3个基于MNIST的神经网络集,分别为卷积神经网络、多层感应器(Multi-Layer Perceptron,MLP)和分层周期性神经网络(Hierarchical Recurrent Neural Net,HRNN)。

2.2 用户类型和行为设置

本文模型中,将用户分为合法用户Lu和恶意用户Au。Lu只是使用BSG系统完成特定的图像分类任务,不包含任何恶意目的,是机器学习服务提供方的目标用户。Au试图干扰输入图像,使DNN对输入图像产生错误的分类标签。Lu的目的是对输入图像进行分类,而Au则设法对该过程发起多种攻击行为。假设Au了解BSG系统中的不同架构,因此理论上可以对系统中的任意一个网络发起攻击,U表示发起的攻击集。针对某一网络发起的攻击u∈U可能对其他网络配置来说无效,这就是区别免疫的概念。

2.3 区别免疫

神经网络中的攻击效率与系统的误分类率(测试样本使网络误分类的概率)直接相关。模型中用E:N×U→[0,100]表示误分类率,en,u表示网络n受到攻击u时的误分类率。假设u只对一种特定配置有效,而对其他配置无效,这是BSG系统有效性的前提。因此通过在多种配置之间进行切换就可以保证系统安全性,将该过程称之为区别免疫,其值δ(0≤δ≤1)的定义如下:

∀n,u,en,u≥0

(1)

式中:minnen,u和maxnen,u分别表示攻击者发起攻击u时对BSG系统所造成的最小影响和最大影响,minnen,u和maxnen,u差值越大,则说明区别免疫过程越有效,当minnen,u和maxnen,u差值不变时,可通过分母值大小来判断免疫过程的有效性;分母中的“+1”是为了确保分母不为0;分子上的“+1”是为了确保当minnen,u=maxnen,u时,maxnen,u越大,δ值越小。

2.4 反复贝叶斯博弈

为保证BSG方法安全性,每当对输入图像分类时,随机选择一个网络n。如果只是简单地随机挑选一个网络,则有可能选的网络分类精度低,抗干扰能力差。而且随着时间推移,攻击者最终能推断出防御者的策略,并对抗干扰能力差的网络加以利用,导致更加严重的攻击后果。本文利用反复贝叶斯博弈来设计一个有效的变换策略。

BSG系统的首要任务是保证合法用户的分类精度不受影响,其次是增加对受攻击者干扰图像的分类精度。合法用户和恶意用户形成一种贝叶斯博弈关系。假设攻击者通过对系统流量一定时间的探测和观察能够推断出防御者的变换策略,然后据此发起攻击。本威胁模型中,防御者在选择变换策略之前也会考虑到这种可能,形成一种反复博弈过程。将此次博弈过程描述为一种非零和博弈,下面定义两类用户的作用。

1) 合法用户Lu和防御方都会获取一个代表DNN系统分类精确度的收益值。比如,网络n对输入图像的分类精度为93%,则防御方和Lu的收益值都是93,如表1所示。

表1 防御方和合法用户收益值对比表

2) 恶意用户Au对网络n发起攻击u,其收益值由en,u得来,与误分类率相关。防御方的收益值为网络n对输入干扰图像分类的精确度,即(100-en,u),如表2所示。

表2 防御方和恶意用户收益值对比表

2.5 防御方的变换策略

贝叶斯-斯坦科尔伯格博弈[15]是一种典型的解决探测以及攻击不确定性的安全博弈方法,本节将攻防过程建模为贝叶斯-斯坦科尔伯格博弈模型,获得最佳的网络切换策略。斯坦科尔伯格博弈包括先采取行动的领导者以及随后行动的追随者,由于领导者首先采取行动,所以领导者在此博弈中占优。

(2)

0≤xn≤1,∀n∈N

∀u∈UD,∀D∈{Au,Lu}

3 实验结果

3.1 非对抗训练网络

在MNIST数据库基础上分别基于CNN、MLP和HRNN训练了三个神经网络。训练集和测试集大小分别为50 000和10 000幅图像。对每一个网络发起快速梯度下降(FGSM)攻击(干扰率ε=0.3),然后计算所有网络中测试集的误分类率。系统的区别免疫值δ=0.29,将BSG系统和α取值为(0,1)间的单个网络进行对比,其目标函数值如图1所示,其中ORS表示采用普通的随机切换策略。当α=0时,BSG系统选择CNN时,最大分类精度为99.1%,采用ORS方法时,分类精度为98.2%(原因是使用了低精确度的分类器);当α=1时,单个网络最小分类精度为2.0%,最大为12.6%。尽管使用了高漏洞的网络,BSG方法的分类精度也可达到30%。防御方混合策略为x=(0.274,0.061,0.665)。由于选用了同等概率下漏洞更多的配置,ORS分类精度为24%。

图1 BSG方法和原始网络中合法用户的分类精度对比图

类似地,在基于Imagenet数据集的两类不同网络(VGG-F,ResNet-152)上发起FGSM攻击,系统区别免疫值δ=0.34。将BSG系统和α取值为(0,1)的单个网络进行对比,其目标函数值如图2所示。当α=0时,BSG采用精确度最高的网络使分类精度最大化,因此ResNet-152和BSG方法的起点相同。随着攻击测试样本普适性增加,所有网络分类精度均有所下降,BSG开始进行网络切换来提高对抗干扰的能力。当系统只收到攻击样本时,即α=1时,BSG的分类精度为42%,而其他网络的分类精度为20%左右。防御方混合策略为x=(0,0.171,0.241,0,0.401,0.187),未采用高危漏洞的配置。

图2 BSG方法和原始网络中分类精度对比图

3.2 对抗训练网络

对抗训练对许多种攻击来说是一种有效的防御机制,利用攻击算法生成干扰图像并在训练过程中加以利用。但是该方法只对利用该算法生成的干扰图像有“免疫”效果,对其他攻击行为(如文献[16]中攻击行为)可能无效。为论证BSG方法可以与对抗训练神经网络系统机制一起减少误分类率,在3个基于MNIST数据库的网络(CNN、MLP、HRNN)上实施对抗训练。攻击者发起FGSM攻击(对抗训练能够在一定程度上防御该攻击类型)和由文献[16]提出的一种新的攻击类型CWL2。BSG和恶意用户Au之间的博弈关系如表3所示。分别统计得出整个测试数据在FGSM攻击下的误分类率和20个测试数据点在1 000次CWL2攻击下的误分类率。

表3 对抗训练网络中图像分类精确度

BSG系统和其组成网络的目标函数值对比图如图3所示。正如前文所述,ORS性能比单一网络下单分类系统(如CNN)差。当攻击概率较高(即α=1)时,BSG的误分类率大约为24%,而CNN的误分类率为20%。大多数情况下,BSG系统使用单一网络,因此可以与现有的神经网络防御机制共存,提高攻击干扰图像的鲁棒性。

图3 对抗训练网络目标函数值对比图

4 结 语

针对深度神经网络中现有分类系统的脆弱性,基于网络空间领域的MTD思想,本文提出一种基于贝叶斯-斯坦科尔伯格博弈的DNN动态防御方法。定义了整体网络集“区别免疫”的概念,将网络中防御方和用户之间的交互模拟为一个反复贝叶斯博弈过程,基于此从该组网络集中挑选出一个受训练的网络对输入图像进行分类。实验结果表明,该方法可以减少基于MNIST数据库和Imagenet数据库中受干扰图像的分类错误,同时对于正常的测试图像保持较高的分类精度。

猜你喜欢

贝叶斯攻击者精度
基于不同快速星历的GAMIT解算精度分析
数字化无模铸造五轴精密成形机精度检验项目分析与研究
基于贝叶斯博弈的防御资源调配模型研究
正面迎接批判
正面迎接批判
近似边界精度信息熵的属性约简
租赁房地产的多主体贝叶斯博弈研究
租赁房地产的多主体贝叶斯博弈研究
贝叶斯网络概述
贝叶斯公式的应用和推广