齐嘉豪,张 宇,万鹏程,李远哲,刘星月,姚爱欢,钟 平*
(1. 国防科技大学 ATR重点实验室,长沙 410073; 2. 安徽工业大学 计算机科学与技术学院,安徽 马鞍山 243032)
随着深度学习理论研究的不断发展创新,计算机视觉领域相关技术也日益成熟,在军事和民用领域都得到广泛开发与应用。然而,深度学习技术在帮助计算视觉系统拥有令人瞩目性能时,也为其留下可被攻击的系统漏洞。对抗攻击(Adversarial Attack)是近年来深度学习领域一个新兴的研究热点,其致力于研究如何利用深度学习算法弊端对深度视觉系统进行攻击。研究结果表明,可在输入中加上特殊扰动以达到欺骗深度视觉系统的目的,并且上述扰动通常难以被人眼所察觉。对抗攻击算法研究在智能安防、无人化作战等方面都具有重要的理论和实践意义,也是提升深度视觉系统鲁棒性和稳定性不可或缺的关键因素。
对抗攻击算法研究起源于图像分类工作,FGSM,DeepFool,C&W等都是经典的图像分类对抗攻击算法。作为计算视觉领域的重要组成,目标检测也属于对抗攻击算法主要的应用对象。相较于分类问题,目标检测算法因其复杂的实现机制而更难以进行攻击。根据检测算法实现方式不同,可将现有目标检测对抗攻击研究工作大致分为两类。
第一类算法主要对基于先验框的目标检测方法进行对抗攻击。此类算法利用检测网络先对候选区域进行分类再生成先验框的工作机制,通过生成伪标签和反向传播算法来生成对抗样本。Xie等提出一种名为密集对抗生成(Dense Adversary Generation, DAG)的白盒攻击算法。该算法以Faster-RCNN为攻击对象,先将检测器RPN网络输出中关于分类信息的张量全部设为“0”以保证所有候选框都会被分类为背景区域,再利用优化算法修改输入图像像素点以生成对抗样本。
第二类算法主要用于攻击基于回归方法的目标检测器。此类算法将目标检测算法视为一个复杂的回归器,先通过固定回归器输出的形式去篡改对应的输入特征,再同样利用优化算法去修改输入图像像素点取值以生成对抗样本。Chow等根据上述研究思路,针对单阶段检测框架设计了基于目标特性的梯度攻击算法。该方法以不同方式固定检测器特征金字塔结构的输出,进而构造出不同类型的回归损失函数,并结合FGSM算法进行对抗样本生成。
现有目标识别对抗研究工作大多是针对自然场景下的可见光图像,针对遥感图像目标检测器,Du等通过梯度优化算法设计具有物理可实现性的对抗扰动,并将扰动打印后放在车顶或者车的周围,能够显著降低车辆检测模型的效率。然而,现有研究工作并不能在遥感场景下取得显著的攻击效果,上述现象的出现主要有两个原因。首先,如图1所示,不同于自然场景下的可见光遥感图像,红外遥感图像中的目标通常表现出尺度小、能量弱等特征。第二,现有目标对抗识别攻击算法自身无论在攻击性能或是执行效率方面都还存在较大的改进空间。因此,想要将目标识别对抗技术成功应用于红外遥感领域,还存在如下亟需解决的问题:
图1 遥感图像目标尺度特性对比Fig.1 Comparison of remote sensing image target size characteristics
(1) 红外图像只存在单通道且所包含目标尺度过小,不利于进行特征提取,进而难以获取到攻击算法所需的目标纹理信息和空间位置信息。
(2) 现有目标攻击对抗算法多为全局扰动算法,但目标在红外遥感图像中通常只占据小部分区域。在背景区域所产的扰动通常不会对攻击效果产生增益,反而会大幅增加生成对抗样本所需的扰动量,不利于物理实现。
(3) 基于梯度和优化算法的攻击方式需要根据图像特性进行在线训练调整,而检测器大量的网络参数会导致攻击算法效率极其低下,难以实现实时攻击。
为解决上述问题,本文提出一种基于生成机制的目标攻击对抗算法。首先,针对现有算法生成对抗样本效率低问题,利用生成式对抗网络(Generative Adversarial Networks,GAN)进行对抗样本生成。GAN网络可以通过网络训练过程预先构建输入图像与扰动样本之间的函数映射关系,在应用阶段无须再对不同输入做出调整,实现真正意义上的“即插即用”。同时,为克服红外遥感图像中存在的小目标问题,使用变感受野的空洞卷积构建并行多通道特征金字塔网络作为骨干网络,并引入注意力机制用于进一步改变骨干网络获取目标特征的方式,重点关注与检测结果相关的重要目标特征,实现对小目标特征的细粒度提取。最后,考虑到背景区域存在无意义扰动攻击,本文算法以检测器检测结果为引导进行热力图生成,用于表征不同空间位置处像素点对检测结果的影响程度大小,再根据上述热力图生成掩膜对扰动信号进行滤波处理,突出放大有意义(目标区域)扰动并抑制较小无意义(背景区域)扰动,提高攻击算法的物理可实现性。
对抗生成攻击(Adversarial Generation Attack)是深度对抗学习领域的重要研究分支,其将GAN网络作为主体用于设计深度学习对抗算法。
在对抗生成攻击算法被提出之前,大多数攻击算法都是基于梯度和优化算法进行实现的。上述攻击算法存在的最大问题是需要反复调用被攻击网路结构和网络参数,导致算法执行效率低下且迁移性差。此外,这些对抗算法多以对抗样本与原始样本之间距离度量(例如欧式距离)为约束去限制算法所产生的扰动量。但是,距离度量约束下所生成的对抗样本通常不够逼真,即容易被视觉系统所察觉而不具有良好的隐蔽性。
为解决上述问题,对抗生成攻击算法将扰动生成问题转换成网络参数学习问题,让模型学会根据输入图像特征自适应地生成扰动信息。对抗生成攻击算法的大致流程为:首先,对输入图像进行特征提取,并将特征作为生成器输入用于生成扰动。其次,将扰动添加到输入图像以产生对抗样本,并将对抗样本分别输入到判决器和被攻击模型中用于计算相似性损失和攻击损失。其中,相似性损失用于度量对抗样本与原始图像间的差异性,而攻击损失则是在衡量对抗样本对模型的攻击效能。最后,将相似性损失和攻击损失同时作为目标函数,利用梯度反向传播算法实现对网络模型参数的学习与训练。
从实现原理角度进行分析,攻击损失本质上是以对抗样本对模型造成的性能损失为引导,让生成器自适应地调整自身网络参数以生成更具欺骗性的攻击扰动; 而相似度损失则是教会生成器如何在庞大扰动向量空间中挑选出最难以被视觉系统发现的扰动信息。相比于距离度量约束,将GAN网络判断器输出作为相似性损失而产生的对抗样本往往更容易欺骗视觉系统。此外,由于生成对抗算法通过网络参数构建出输入图像与生成扰动之间的映射关系,在实际应用中只需要通过简单的前向推断即可实现对抗样本生成,无须进行在线训练,大幅度提升了对抗样本的生成效率。
对抗生成攻击算法通常由生成器、判决器和被攻击网络模型构成,如图2所示。
图2 对抗生成攻击算法框架Fig.2 Framework of adversarial generation attack algorithm
假设输入图像向量⊆是生成器网络的输入,通过前向传播后,可生成扰动(); 将扰动()附加到输入图像上,得到生成对抗样本()+,将对抗样本分别输入到判决器网络和待攻击网络中。其中,判决器网络会根据输入图像特征判断其是真实图像还是生成图像,并返回一个真实性得分(()+)。需要注意的是,判决器网络本质上是特殊的二分类网络,其输出结果()的物理含义为输入图像属于生成图像的概率。同时,当对抗样本()+输入到待攻击模型中时,可借助样本标签计算出生成对抗样本对待攻击模型造成的性能损失。为保证生成扰动不易被视觉系统所捕获到,还需要对生成器输出的扰动量加以限制。最后,只要利用优化算法对所有网络参数进行调整以最小化上述损失函数,即可完成对抗生成攻击网络模型的训练。
注意力机制(Attention Mechanism)是近年来深度学习领域又一项重大突破,起源于人类视觉对外界感知的特殊方式。研究表明,人眼视觉系统在接收外界信息时,会有意识地重点关注部分感兴趣信息而忽略其他无关信息,进而变相地实现图像信息筛选过滤,保证能够发掘出所关注事物更为细致的特征,这就是视觉系统注意力机制。
深度学习的研究通常离不开海量训练数据的支撑,大数据在提升算法性能的同时会因冗余性成为算法的瓶颈上限。而注意机制则是一种良好的数据筛选方式,以算法所实现任务为导向从众多数据中挑选出有用的关键信息。于是,在计算机视觉领域,注意力机制已经被广泛应用于图像分类、目标检测和语义分割等实际任务中。
自注意力机制网络结构本质上是不同类型卷积网络的非线性再组合,属于复合的卷积神经网络,如图3所示。与传统卷积神经网络不同的是,自注意力机制网络模块会根据后续任务的需要自适应地进行感受野调整,保证尽可能多地提取到图像中的关键目标特征。由于对图像特征的高敏感性,自注意力机制也被用于解决遥感场景下目标检测任务中的小目标问题。
图3 自注意力机制结构示意图Fig.3 Illustration of self-attention framework
在深度学习算法中,骨干网络是凝练并提取输入图像重要语义信息的关键所在。图像深度特征提取操作本质上是重复且有目的地对图像进行下采样处理,则越深层次的深度特征感受野越大,但空间分辨率却越低。然而,传统深度学习算法通常会对卷积层的输出再次进行池化处理,而高层特征图在池化处理后会因自身空间分辨率过低而丢失大量细节信息,使得检测模型无法获取到小目标相关特征,最终导致模型检测精度降低。
解决上述问题最直观的方法就是增大特征图感受野后不再进行池化处理。空洞卷积(Dilated Convolution)是一种能够同时提高特征图空间分辨率和感受野的特殊网络结构。不同于传统卷积操作,空洞卷积通常采用稀疏卷积核进行深度特征提取。如图4所示,稀疏卷积核是传统卷积核的一种变体,相当于在传统卷积核算子间注入空洞以实现对感受野的扩张,通常用卷积算子间的间隔个数表示空洞卷积的稀疏程度,记作空洞率(Dilated Rate)。根据图4不难发现,扩张前后卷积核所执行的有效运算并未发生改变,但是卷积核的感受野却在成倍增长,因此,空洞卷积被应用于改进目标检测算法以提高其对小尺度目标的检测性能。
图4 空洞卷积结构示意图Fig.4 Structure of dilated convolution
为了对红外遥感图像目标检测算法进行快速、有效的攻击,提出一种新型目标识别对抗算法,算法整体流程如图5所示。
图5 目标识别对抗算法流程图Fig.5 Flow chart of adversarial attack algorithm for object detection
算法整体可大致分为五个关键步骤:首先,多通道自注意力机制生成器会根据输入图像特征生成相应的全局扰动; 同时,热力图生成网络则会根据待攻击检测器对输入图像的检测结果构建空间位置热力图; 之后,将热力图作为滤波器对生成扰动进行局部筛选,并将筛选结果附加到输入图像上生成对抗样本; 接着,再将生成的对抗样本作为判决器网络和待攻击检测器的输入,分别计算出该样本的相似性损失和检测器性能损失; 最后,将上述两种损失以及对抗样本扰动量大小一同作为目标函数,通过优化算法进行网络参数调优。
在对抗生成攻击算法中,生成器是产生对抗样本的关键网络结构,会对输入图像进行深度特征提取,并以此生成图像所对应的扰动信息。考虑到红外遥感图像中目标的小尺度特性和稀疏性,引入自注意力机制和空洞卷积,设计图6所示的多通道自注意力机制生成器。
图6 多通道自注意力机制生成器Fig.6 Multi-channel self-attention generator
在生成器网络中,输入图像首先被连续的卷积池化层处理得到中层语义特征。考虑到原始输入图像中具有较多的背景冗余信息,同时,为了进一步减小网络结构的参数量,在低层次语义信息获取时依旧选择经典的卷积池化网络。假设输入图像向量为⊆,则生成器中第个卷积层的输出()为
(1)
式中:()和()分别为第个卷积层的网络权重向量和偏置向量; *为卷积运算;为激活函数,在本文算法中将所有激活函数设定为Relu。为尽可能多地获取到小尺度目标的深度特征,算法在卷积池化层后加入了注意机制模块。若将注意力机制网络所产生的注意力图记为,则加入注意力机制后的深度图像特征可表示为
(2)
式中:⊙为Hadamard乘积。此外,被检测目标尺度在遥感场景下会发生较为剧烈的变化,即遥感图像中可能会包含各种尺度的待检测目标。为保证所生成扰动具有目标尺度变化适应性,算法在最后一个卷积层中用空洞卷积替代卷积池化操作,并通过改变卷积核的空洞率得到感受野大小不同的空洞卷积,用于并行获取不同空间分辨率的高层语义特征。最后,将所有高层语义特征展平后连接在一起作为全连接层的输入,而全连接层网络则会将其映射为生成扰动()。
在4.1节中,生成器会产生大小与输入图像相同的生成扰动()。然而,在遥感图像中待检测目标通常只占据整幅图像的小部分区域,因此,可以认为()中大部分区域的扰动均是无效扰动。而无效扰动的存在,会导致对抗样本扰动量增加且物理可实现性降低。
为解决上述问题,设计了一种基于热力图的生成扰动滤波器。如图7所示,热力图是深度学习中重要的可视化手段,通常用于描述输入图像或者深度特征图中不同区域对算法输出结果的影响,为深度学习可解释性分析提供了重要的结果支撑。
图7 基于目标检测结果的热力图Fig.7 Heat map for target detection result
(3)
进一步对式(3)进行求和处理,计算出特征图整体对检测器输出结果的影响系数:
(4)
之后,将特征提取网络最后一层中所包含特征图,以其影响系数为权重进行线性加权,再通过非线性变换即可产生热力图():
(5)
研究中,可以根据输入图像的深度特征生成只存在局部扰动的对抗样本,但并没有给出评价生成算法性能具体指标。因此,从目标识别对抗实际需求出发,设计一种多标准损失函数以评价生成算法性能,并以此为目标函数对生成网络参数进行学习调优。
(6)
式中:E(·)为关于变量的交叉熵损失。
至于对抗样本与输入图像间的相似性,GAN网络自带的判决器就可以较好地做出判断,则由此可以得到相似性损失函数l的计算方法为
(7)
考虑到判决器只是从图像真伪性方面对扰动进行限制,并没有直接限制其数值大小,所以还需要加入改进后的hinge损失作为改动量损失l:
(8)
式中:为人为设定的扰动量阈值。结合上述分析可得到识别对抗算法最终的目标函数为
l=l+l+l
(9)
最后,算法以最小化目标函数l为引导,结合优化算法对网络参数进行学习调整以适应所给出的训练数据集。而在实际应用中,式(9)中的,和都属于需要人为进行设置的超参数,在本文实验中上述3个参数分别被设置为0.1,0.05和0.01。
以第三届“空天杯”全国创新创意大赛复赛所公布数据集为训练样本进行对比分析实验。
实验中所用数据集源自于不同遥感场景下的多段不同红外视频序列。通过对视频序列进行采样,得到1 000张红外遥感图像作为训练数据集。数据集包含了多个不同复杂背景环境,例如街道、大桥、居民楼和十字路口等。每张图像的尺寸为480×480个像素点,包含1~20不等个数的目标,其中每个目标占据整张图像的比例在1%~3%,属于典型的小尺度目标。
实验中利用分层抽样方法进行数据划分,分别对每段红外视频序列进行随机分层抽样,从1 000图像中选取700张图片作为实验训练集,剩下的300张图像作为实验测试集。
5.2.1 算法性能评价指标
在目标检测问题中,常见的3个性能评价指标分别为精确率(Precision)、召回率(Recall)以及平均精度(Average Precision,AP)。实验中,因为只有车辆一类目标,所以将作为衡量目标检测器性能下降程度的指标。本质上是Precision-Recall曲线与轴正半轴和轴正半轴共同围成的面积,其计算公式为
(10)
式中:为Precision-Recall曲线。
5.2.2 实验环境设置
为更好地展示出本文所提算法的性能优势,选取 TOG和SAA两个目标识别对抗算法进行对比分析,所有算法将YOLOv5作为待攻击网络。
关于对比实验环境,所有算法都利用Python3.8和深度框架Pytorch1.7.0进行编写,并在Windows10系统中运行。硬件平台组成分别为Intel(R) Core (TM) i9-10920X处理器,64 GB运行内存以及显存为24 GB的NVIDIA GeForce RTX 3090。
从定性分析和定量分析两个角度展示相关实验结果。首先从定性分析角度展示,图8中包含部分测试数据的相关结果。不难看出,本文提出的算法在使用最少扰动量的前提条件下取得了最好的攻击效果。此外,从图8(c)中所描述的扰动可以看出,相较于对比算法,本文算法所产生的扰动仅在目标上增加了一部分深色斑块状扰动,故攻击前后图片在人眼感知层面差异不大且无突兀失真之感,更具有物理可实现性。
图8 部分实验结果展示Fig.8 Illustration of partial experimental results
此外,攻击成功率、时间复杂度和扰动量是算法重要的性能数值化指标,可进行定量测试分析。首先分析攻击成功率,将100,200,300张测试图像作为待攻击图像,遍历所有攻击算法生成的对抗样本,再由YOLOv5进行检测并记录其所对应的值,如表1所示。
表1 不同攻击算法攻击成功率对比结果
由表1可知,本文算法在所有实验条件下都取得了最优的攻击成功率,并使得检测器的值均值小于0.02,即在大多数场景下检测不出任何车辆目标。
进一步对算法效率进行分析,在测试集中选取300张图像进行攻击并记录其不同算法所需时间。上述过程重复100次,将100次攻击的最小耗时、最大耗时和平均耗时作为算法效率对比的依据,具体结果如表2所示。
表2 不同攻击算法效率对比结果Table 2 Comparison of different attack algorithms effectiveness
由表2可知,本文算法的最小耗时、最大耗时和平均耗时均明显低于TOG和SAA算法,这是由于TOG和SAA利用检测结果和检测器网络结构进行攻击,需要对检测网络的正反向求导过程进行多次循环迭代才能达到较好的攻击效果。而本文算法,由于已经通过训练集建立了输入图像与生成样本的映射关系,在测试阶段只需对图像特征进行提取即可生成相应的对抗样本,不存在循环迭代的过程。
对抗样本迁移性是判断攻击算法是否具有实际应用价值的重要参考指标之一。为验证攻击算法在单检测器网络上的攻击迁移性,利用训练数据重新训练常见的目标检测器网络YOLOv3,Faster-RCNN,YOLOv5作为攻击对象,并将测试集中300张图像全部作为攻击对象,将所对应的值作为性能对比依据,结果如表3所示。
表3 不同攻击算法迁移性对比结果Table 3 Comparison of transferability for different attack algorithms
由表3可知,本文算法在不同的单检测器上均取得显著攻击效果,其中,YOLOv5检测网络值小于0.1; 同时,相较于对比攻击算法而言,本文算法在所有目标检测算法上均造成最大检测性能损失,说明其具有良好的单检测器迁移性。
综上所述,本文所提出的识别对抗攻击算法能够通过尽可能少的对抗扰动对目标检测器取得显著的攻击效果,相较于现有主流目标识别对抗算法,在对抗样本物理可实现性、迁移性和生成速度(即算法执行效率)方面都具有明显的优势。因此,可以认为本文所提算法具有良好的应用前景。
本文提出了一种全新的红外遥感图像对抗攻击算法,成功地克服了红外遥感场景中存在的目标尺度小、背景攻击扰动无意义、对抗样本生成效率低等问题。首先,利用对抗生成思想设计了一种全新对抗网络拓扑结构以改善对抗样本的生成效率; 之后,基于深度学习相关研究工作对检测器特征提取网络结构进行修改,使得对抗生成算法具有挖掘小尺度目标特征的能力,能够对遥感场景下各种尺度的目标实现有效攻击; 最后,结合热力图设计扰动滤波器以消除无意义的干扰,保证算法生成的对抗扰动更具物理可实现性。实验结果表明,与现阶段主流对抗算法相比,本文所提算法在目标攻击成功率及算法执行效率上都有着明显的性能优势; 此外,本文还进一步研究了所提算法的可迁移性,相关实验结果表明,生成的对抗样本在非攻击检测器上也能取得理想的攻击效果。在未来的研究工作中,将探索如何在红外遥感场景下生成更有物理可实现性的对抗样本。