基于PSO 的路牌识别模型黑盒对抗攻击方法∗
2020-11-03陈晋音陈治清郑海斌沈诗婧苏蒙蒙
陈晋音, 陈治清, 郑海斌, 沈诗婧, 苏蒙蒙
(浙江工业大学 信息工程学院,浙江 杭州 310023)
深度学习凭借其强大的特征提取与拟合能力而被广泛应用于各个领域,如自动驾驶[1]、人脸识别[2]、语音识别[3]、恶意软件检测[4]、推荐系统[5]、生物信息[6]、城市管理[7]、目标检测与识别[8-14]等.其中,自动驾驶技术的日趋成熟引起了研究人员的广泛关注,其涵盖了图像处理、语音识别、激光雷达、GPS 定位、自动路径规划等大量前沿技术.而无人汽车的高级控制系统依赖基于深度学习的图像识别与目标检测等实现环境的感知,其中,基于深度学习(例如GTSRB-CNN[15])的路牌识别是主要技术之一.
然而,最新的研究发现,深度学习容易受到对抗样本攻击[16],即:通过在正常良性样本中添加精心设计的微小扰动得到的对抗样本,可使原本分类准确率接近99%的深度学习模型完全失效,且添加的扰动肉眼不可见.因此,对抗样本具有较强的迷惑性和危害性.Szegedy 等人[17]首次证明了:通过在输入数据中添加小规模精心制作的扰动,能够使卷积神经网络做出错误决策.此后出现了更多的针对深度模型的对抗攻击方法.根据深度模型的透明程度,可以分为白盒攻击和黑盒攻击:白盒攻击如FGSM[18]、C&W[19]、DeepFool[20]、通用对抗扰动攻击[21]、单像素攻击[22]等;黑盒攻击如Boundary[23],ZOO[24],POBA-GA[25].这些攻击方法计算得到的对抗扰动虽然是不明显的,甚至是肉眼不可见的,但能够导致深度学习模型失效.对抗攻击不仅发生在数字虚拟空间,也出现在现实物理空间中.在物理世界,Kurakin 等人[26]通过手机摄像头识别打印的对抗样本时出现错误分类;Sharif 等人[27]研制出了一副带有对抗扰动的“眼镜”,可以让佩戴者躲过人脸识别系统或者被误识为另一个人;马玉琨等人[28]提出了一种面向人脸活体检测的对抗样本生成算法.
在物理场景的攻击中,通常需要面对这些挑战:(1) 物理场景的背景环境是多变的,无法通过控制背景进行攻击;(2) 光线、距离和角度的不同容易引起对抗扰动的攻击失效;(3) 扰动过小可能使图像传感器无法有效捕捉,太大则容易引起人眼的警觉.
自动驾驶车辆的路牌识别系统,其安全性和可靠性对汽车行驶过程中做出正确的决策具有重要影响.当攻击者在真实的路牌上添加对抗扰动,并成功攻击路牌识别系统时,可能会造成难以想象的灾难.本文针对物理世界中常用的基于深度学习的路牌识别系统展开攻击,设计基于粒子群优化的黑盒物理攻击方法(black-box physical attack via PSO,简称BPA-PSO),攻击者可以操控被攻击对象的物理外表,如在路牌上添加一些不易引起人类警觉的海报或贴纸来欺骗自动驾驶车辆的路牌识别系统.BPA-PSO 算法在不知道目标模型结构和参数等细节的前提下,通过迭代优化得到在物理世界实现有效攻击的对抗样本,该方法能够克服真实路牌识别场景中的光线、角度和距离等因素的影响,发现基于深度学习的路牌识别系统中存在的安全漏洞.
根据攻击者希望实现的攻击目标的不同,可以分为有目标攻击和无目标攻击.在无目标攻击中,攻击者的目的是使某一路牌不能被正确识别或者被识别成其他任意一种路牌.例如:攻击“紧急转弯”标识后,被路牌识别系统错误识别为任意其他标志,使得车辆遇到急转弯时发生意外.在有目标攻击中,攻击者试图在某一路牌上添加海报或贴纸使该路牌标志被识别为指定的另一种路牌标志,这类攻击往往带有更大的危害性.例如:当一个区域内被攻击的路牌标志数量较多,甚至可以构成一个系统时,该区域的交通很容易发生瘫痪,造成较大的损失.BPA-PSO 算法通过调整适应度函数的优化目标,能够同时实现有目标攻击和无目标攻击.
本文专注于研究基于进化计算的路牌识别攻击有两个重要的原因:首先,这种攻击属于黑盒攻击,符合物理世界中无法获得模型细节的真实情况,并且能够产生对环境具有较强鲁棒性的对抗扰动;其次,对于自动驾驶车辆来说,当它的路牌识别系统受到攻击时,所引起的后果往往是灾难性的,因此,研究这种攻击有助于学习如何进行防御.图1 展示了BPA-PSO 算法得到的能够成功攻击物理世界中路牌识别系统的对抗样本,从左到右分别是禁止鸣笛的正常路牌图像、添加在正常路牌上的对抗扰动、在电子空间中添加扰动后的对抗路牌样本、在物理世界中添加扰动后打印并拍摄的对抗路牌样本.其中:正常路牌图像在物理世界中打印后能够被正确识别,对抗路牌图像在物理世界中打印后被路牌识别系统错误识别为“限速40km/h”.本文的工作将有助于理解物理世界的自动驾驶车辆中基于深度学习的图像识别模型,检测已有识别模型的安全漏洞,为进一步提高深度学习模型鲁棒性的研究工作提供帮助.
本文的主要贡献如下.
(1) 设计了基于粒子群优化的黑盒攻击方法,不需要了解模型结构和参数等细节,能够仅通过模型输出类标和最高置信度的信息实现有效攻击,符合实际应用场景,同时具有较好的迁移性;
(2) 生成的对抗扰动在物理场景下攻击有效且不易引起人类警觉,通过在电子空间中模拟物理场景,将对抗样本旋转、缩放和光影变化后的攻击效果作为优化目标的一部分,提高了物理攻击的稳定性和可靠性;
(3) 本文建立了一个新的中国路牌数据集和对抗路牌数据集,通过大量实验,验证了BPA-PSO 算法在电子空间和物理空间中针对基于深度学习的路牌识别系统的攻击有效性.
本文第1 节对目前针对深度学习模型的对抗攻防研究进行总结,包括主流的白盒攻击方法、黑盒攻击方法以及目前主流的优化算法介绍.第2 节对本文提出的BPA-PSO 算法进行介绍,详细说明如何在路牌标志的局部区域上添加海报或贴纸来欺骗自动驾驶车辆的路牌识别系统,以及如何提高对抗攻击的物理稳定性和可靠性.第3 节对实验设计和结果分析进行阐述,说明了BPA-PSO 算法在多种物理场景中的攻击有效性和可靠性.第4节和第5 节分别对本文进行总结,对未来的工作和挑战进行展望.
1 相关工作
1.1 白盒攻击方法介绍
攻击者能够获得机器学习所使用的模型结构以及模型的参数,并利用它们产生对抗样本数据的攻击称为白盒攻击,在这种攻击过程中,更多地需要与模型的内部参数信息之间进行交互.本小节介绍了几种主流的白盒攻击方法.
(1) 快速梯度符号法(FGSM)
FGSM[18]是Goodfellow 等人提出的生成对抗样本的一种简单算法,其主要思想是:计算深度神经网络模型梯度变化最大的方向,并在该方向上添加对抗性扰动,通过增加模型损失的方式,使得模型进行错误的分类.扰动计算公式如下:
其中,∇xJ(⋅)是在当前参数θ下,损失函数在原始图像附近计算得到的梯度;sign(⋅)表示符号函数;y是结果标签.
(2) C&W 攻击
C&W 攻击是由Carlini 和Wagner[19]提出的基于优化的攻击,通过限制对抗扰动的0-范数、2-范数或者无穷范数,使扰动变得几乎不可察觉.因此,这类攻击的成功需要满足对抗样本与原图的差距越小越好.对抗样本使得模型分类错误,且错的那一类的置信度越高越好.实验证明,针对目标网络的防御几乎无法抵御这类白盒攻击生成的对抗样本.
(3) JSMA 攻击
在主流的对抗攻击方法中,常用的是限制扰动的2-范数或无穷范数来限制扰动使得人眼无法察觉.然而,Papernot 等人[29]提出了限制扰动0-范数的方法也能够实现对抗攻击,并且这种方法只需修改图像中的几个像素点的值.该算法的主要思想是:一次只修改一个原始图像的像素,并通过网络层的输出梯度计算显著图来监视修改后对分类结果的影响.在显著图中,数值越大表示欺骗网络的可能性越高.该算法根据计算出的显著图像和当前图像,选择其中最有效的像素点进行修改从而欺骗网络.
(4) Houdini 攻击
Houdini 是由Cisse 等人[30]提出的一种通过产生可以适应任务损失的对抗性样本来欺骗基于梯度的机器学习的算法.一般产生对抗样本的典型算法是采用网络损失函数的梯度来计算扰动.然而,有些任务损失函数往往不适合这种方法.例如:在语音识别中是根据字错误率来产生对抗性样本,而不是损失函数的梯度.Houdini 则是专门为这类任务提供产生对抗样本的方法.
(5) MI-FGSM
Dong 等人[31]提出了一种基于动量的迭代攻击算法来提升对抗性攻击能力,即MI-FGSM.它将动量项添加到攻击的迭代过程中,这有利于加快收敛速度、使更新方向更加平稳,并在迭代期间能够从较差的局部最大值中逃脱,从而达到更好的攻击效果.
(6) 单像素攻击
Su 等人[22]在每幅图像中只改变一个像素点的情况下,使得70.97%的图像在测试中成功地欺骗了3 种不同的网络模型.而且网络错误分类时的平均置信度高达97.47%.Su J 等人使用差分进化的概念来计算对于样本,通过对每个像素点进行修改生成子图,并与母图进行对比,根据选择标准保留攻击效果最好的子图像,从而实现对抗攻击.
1.2 黑盒攻击方法介绍
与白盒攻击相反,黑盒攻击是指在攻击者不知道目标模型信息的情况下生成对抗样本.在一些情况下可以假定攻击者对模型有一定的认识,但是绝对不知道目标模型的内部参数.因此,这种攻击往往更加符合实际.在本小节中,介绍了几种主流的黑盒攻击方法.
(1) UPSET 和ANGRI 攻击
UPSET 和ANGRI 是Sarkar 等人[32]提出的两种黑盒攻击算法,其中:UPSET 可以作为特定目标类的目标攻击,在图像不可知时产生的对抗性扰动添加到任何图像上都可以使图像分类器将其识别成目标类别;ANGRI 则是作为特定图像的目标国际,其生成的是特定图像的扰动.在MNIST 和CIFAR10 数据集的实验中,这两种攻击方法都获得了高欺骗率.
(2) 零阶优化攻击(ZOO)
基于零阶优化的攻击是Chen 等人[24]提出的一种有效的黑盒攻击,它是只访问模型的输入图像和输出的置信度分数,基于零阶优化,通过直接估计目标模型的梯度来生成对抗样本.这种攻击不需要训练替代模型,并避免了攻击可转移性的损失,是目前黑盒攻击中最有效的攻击方法之一.
(3) 边界攻击(boundary attack)
边界攻击是由Brendel 等人[23]提出的一种基于决策的对抗攻击算法,它的主要思想是:从生成大的对抗性扰动开始,然后在保持对抗性扰动的同时,力求减少扰动.这种攻击几乎不需要超参数的调整,也不依赖于替代模型,只依赖模型的最终决策,并且这种攻击使得机器学习与真实世界的关联性更大,因为现实中我们很容易得到模型的决策结果而不是置信度分数或logit值.
1.3 群体智能优化算法介绍
本节主要介绍了几种常见的群体智能优化算法.
(1) 蚁群算法
蚁群算法是Dorigo 等人[33]受到蚂蚁觅食现象的启发而提出的一种群体智能优化算法,属于随机搜索算法,其主要思想是人工模拟蚂蚁搜索食物的过程.蚁群算法特点是可以进行分布式计算、具有较强的鲁棒性以及容易同其他方法相结合.但与其他方法相比,该算法的复杂度较大、搜索时间较长,并且容易出现停滞现象.
(2) 粒子群优化算法(particle swarm optimization,简称PSO)
粒子群优化算法是Kennedy 等人[34]源于对鸟群觅食现象而提出的一种进化算法.在粒子群算法中,每个粒子能够记录下自己飞过的历史最优位置,粒子之间可以通过记忆信息共享实现群体的优化.粒子群算法是一种不需要梯度信息的全局优化算法.粒子群算法的参数较少、易于设置和调整、具有较快的收敛速度.但粒子群算法也存在易陷入局部最优的缺点,并且粒子群的初始解分布对全局最优解具有较大的影响.由于该算法出色的优化性能,本文采用粒子群算法来优化来攻击路牌识别模型.同时,针对该算法易陷入局部最优的缺点,本文通过改变初始解的生成方式来搜索全局近似最优解.
(3) 人工鱼群算法
人工鱼群算法是李晓磊等人[35]提出的一种群体智能优化算法.人工鱼群算法通过构造人工鱼来模仿鱼群的觅食行为、聚群行为、追尾行为和随机行为来实现寻优.该算法具有较快的收敛速度、对初值和参数选择不敏感、易于实现等优点.但对于较大规模的问题时求解困难,收敛较慢.
其他的群体智能优化算法还包括菌群算法[36]、蛙跳算法[37]、人工蜂群算法[38]等,它们都具有良好的性能和各自的特点.
2 基于PSO 的路牌识别模型的攻击方法介绍
2.1 算法框架介绍
本文设计的基于PSO 的路牌识别模型的攻击方法主要是通过PSO 算法,在对路牌识别模型内部参数未知的情况下,通过迭代寻优来生成路牌识别模型的对抗样本.同时,利用图像处理技术在电子空间中模拟物理世界的噪声干扰来优化对抗扰动,提高对抗样本在物理世界的攻击鲁棒性.图2 展示了生成物理世界攻击有效的对抗样本的过程:首先输入一张良性路牌图像,添加随机扰动得到多张对抗路牌图像作为初始解;然后使用PSO 进行寻优.根据对抗路牌图像的攻击效果更新搜索方向,使得优化后对抗路牌图像的攻击成功率高、扰动的稳定性强以及扰动的不可见效果好.测试优化后的对抗路牌图像在物理世界中的攻击效果.
2.2 BPA-PSO算法具体步骤介绍
粒子的初始解对PSO 算法的寻优结果具有重要影响.BPA-PSO 通过添加随机扰动获得对抗样本作为初始解,虽然大部分初始对抗路牌对于最终要攻击的目标路牌识别模型没有攻击效果,但是我们相信,其中部分特征与最终要攻击的目标路牌识别模型的对抗样本特征分布存在一致性.因此,BPA-PSO 算法通过寻优操作充分利用随机扰动的对抗性特征,将有用的特征保留,最终实现对目标路牌识别模型的攻击.
BPA-PSO 算法的具体描述如下.
(1) 粒子群算法初始化,将添加了随机扰动得到的每个对抗样本作为一个粒子,将每个对抗样本所有像素点的RGB 值作为粒子的位置矩阵xi,RGB 值的变化速度作为粒子的速度矩阵vi,以及当前迭代数g,最大迭代数Gk,当前惯性权重因子ω(g),第i个粒子的历史最优位置pbesti,粒子种群发现的全局最优位置
(2) 计算粒子群的适应度值,对每个粒子进行随机图像变换,并计算每个粒子变换后的适应度值;
(3) 根据得到的粒子群的适应度值,比较历史最佳适应度,并更新每个粒子的历史最优位置pbesti、粒子群的全局最优位置gbesti;
(4) 更新粒子群的速度vi和位置xi.我们在粒子速度和位置的更新过程中采用了惯性因子,其值较大时全局搜索能力强,其值较小时局部搜索能力强,计算公式如下:
其中,ωini为初始权重因子值,ωend为最终权重因子值,c1和c2为初始化学习因子,rand(⋅)为系统产生的介于(0,1)之间的随机数.
(5) 判断是否达到最大迭代数或全局最优解满足条件:若满足,则结束迭代,将搜索到的近似最优解作为最终的对抗样本;否则,返回步骤(2)继续迭代.
2.3 基于随机扰动的对抗路牌初始化
首先准备一组50 张待攻击的良性路牌图像集合,集合中的图像要求在距离为3m~6m、倾斜角为0°时拍摄的清晰的路牌图像,并通过添加随机扰动获得初始路牌粒子.为了促进物理攻击的有效性,需要对扰动优化目标进行修改,在对扰动范数限制的基础上叠加了扰动平滑性制约(perturbation smoothness restriction,简称PSR),计算公式如下:
其中,原始的扰动优化目标是最小化||ρ||2,修改后的扰动优化目标是最小化||ρ||2+fPSR(ρ),||ρ||2表示对扰动的2-范数限制;扰动ρ=x*-x,x*表示对抗路牌图像,x表示良性路牌图像;ρi,j是扰动中坐标位置为(k,j)的扰动像素点的RGB 三通道像素Rk,j,Gk,j以及Bk,j的平均值;是扰动中与坐标位置为(k,j)相邻的所有扰动像素点的RGB 三通道像素的平均值.
2.4 适应度函数设计
PSO 算法是以适应度函数为依据,通过比较种群每个个体的适应度值来进行搜索近似最优解.同样,适应度函数的设计将直接影响BPA-PSO 算法搜索到的对抗扰动的性能.适应度函数包括3 部分,分别是对抗性指标fadv(x*)、扰动平滑度fPSR(ρ)以及扰动的二范数||ρ||2,其中:对抗性指标fadv(x*)是用来评价生成的对抗样本对路牌识别模型的攻击效果,fadv(x*)越低,攻击效果越好;扰动平滑度fPSR(ρ)是用来评价生成扰动的物理稳定性;扰动的二范数||ρ||2是用来评价生成扰动的隐蔽性.适应度函数计算公式如下:
其中,κ1,κ2是平衡量纲的超参数.κ1是为了控制扰动的平滑度,保证物理攻击的有效性.κ2是为了控制扰动的隐蔽性.κ1,κ2过大,均容易降低物理攻击成功率;过小时,物理攻击成功率和扰动的隐蔽性效果均会下降.实验发现,κ1,κ2取值范围在0.001 和0.8 之间均具有较好的物理攻击效果.本文实验中,分别设为5×10-3和1×10-2.根据适应度函数,我们的寻优目标是搜索到攻击成功率高、扰动的物理稳定性强和扰动的不可见效果好的对抗路牌图像.根据攻击者预设的期望,对抗性指标可分为目标对抗性和无目标对抗性攻击,计算公式如下:
其中,f(⋅)表示路牌分类器的输出,包含所有类标的置信度分数;J(⋅)表示交叉熵函数;ytarget是目标类类标;n表示图像变换的类别数,每个粒子通过随机缩放、旋转、亮度变换等操作得到新的n张图像,目的是评价扰动的稳定性,在本文实验中,n的取值为15;scoretrue是真实类标的置信度分数;rank(⋅)是真实类标的置信度分数排名.
2.5 物理攻击的有效性保证
BPA-PSO 算法致力于实现物理空间中对路牌识别模型的攻击,相比于电子空间的攻击,它的实现更加困难,而一旦实现,危害性也更大.我们采取了以下几种措施来保证物理攻击的有效性.
(1) 使用海报或贴纸
对于添加到路牌上的扰动,其隐蔽性是很重要的,如果太过明显或突出,很容易引起人眼的警觉.本文对于扰动的隐蔽性定义并非指扰动不可见,而是指不引起人们的注意.但是因为物理世界的噪声难以预测,以至于小规模不可见的扰动很容易被破坏掉,无法稳定的存在.因此,采用海报(打印生成的对抗样本,扰动分布于整个路牌图像区域)或贴纸(打印生成的扰动,扰动区域较小)作为扰动的存在形式,可以很好地解决这个问题.如图3 所示:图3(a)是打印的海报类型的路牌物理对抗样本,图3(b)是打印的贴纸类型的路牌物理对抗样本.
(2) 增加扰动的平滑性
为了拟合物理世界中物体自然色彩的平滑性,在添加随机扰动和BPA-PSO 算法对扰动的优化中加入了扰动的平滑性.最后,通过最小化fPSR(ρ)可以使相邻像素点之间的值彼此接近,从而改善对抗样本图像的平滑度.这样不仅减少对抗样本打印时扰动的失真,也使图像传感器能够充分捕捉扰动的特征,促进物理的可实现性.
(3) 增强扰动的存在稳定性
我们充分分析了物理世界环境中的各种因素可能对扰动造成的影响,例如距离、角度、光影变化等,这些都是客观存在的,并且它们的变化可能会导致扰动的失效.因此,BPA-PSO 算法在优化扰动的过程中,通过图像处理中的缩放、旋转、亮度调节来模拟物理真实环境的变化.这样,最后得到的对抗样本就可以在复杂多变的物理环境中仍然具有较强的对抗攻击性.
2.6 算法伪代码
BPA-PSO 算法的伪代码说明如下.
算法伪代码.BPA-PSO 算法.
输入:一张良性路牌图像,适应度阈值e,粒子数numParticles,最大迭代次数Gk,当前迭代次数iter;
输出:鲁棒的对抗样本x*.
3 实验与分析
3.1 实验平台与评价指标介绍
实验平台环境:i7-7700K 4.20GHzx8(CPU),TITAN Xp 12GiBx2(GPU),16GBx4 内存(DDR4),Ubuntu 16.04(操作系统),Python 3.5,Tensorflow-gpu-1.3(深度学习框架),Tflearn-0.3.2.
为了证明BPA-PSO 算法的物理可实现性,我们分别在物理世界的实验室模拟场景和真实交通环境中进行了实验验证.通过摄像机采集了大量含有路牌标志的场景图像,并对它们进行路牌标志的检测与识别.同时,为了验证本文算法生成的对抗样本的稳定性,分别对光线、距离、角度等因素进行改变,设计了多种不同的对比场景进行实验.
实验中,以扰动的2-范数作为电子空间中的扰动评价标准,以攻击成功率作为生成的对抗样本鲁棒性的评价标准,其中,攻击成功率分为电子空间的攻击成功率ASRelec和物理空间的攻击成功率ASRphy:
其中,Nben表示待攻击的良性样本数量,Nadv表示在电子空间中攻击成功的对抗样本数量,Nphy表示在物理空间中攻击成功的对抗样本数量.
3.2 数据集与识别模型介绍
在模型的训练数据中,采用了本团队成员制作的中国路牌数据集(Chinese road sign recognition benchmark,简称CRSRB),其中包含了35 类常见的交通路牌标志,共计图片5 000 张.按照8:2 的比例划分为训练集和测试集,其中,所有图片大小均为64×64×3.如图4 所示为部分数据集展示,采集过程中考虑了不同光照、角度、背景、距离等因素.第1 行从左到右分别是:限重10t、禁止鸣笛、限速40km/h、禁止直行、禁止通行、禁止机动车通行、连续弯路,第2 行从左到右分别是:T 字路口、上坡路、步行、环岛行驶、标志指示、注意行人、解除限速40km/h.
实验选用的路牌识别深度模型结构说明见表1,包含不同的结构,每种结构分别训练了5 次,总共得到15 个识别模型,平均识别准确率大于95%,与文献[15]中的95.68%相近,基本满足识别要求.表中“5×5×32”表示卷积核窗口尺寸为5×5,深度为32.其中,CHINA-CNN1 采用文献[15]中的结构,使用德国路牌数据集.CHINA-CNN2 和CHINA-CNN3 在CHINA-CNN1 的基础上进行了层的修饰,得到结构不同的模型.由于本文使用的路牌识别模型结构与文献[15]提到的GTSRB-CNN 模型结构相似,因此识别效率在相同的硬件条件下相当.
Table 1 Structure of road sign recognition model表1 路牌识别模型的网络结构
3.3 实验结果分析
实验研究了基于BPA-PSO 算法生成的对抗样本在电子空间、实验室物理空间、户外物理空间(晴天/雨天)等场景下的攻击效果.
(1) 电子空间场景的攻击效果分析
首先评估BPA-PSO 算法在电子空间中的攻击效果,包括攻击成功率和扰动指标计算.如图5 所示:图5(a)所示为原图;图5(b)所示为ZOO 算法实现对路牌识别模型的黑盒攻击结果,其中,第1 列是添加的对抗扰动可视化后的图,第2 列是添加扰动后的对抗样本路牌图像;图5(c)所示为BPA-PSO 攻击方法实现对路牌识别模型的黑盒攻击结果.
进一步,在电子空间中的攻击效果统计如表2 所示.在基于ZOO 的物理攻击中,同样考虑扰动平滑操作,以保证物理扰动的可靠性.由实验结果可知:通过ZOO 算法攻击得到的对抗样本攻击成功率较低;而BPA-PSO 算法在电子和物理空间的攻击成功率达到了100%,得到的扰动大小比ZOO 也更小.这主要是因为BPA-PSO 算法学习了针对模型的对抗样本的特征分布,在优化过程中保留了对最终要攻击的目标模型具有对抗性的特征.表
2 中物理攻击的对抗路牌图像是在距离小于5m、倾角小于5°的情况下拍摄的.
Table 2 Attack performance on an electronic space scene表2 电子空间场景的黑盒攻击效果
(2) 实验室场景攻击效果分析
在实验室场景中,对路牌识别系统进行了物理攻击,主要采用贴纸和海报的方式来破坏路牌图像的特征,从而使路牌识别系统分类出错.实验测试了BPA-PSO 算法得到的对抗路牌图像在不同距离和不同倾斜角度情况下的目标/无目标攻击效果.
实验结果见表3,其中,“5m/0°”表示在距离路牌5m 处、摄像头旋转0°的条件下拍摄.
Table 3 Attack performance in indoor scene表3 实验室场景下不同距离/倾角的攻击效果
表3 展示了部分对抗路牌图像,更多对抗样本展示在附录的图6 中.
根据结果可知,对抗路牌样本在物理攻击测试中具有较高的攻击成功率,说明了物理扰动的有效性和可靠性.对于相同的路牌标识,海报形式的对抗样本的攻击成功率比贴纸形式的更高,这主要是因为海报能够实现比贴纸范围更广的扰动展示.
(3) 真实交通环境(晴天)中的攻击效果分析
在真实交通环境(晴天)中,实验场景设置了包括距离、角度和光影的变化.我们的攻击方式分为有目标攻击和无目标攻击,同时,我们添加扰动的形式包括贴纸和海报.
真实交通环境(晴天)中的无目标攻击实验结果见表4,在距离/倾角为分别5m/0°、7m/0°、7m/20°、15m/0°、15m/20°和光影分别为亮、暗的条件下测试对抗样本的物理攻击成功率.
Table 4 Untargeted attack in sunny outdoor scene表4 真实交通环境(晴天)中的无目标攻击
更多对抗路牌图像展示在图7 中.根据实验结果可知,对抗路牌样本在真实的交通环境(晴天)测试中仍然具有较高的攻击成功率,说明BPA-PSO 算法生成的对抗样本对变化的物理环境具有较强的鲁棒性.同时,海报形式的对抗样本的攻击成功率仍然比贴纸形式的高.
真实交通环境(晴天)中的有目标攻击实验结果见表5,在距离、角度和光影变化的条件下,测试对抗样本的物理攻击成功率.表中每种情况都拍摄3 张图片,记录识别结果和对应置信度.
· “tar:0.92”表示被识别为目标类且置信度为0.92;
· “ori:0.53”表示被识别为原始正确类标且置信度为0.53;
· “oth:0.33”表示被识别为除原始类和目标类以外的类标且置信度为0.33.
根据实验结果可知:对抗路牌样本在真实的交通环境(晴天)测试中,尽管环境因素发生变化,大部分的对抗样本仍然能够以较高的置信度欺骗路牌识别系统.说明BPA-PSO 算法生成的有目标的对抗样本也具有较强的鲁棒性.
Table 5 Targeted attack in sunny outdoor scene表5 真实交通环境(晴天)中的有目标攻击
(4) 真实交通环境(雨天)中的攻击效果分析
在另一真实交通环境中,实验场景设置在了雨天的道路上.由于制作对抗样本的材料是防水的,因此在实验测试中也获得了不错的攻击效果.
表6 展示了对抗路牌样本在雨天交通场景下的无目标攻击结果,更多对抗样本展示在图8 中.从实验结果可以看出:尽管环境因素更加恶劣,对抗样本仍然具有较为可靠的攻击性.
Table 6 Targeted attack in rainy outdoor scene表6 真实交通环境(雨天)中的有目标攻击
(5) 攻击算法对比
在相同的电子场景和物理场景下,实验还设置了其他3 种黑盒攻击方法与本文的BPA-PSO 攻击方法进行对比,分别是PSO,ZOO[24]和Boundary[23].实验中,分别使用了每种攻击方法下电子攻击成功率为100%的对抗样本来做物理场景的攻击.其中,攻击测试的路牌对抗样本包含5 个类别,共1 000 张图像.物理场景攻击的路牌图像是在距离小于5m、倾角小于5°的情况下拍摄的.
实验结果见表7,其中,ASRelec是电子攻击成功率,ASRphy是物理攻击成功率.
Table 7 Comparison of attack success rate of different attack algorithms表7 不同攻击算法的攻击成功率对比
从实验结果可以看出:尽管不同攻击方法的对抗样本的电子攻击成功率均为100%,但在物理场景中,由于物理环境的噪声和物理设备的失真对扰动的破坏,PSO,ZOO 和Boundary 在物理场景的攻击成功率明显降低;而BPA-PSO 仍具有较高的物理攻击成功率.可以看出,BPA-PSO 攻击方法生成的对抗样本具有较好的稳定性.
(6) 对抗训练
为了提高路牌识别模型面对对抗攻击的鲁棒性,实验中使用原始良性路牌样本与使用BPA-PSO 攻击测试集生成的路牌对抗样本混合得到的数据集对路牌识别模型进行对抗训练.混合的数据集中原始良性路牌样本与对抗样本的数量比为8:2.实验中,对抗训练使用的是CHINA-CNN3 模型,经过5 个epoch 的训练得到鲁棒性较高的路牌识别模型.在计算对抗训练前后的攻击成功率时,我们挑选了5 类路牌的对抗样本图像共计1 000 张来测试对抗训练前后的攻击成功率.其中,物理场景攻击测试的路牌图像是在距离小于5m、倾角小于5°的情况下拍摄的.
表8 展示了BPA-PSO 攻击方法生成的对抗样本和ZOO 攻击方法生成的对抗样本在路牌识别模型使用BPA-PSO 生成的对抗样本进行对抗训练前后的攻击效果.
Table 8 Success rate of attack before and after training表8 对抗训练前后的攻击成功率
根据实验结果可知:
· 将对抗样本添加到训练集进行对抗训练后,对抗样本在电子和物理环境的攻击成功率均明显下降;
· 同时,其他攻击方法如ZOO 的攻击成功率也明显下降.
因此,路牌识别模型的鲁棒性得到了明显的提高.
4 总结
本文提出了一种基于粒子群优化的路牌识别攻击方法来生成物理可实现的对抗样本,这种攻击方法生成的对抗样本具有较强的鲁棒性和良好的隐蔽性.该攻击方法属于黑盒攻击,可以在不知道模型内部参数的情况下生成对抗样本.
本文分别在实验室场景以及真实道路交通场景下对对抗样本的对抗性进行了检验,由实验结果可见:BPAPSO 算法生成的对抗样本在复杂多变的物理环境下,能够以高置信度、高欺骗率、高可靠性攻击路牌识别系统.这对于研究如何提高自动驾驶系统中深度模型的鲁棒性具有极大的理论意义与实践价值.
5 未来工作与展望
本文的方法也面临两个挑战.
(1) BPA-PSO 攻击算法需要获得路牌识别模型输出的分类置信度分数,但在某些场合下只能获得输出的类标.所以在今后的工作中,将研究只用模型输出的类标对路牌识别模型进行攻击;
(2) BPA-PSO 算法的扰动计算时间复杂度较大,这是由于通过添加随机扰动来获得粒子群的初始解为后续的寻优过程增加了负担.所以今后的工作中,将改进生成粒子群初始解的方法,优化计算扰动的时间复杂度.
除路牌识别模型外,自动驾驶系统的语音识别、人脸识别、道路安全检测、车辆检测、行人检测等模型都是基于深度学习架构,也面临同样的安全威胁.因此,面对对抗攻击的威胁,设计有效的防御方案是未来研究工作的重点.
目前,在对抗攻击防御方面的主流方法有数据修改、模型修改以及附加网络防御.我们将研究基于BPAPSO 算法生成的对抗样本通过对抗训练的防御效果,提高自动驾驶系统中深度学习模型的安全性.