针对车载环境感知系统的对抗样本生成方法
2022-11-07黄世泽张肇鑫董德存秦晋哲
黄世泽,张肇鑫,董德存,秦晋哲
(1.上海市轨道交通结构耐久与系统安全重点实验室,上海201804;2.同济大学道路与交通工程教育部重点实验室,上海201804)
随着深度学习和卷积神经网络(convolutional neural network,CNN)的不断发展,通过CNN解决诸如图像分类[1]、目标检测[2]以及故障诊断[3-4]等问题已成为共识。在智能交通领域[5],通过车载摄像设备采集车辆行驶环境视觉信息,基于深度学习检测车辆行驶前方障碍物,这可突破司机感知的局限性,提高交通运营安全。
研究表明,对抗样本的存在对深度学习造成较大的威胁,即通过对输入图像施加人眼不可察觉的细微扰动,可以使深度神经网络以较高的置信度输出任意想要的分类,这样的输入称为对抗样本。Szegedy等[6]提出了一种有限记忆BFGS(limited BFGS,L-BFGS)算法,通过尽量找到最小的可能的攻击扰动来生成对抗样本,即使存在扰动的图像与干净的图像只有微小的差别,甚至这些扰动肉眼察觉不到,也会导致分类器分类错误。Moosavi-Dezfooli等[7]证明了深度学习网络中普遍存在一种使其错误识别的扰动。Goodfellow等[8]提出了快速梯度符号方法(fast gradient sign method,FGSM),寻找深度学习模型的梯度变化最大方向,并按照此方向对图像添加扰动。上述几种方法需要获取网络结构,因此被称为白盒攻击。除了上述几种方法,基于雅可比矩阵的显著性图攻击(Jacobian-based saliency map attack,JSMA)[9]、Carlini&Wagner(C&W)算法[10]、迭代极小可能类法(iterative leastlikely class method,ILCM)[11]、TargetedFool[12]也是白盒攻击方法。与白盒攻击相对应的是黑盒攻击,黑盒攻击不需要获取网络的详细结构。文献[13]中,通过粒子群优化(particle swarm optimization,PSO)算法寻找对抗样本,不需要获取网络结构,取得了较好的实验效果。在物理世界,通过对真实世界中的车牌进行黑盒攻击,欺骗车牌识别系统,从而验证了攻击方法的迁移性[14]。文献[15]中提出一种面向人脸活体检测的对抗样本生成方法。总体来说,上述方法都是基于分类器网络的对抗样本生成方法,对于其他类型的深度学习对抗攻击具有非常重要的借鉴意义。
随着深度学习网络应用场景的不断拓展,针对目标检测器的对抗样本生成方法[16-17]近年来陆续被提 出。Xie等[18]提 出 了 稠 密 对 抗 生 成(dense adversary generation,DAG)算法,将梯度下降算法应用到对抗样本的优化问题来实现对目标检测器的攻击。2019年,Wei等[19]提出了统一有效对抗(unified and efficient adversary,UEA)算法,基于生成对抗网络(generative adversarial networks,GAN)框架来获取对抗性图像和视频。Wang等[20]将投影梯度下降(projected gradient descent,PGD)算法运用到目标检测器攻击,取得了较好的攻击效果,该算法能够应用于许多神经网络结构。Huang等[21]提出了针对Faster R-CNN的改进的PGD算法和改进的C&W算法,成功攻击了Faster R-CNN目标检测器。Xiao等[22]提出了一种针对目标检测器的对抗样本生成方法,无目标攻击效果较好,但未得到目标定向攻击效果和目标隐身攻击效果。通过寻优算法在不需要获取网络参数的条件下生成能够让目标隐身的黑盒对抗样本,但生成过程中需要查询模型输出结果的次数过多[23]。物理攻击方面,通过改进的ShapeShifter方法并利用Faster R-CNN网络,在不同的距离和角度攻击中文停车牌,取得了较好的攻击效果[24]。
基于分类器网络的对抗样本生成方法不能有效攻击目标检测器,现有攻击目标检测器的对抗样本生成方法仅针对无目标攻击,攻击方式和效果有限。因此,针对YOLO目标检测器的对抗样本生成问题,提出了目标隐身攻击和目标定向攻击2种对抗样本生成方法。
1 对抗样本生成方法
1.1 对抗样本生成流程
首先,通过目标检测网络的训练参数得到网络输出信息,包括目标所在的包围框和对应的类别置信度;然后,设计一种损失函数,用于对抗样本所需梯度信息的生成;最后,通过线性化梯度信息获取针对目标检测网络的对抗样本。对抗样本生成流程如图1所示。
图1 对抗样本生成流程Fig.1 Main framework of generating adversarial examples
对抗样本生成算法的具体实施过程如下:
(1)对抗样本初始化,将原始图像作为对抗样本的初始图像。
(2)将初始化的对抗样本输入目标检测器YOLO,得到目标的位置和置信度。
(3)损失函数设计。
(4)根据构建的损失函数计算对抗样本相应梯度。
(5)通过反向传播算法更新对抗样本。
(6)判断是否达到设置的迭代次数,若是则输出对抗样本,若不是则返回(2)进行下一次迭代。
1.2 目标隐身攻击对抗样本生成算法
目标隐身攻击具体表现为:YOLO目标检测器不能检测出图像中真实存在的目标,也就是目标在YOLO目标检测器下处于隐身状态。在针对目标隐身攻击的对抗样本生成方法中,需要寻找能够使目标类别的置信度最小的扰动,如下所示:
式中:L为损失函数;M为目标检测器;xori为原始图像;r为需要计算的对抗扰动;θ为模型参数;y^为模型对图像的预测值,在本研究中指的是目标类别的置信度。
通过损失函数的设计降低真实目标类别的置信度,生成隐身攻击所需的对抗样本梯度信息。设计的损失函数如下所示:
式中:N为由目标检测器计算得到的目标个数;C为目标类别的置信度。
L∞范数约束下的对抗扰动为L2范数约束下的对抗扰动为
式(3)和式(4)中:‖‖2为L2范数归一化;α为学习率,α=0.02;∇txL为计算得到的相应梯度,其中t为迭代次数;sign为符号函数,即sign(φ)=其中φ为真实值。
对抗样本xtadv的计算式为
1.3 目标定向攻击对抗样本生成算法
目标定向攻击具体表现为:原始类别为“car”的目标,YOLO目标检测器错误地将其识别为类别“bus”。在针对目标定向攻击的对抗样本生成方法中,需要寻找能够使目标类别的置信度最小的扰动,如下所示:
式中:y^′为定向识别的目标类别置信度。
在针对目标定向攻击的对抗样本生成方法中,通过损失函数的设计降低被攻击目标类别的置信度,提高攻击定向目标类别的置信度,进而生成目标定向攻击中的对抗样本梯度。
通过损失函数的设计降低真实目标类别的置信度,进而生成目标攻击所需的对抗样本梯度信息。损失函数如下所示:
L∞范数约束下的对抗扰动为
L2范数约束下的对抗扰动为
对抗样本xtadv的计算式为
1.4 算法伪代码
对抗样本生成算法的伪代码如图2所示。
图2 对抗样本生成算法的伪代码Fig.2 Pseudo code for adversarial example generation algorithm
2 方法验证
2.1 数据集来源介绍
为验证数据的有效性,收集了Rail数据集和Cityscapes数据集[25]。Rail数据集为根据深圳龙华有轨电车运行的真实数据制作的有轨电车数据集,数据图像的原始分辨率为1 920×1 080,实验中将分辨率调整为960×540。Rail数据集包括了1 094张有轨电车运行环境图片,选择全部图片进行目标隐身攻击,选择115张包含类别“car”和“bus”的目标进行目标定向攻击。Cityscapes数据集为由车载相机采集的德国真实城市道路图像数据集,选取了包含类别“car”和“bus”的404张图片进行实验。为减少计算消耗,将图像分辨率由2 048×1 024调整为1 024×512。软件测试环境为TensorFlow 1.13.1和Keras 2.2.4。硬件环境为Intel(R)Core(TM)i7-7800X CPU,3.50 GHz,32 GB内存,NVIDIA GeForce GTX 1080Ti 11GB。
2.2 目标隐身攻击实验结果
目标隐身攻击下的原始图像和对抗样本如图3所示。由图3可知,YOLO version3(YOLOv3)目标检测器能够有效识别原始图像中的目标。本方法生成的对抗样本导致YOLOv3目标检测器不能识别出目标(L2=0.2,L∞=0.05)。
图3 原始图像和目标隐身攻击下的对抗样本Fig.3 Original image and adversarial example under object invisible attacks
平均准确率(mean average precision,αmAP)指标通常被用作目标检测数据集的评价指标。为了进一步评估对抗效果,利用平均准确率指标进行2种数据集的效果验证。实验中交并比(intersection over union,IoU)阈值设置为0.5,目标置信度设置为0.5。同时,改写了攻击分类器的对抗样本算法CI-FGSM[26]和AI-FGSM[27],用于攻击YOLOv3目标检测器,并与本方法进行比较,如图4所示。实验结果表明,在YOLOv3目标检测器的目标隐身攻击中,本方法相比其他2种方法攻击效果更加明显。
为了综合评估本方法的攻击效果,利用峰值信噪比(peak signal-to-noise ratio,βPSNR)和结构相似性(structural similarity,γSSIM)指标进行图像相似度比较,如图5和图6所示。
由图4和图5可见:本方法的峰值信噪比与CIFGSM相近,但本方法保持了较高的攻击成功率;与AI-FGSM相比,本方法保持了较高的攻击成功率和较高的图像峰值信噪比。由图4和图6可见:L2范数攻击下结构相似性相近,同时本方法保持了较高的攻击成功率;L∞范数攻击下,虽然本方法的结构相似性有所降低,但是仍保持了较高的攻击成功率。综合来看,本方法更加有效。
图4 基于目标隐身攻击对抗样本的平均准确率Fig.4 Mean average precision of adversarial example under object invisible attacks
图5 原始图像与对抗样本的峰值信噪比Fig.5 Peak signal-to-noise ratio of original image and adversarial example
图6 原始图像与对抗样本的结构相似性Fig.6 Structural similarity of original image and adversarial example
2.3 目标定向攻击实验结果
原始图像和目标定向攻击下对抗样本图像如图7所示。由图7可知,YOLOv3目标检测器能够有效识别原始图像中出现的目标。本方法生成的对抗样本则导致YOLOv3目标检测器将原本类别为“car”的目标识别成了“bus”(L2=1.0,L∞=0.05)。
图7 原始图像和目标定向攻击下的对抗样本Fig.7 Original image and adversarial example under object targeted mis-detectable attacks
本方法对抗样本目标定向攻击是将原本类别为“car”的目标识别成了“bus”,因此利用类别“car”的识别召回率(recall rate,rRR)和类别“bus”的识别准确率(precision rate,pPR)指标进行对抗样本攻击效果的验证,如图8和图9所示。实验结果表明,与其他方法相比,本方法具有更好的攻击效果。
从图8~10可见,本方法与CI-FGSM和AIFGSM相比,峰值信噪比相近,同时本方法攻击效果较好。从图8、图9和图11可见:L2范数攻击下3种方法的结构相似性相近,同时本方法攻击效果较好;L∞范数攻击下,虽然本方法结构相似性有所降低,但是仍保持了较高的攻击成功率。因此,本方法更加有效。
图8 基于目标定向攻击的对抗样本召回率Fig.8 Recall rate of adversarial example under object targeted mis-detectable attacks
图9 基于目标定向攻击的对抗样本准确率Fig.9 Precision rate of adversarial example under object targeted mis-detectable attacks
图11 原始图像与对抗样本的结构相似性Fig.11 Structural similarity of original image and adversarial example
图10 原始图像与对抗样本的峰值信噪比Fig.10 Peak signal-to-noise ratio of original image and adversarial example
3 结语
针对YOLO目标检测器,提出了攻击效果更加全面的对抗样本生成方法。通过获取目标检测器的网络结构,设计对抗样本的损失函数,然后通过所提出的对抗样本生成方法获取对抗样本。在Rail数据集和Cityscapes数据集上进行了验证,表明该方法对YOLOv3目标检测器具有较高的攻击率,并且该方法能够实现目标隐身攻击和目标定向攻击。
作者贡献声明:
黄世泽:提出对抗样本生成研究方案,最终版本修订。
张肇鑫:具体程序设计实现。
董德存:基于车载环境感知的可靠性提出研究思路。
秦晋哲:算法的验证和对比。