2023-4-A-Review-of-Adversarial-Attacks-in-Computer-Vision
这篇是这篇综述的最后一个部分,讲对抗样本在目标检测和语义分割中的应用。
1 目标检测
尽管目标检测发展迅速,但最近的研究表明,目标检测在安全性上存在不足,容易被对抗性样本欺骗。
1 |
|
1.1 Two-stage network attack
DAG对两级网络RPN组件上生成的目标候选集进行攻击,为每个目标候选区域分配一个对抗标签,并执行梯度上升策略,直到候选区域被成功预测。它是目标检测中最经典的攻击方法之一,在实际攻击中,DAG的效果较好,但由于需要对每个候选盒进行迭代攻击,因此耗时较长。
Shapeshifter [28]是Chen等人提出的第一个针对Faster R-CNN的有针对性的攻击方法,借鉴了图像分类中的对抗性攻击方法CW和变换期望(EOT)。
停止符号攻击生成的对抗性样本成功欺骗了Faster R-CNN,但攻击需要以高成本修改整个停止符号。Li等人提出了一种对两阶段网络的RAP攻击。
在攻击中,通过设计一个分类损失和位置损失相结合的损失函数,与DAG方法相比,Li的方法利用目标检测的位置信息进行攻击,攻击方法新颖,但实际攻击新能力较一般,针对RPN的攻击机动性较差。
Zhang et al(Cap)在以往攻击方法的基础上,充分利用上下文信息,提取图像中目标对象的上下文信息并破坏这些区域,同时提高背景区域分值以增加攻击强度,在PASCAL VOC和MS COCO数据集上取得了较好的实验结果。
1.2 One-stage network attack
在一阶网络模型上,song等人收到图像分类中RP2的启发,在原始RP2中添加了一个额外的对抗损失函数,通过梯度下降法成功欺骗了YOLOV2检测器。
王通过对非最大值抑制进行攻击,使得yolo产生虚警漏报。
liao等在单机网络中寻找图像中重要像素,利用高层语义信息对检测器进行类别攻击。CenterNet模型被使用用来提取热谱图,其中得分大于阈值的像素点被定义为重要像素区域及其预测类别。在攻击过程中,对这些重要像素点进行攻击,使其偏离原始类别,得到的对抗样本不仅可以攻击无锚模型,还可以成功迁移到传统的一阶段和两阶段目标检测模型。
1.3 Both detectors can be attacked(两个探测器都可以被攻击)
UEA方法,来解决目标检测对抗样本时间开销大和迁移性差的问题,将GAN与高级分类损失和低级特征损失相结合,训练GAN生成对抗样本。实验证明,训练好的GAN网络能够实时生成对抗样本,实现了对视频的实时攻击,生成的对抗样本对单相网络中的SSD和YOLO具有较高的攻击成功率。
Wu提出了G-UAP模型。选择一批图片对数据集进行攻击,同时对每一张图片进行攻击,以及通过降低图片中前景物体的置信度,增加背景的置信度,可以得到相应的扰动,最后,所有的扰动被聚合为网络的特征图,这样我们就可以从这批图像中学习一般的扰动来欺骗更多的图像。
Chow提出一种迭代TOG方法,可以同时攻击两级和一级目标检测器,根据最终的攻击效果,TOG方法可以分为三类:目标消失,伪造标签,分类错误,在迭代生成过程中,通过对集合损失函数执行梯度下降直到攻击被成功或达到迭代次数。TOG对白色盒子的攻击成功率接近百分之百,但机动性差。
1.4 Local adversarial-jamming(局部对抗干扰)
Li等人首次提出了BPatch方法,用于对两阶段检测器进行局部对抗干扰攻击。在该方法中,通过在图像目标外的背景中添加干扰块来攻击目标检测器。BPatch也是对RPN(区域提议网络)的攻击,RPN是两相检测器的独特部分。由于RPN网络生成大量包含候选框的候选字段,下一阶段的网络将根据置信度为RPN网络排列候选框,置信度阈值以上的候选框被选择用于下一阶段的分类和位置回归。
BPatch提出了一种基于Re-RPN网络过滤机制的攻击方法,通过降低RPN层得到的高置信度候选框的置信度,使最终进入下一层网络的候选框中几乎不包含或不包含前景目标,从而实现对RPN网络过滤机制的攻击。
在图片中添加一个补丁,并将补丁视为GT(Ground Truth)复选框。反向传播导致网络直接优化补丁,使最终检测器受到补丁的影响,从而导致检测错误。
Wang等人[42]提出了一种粒子群优化目标检测黑箱攻击EA,它使用自然优化算法来引导干扰生成到位,但这种方法很耗时。
创建了一个对抗性块来欺骗YOLOv 2检测器,以便YOLOv 2检测器在人携带对抗性块后无法检测到人的存在。
2 语义分割
2.1 攻击性研究
作为分类的一种扩展,对抗性攻击也广泛应用于语义分割领域。
最先进的语义分割模型通常基于标准的图像分类体系,并由扩展卷积、专用池、跳过连接、条件随机场和/或多尺度处理、但它们对稳健性的影响从未被彻底研究过。
DAG是一种贪婪算法,它同时考虑所有目标,并通过简单地为每个目标指定一个对抗标签来优化整体损失函数,并迭代地执行梯度反向传播以获得累积扰动,但并不最小化考虑的范式的数量。为了解决这个问题,Cisse等人提出了针对包括语义分割在内的几个任务的Houdini attack。
这种方法的目标是最大化给定扰动预算的替代损失(即,对L∞范数的约束),因此不会产生最小扰动,并且通过直接制定针对组合不可行任务损失的对抗样本,可以实现欺骗任何基于梯度的学习机。
还有人通过优化目标损失生成了一个“对抗补丁”,这个小补丁可以使目标躲避对象的AI检测器。
还有人提出了一种基于EOT的攻击,该攻击使用CARLA驾驶模拟器来提高基于EOT的攻击在真实的3D环境中的可转移性。
还有人设计了一个可以攻击远离patch的图像区域的损失函数,它包含了几个不包含patch像素的独立的损失项,目的是逐渐将欺骗的重点从增加误分类像素的数量转移到增加对误分类像素的patch的对抗强度,以提高攻击者诱导像素误分类的能力。
还有人提出了一种分割攻击方法“segPGD”,实验结果表明其收敛速度更快,优于PGD。
2.2 鲁棒性研究
对对抗攻击下语义分割的鲁棒性研究也越来越多。
通过调用最后一个--Kurakin等人提出的一种可能的方法,并将像素中的每个像素误分类为最接近的类,以获得更自然的效果,以便分析如何对抗扰动影响语义分割。
有人通过“让网络产生固定的目标分割作为输出”和“除了删除指定的目标类之外保持分割恒定”来产生通用扰动,以使网络产生期望的目标分割作为输出,这可以以近乎任意的方式改变图像的语义分割。
有人通过使用端到端的生成模型而不是迭代算法来创建通用攻击和图像相关攻击,在生成和推理时间上有显着改善。
局部扰动是由噪声函数和中间变量间接产生的扰动,使像素的梯度无限传播。
上述工作大多使用FGSM [61] (Fast Gradient Sign Attack,快速梯度符号攻击)或其导数模型,这些模型提供了粗糙的鲁棒性评估,而不是最小化攻击。[62]提出了一种基于近似划分的白盒攻击,以产生L1、L2或L∞-范数较小的对抗扰动。该攻击可以通过扩充拉格朗日方法、自适应约束缩放和掩蔽策略来处理非凸最小化框架内的大量约束。
对于某些针对分类问题设计的对抗攻击,特别是那些不依赖于投射到估计决策边界的攻击(如DeepFool或FAB[63]),它们也可以应用于分割领域,如PGD、DDN[64]、FMN[65]、PDGD和PDPGD[66],以及ALMA [67],其中,PDPGD[66]虽然依赖于近似分区,但它使用AdaProx算法[68]。adaProx在计算近似算子时引入了梯度步长的尺度与步长不匹配的问题,该算法在非凸情况下的收敛性值得研究。
3 基于目标检测的对抗样本代码实现
暂未实现,等待更新。