计算机视觉领域的物理对抗攻防综述
Physically Adversarial Attacks and Defenses in Computer Vision: A Survey
http://arxiv.org/abs/2211.01671
摘要
攻击:主要从攻击任务,攻击形式,攻击方法几个角度进行展开
防御:主要从预处理、在线处理、后处理等几个角度展开
介绍
电子对抗攻击:PGD [86], MI-FGSM [35], C&W [16], Deepfool [92]
综述:
电子对抗攻防: [17] concludes digital attacks and defenses [3] sys-tematically reviews
对抗攻防2018以前:Akhtar et al. [2] review adversarial attacks and defenses
2020: Huang et al. [63]
物理对抗攻防:Wei et al. [131]
5种攻击任务,3种攻击方式,4种攻击方法
物理攻击
Since Kurakinet al. [70]首先提出物理攻击,本文涉及的攻击任务:人脸识别、自动驾驶、安全防护、远程探测
攻击任务
人脸识别
Sharif et al. [114]生成了一个对抗眼镜框,可以避免被本地的人脸检测系统识别到,Zhou et al. [155]提出了带有LED头灯的帽子,可以用于欺骗人脸识别系统。
sharif et al. [114]提出了一种通过查询系统API输出更新Patch的方法,发现找到patch的脆弱点极其重要。Wei et al. [132]开发了一种寻找重要点的方法,Guo et al. [133]提出了同时优化位置和扰动的方法,ANGs [113], Adv-Makeup [151], GenAP-DI [142]提出了扰动对抗样本数据生成器来提高模型的可转移性。
自动驾驶
交通信号识别: Lu et al. [85]提出了白盒交通信号检测的攻击,但扰动量太大。NatureAE [145]提出了自适应的掩码在像素级别约束扰动量。AdvCam [39]提出了自然的扰动量,既可以欺骗肉眼,又可以欺骗自动驾驶系统。Sitawarin et al. [117]提出在Billboard上添加扰动以欺骗检测系统。Zhong et al. [154]提出了利用添加阴影的方法。
交通灯识别:Patel et al. [97]提出了一种在微调阶段的物理投毒攻击,但无法在物理环境中实现。Zolfi et al. [158]提出了一种半透明的条框可以使相机光圈聚焦局部特征。
车辆识别:[152, 138, 122, 128]在虚拟环境下使用玩具车进行测试。UPC [62] (Universal perturbation camouflage)是一个白盒通用的针对目标检测的扰动生成框架,可以扰动RPN、分类器和回归器,适用于一阶和二阶的检测.Wang et al. [128]提出了一种双端注意力抑制的攻击算法,可以冷却热力图的关键位置点。Suryanto et al. [122]提出了可差分变换网络来训练对抗贴纸。
CAMOU [152] and ER [138]使用了黑盒基于查询的对抗攻击算法。Zhang et al.[152]设计了一种近似梯度网络来渲染对抗贴纸,Wu et al。[138] 使用离散搜索算法和扩大复制技巧在小贴纸上进行优化,然后扩展到大贴纸上。
车道线检测: Boloor et al. [11]提出了一个基于查询的对车道线模拟系统进行攻击的方法。Automated Lane Centering (ALC)是L2级别的自动驾驶技术,广泛应用在自动驾驶系统AutoPilot, NioPilo, and SuperCruise中。Sato et al. [111]提出了一个脏的贴纸以迷惑ALC系统,并达到了较高的准确率。单目深度预估Monocular Depth Estima-tion (MDE)是全视觉驾驶系统的重要辅助,能把2D构建成3D空间,Yamanaka et al. [146]利用优化算法攻击了深度预估值,[49]生成了连续的扰动贴纸,Cheng et al. [24]使用了一个可差分的mask生成了自然条件下贴纸。LiDAR perception是除了视觉以外的其他驾驶辅助系统,因此更难进行攻击,目前有两种物理攻击,一种是生成3D打印的对抗目标[125, 1],另外一种是扰动雷达[121, 78]。
安全监控
行人检测:分为可见光检测和红外检测。Thys [123]首先攻击了yolov2模型,Huang [62]提出了一个评估数据集AttackScene。[140, 144,
60, 61, 156, 157]研究了这种方法的可迁移性。Wu et al. [140] and Xu et al. [144]提出了可在衣服上打印的对抗贴纸。Hu et al.[61]提出了可剪切可折叠的对抗衣服贴纸。Zhu et al. [156]提出了可优化的一种黑白的织物板,在2D方向上同时优化高斯分布,相比与像素级更高效。Zhu et al.[157]提出了一种黑白的对抗贴纸块,用以构造一种类似与二维码的衣服。
行人重识别:行人重识别可用于安全监控领域,旨在匹配不同视角下的人物目标。Wang et al.[130]首先提出了针对行人重识别的物理攻击,他们使用了对抗衣服以及不同的角度和距离,并证明可迷惑60%以上的检测系统。
行人跟踪:行人跟踪比行人检测需要更快的响应速度,可以看做是为相似度匹配问题,[22, 147, 139]的工作都是在电子领域,Wiyatno and Xu[135]提出了一种大块的纹理作为遮挡背景板,但这种方法无法应用到户外。Ding et al.[33] 提出了Maximum Textural Discrepancy (MTD)以最大化模板图像和搜索图像的误差,并在STOA模型(SiamRPN++[75], SiamMask [129])上做了试验。
动作识别:动作识别以时间序列的图像作为输入,攻击者需要对图像进行逐帧进行攻击。Pony et al. [102]提出了一种通过LED扰动,而非对抗扰动的方法来扰动动作识别系统。
遥感图像
目标离相机较远,且图片质量无法保证。Czaja et al. [29]攻击了遥感图像分类器。Du et al. [37]首先实现了针对遥感图像的物理攻击,不仅在车顶放置了对抗样本,而且在车的四周放置了对抗样本和天气变化,但实验证明天气对遥感图像攻击并无影响。
其他
嵌入式智能体:Liu etal. [79]提出了针对嵌入式智能体的攻击,可以同时下降智能体视觉检测和文本回答的精度。
攻击范式
主要包括对抗贴纸、光学对抗攻击、3D打印的对抗物体等。
对抗补丁
对抗图像主要由mask和非mask的点乘积得到,具体公式如公式1.
无意义的对抗补丁:在真实世界对人类无意义的贴纸。TV loss(公式2)[120]用以优化图像间的平滑度,使图像看起来更顺滑。Sharif et al. [114]首先提出了不可打印的loss(公式3),用以约束不能打印的图像.[68, 98] 跟随 Adv-Glass’s [114]添加了TV loss,AdvHat [68]中证明了NPS在该攻击中无效,Pautov et al. [98]提出了基于灰度图的攻击,Nguyen et al. [95]提出将RGB转化为LAB图像进行处理。
有意义的对抗补丁:在真实世界对人类有意义的可见贴纸。Wei et al. [132]提出了优化卡通条的位置和角度来进行攻击。Zhong et al. [154]提出了一种对抗阴影可以达到95%以上的准确率。DAS [128]同时结合了有意义的图像和无意义的图像,使用有意义的图像转移注意力,使无意义的图像进行攻击。
光学对抗攻击
利用相机的成像原理和传感器特征进行攻击,可分为扰动对抗光照和扰动相机传感器。
对抗性光照:Nguyen et al. [95]提出了一种在人脸上的动态光照,并利用在人脸上的阴影进行对抗。Lovisotto et al. [83]提出了一种针对交通信号的短时光照,在STOA防御模型(SentiNet[26])上也能达到较高的攻击成功率。Gnanasambandam et al. [47]提出了一种根据梯度信息调整光照投影参数的方法,以生成对抗性的灯光样本。
扰动相机成像:利用成像原理扰动图像传感器。Phan et al. [100]提出了利用近似神经网络计算成像,并利用解决多用户优化问题来生成对抗扰动。Li et al. [77]提出了一个精心设计的半透明贴纸以对影响传感器,达到迷惑分类器的目的。Zolfi et al. [158]扩展了相机贴纸来迷惑检测器,使得自动驾驶系统将红灯识别为绿灯。
对抗3D打印
3D打印比2D更难优化,且计算量更大。
Tsai etal. [124]提出了一种在物理世界中的3D打印攻击方法,但在电子场景下生成的对抗样本在真实世界很容易受到各种干扰。Wen et al[134]Geometry-Aware Adversarial Attack重组了3D点云以生成对抗3D打印。
攻击方法
分白盒和黑盒攻击,白盒攻击更容易,但黑盒攻击更具有实用价值。
白盒攻击
分别介绍基于梯度的方法和基于优化的方法。
基于梯度的攻击:Singh et al. [116]提出了非线性的光照转换和PGD来生成对抗样本,但实用PGD方法必须建立可微分的模型,基于梯度的方法可以在白盒攻击上有很高的攻击成功率,并且在黑盒攻击上也具有一定的可转移性。
基于优化的攻击:基于梯度的攻击对对抗训练和蒸馏无效。CW攻击将模型优化视为一个盒优化问题。Eykholt et al. [43]基于CW添加了EOT和NPS,Yang et al. [149]使用了约束亮度和颜色的CW攻击方法,Pony et al. [102]提出了修改的CW loss,Tsai et al. [124]生成了对抗点云和真实可打印的对象,The Chamfer distance [44]利用了一个交叉方法计算了原始点阵和偏移点阵的距离。
黑盒攻击
分为基于查询的攻击和基于转移的攻击。
基于查询的攻击:允许获取模型的输出概率,但无法获取训练数据和训练模型。进化算法:Wei et al. [132]提出了一个与打印无关的只修改位置和角度的对抗条,因为变量是离散的,所以提出了基于进化的算法而非梯度的算法。Reinforcement learning:Guo et al. [133]提出了一个同时优化位置和扰动的强化学习框架,为了避免多次的查询,他们提出了自适应攻击步数和权重以减小参数空间。Particle swarm optimization(PSO):PSO是一个启发式的优化算法,Sharif et al. [114]使用了PSO来生成基于Face++查询的对抗样本,但无法攻击前三之外的人脸目标。zero-order optimization[18]是另外一个预估模型梯度的优化方法。贪心算法:Duan et al. [40]利用laser指针生成对抗的adversarial laser beam。
迁移攻击:攻击者知道部分训练数据,训练一个替代模型生成对抗迁移样本。融合攻击:[140, 144, 60, 156]提出了使用融合对抗攻击来生成对抗样本,并在多个模型上达到均衡的效果。Zhu et al. [156]将多个检测器的和作为融合loss,Wu et al. [140]提出了一个融合loss来帮助他们进行未训练检测器的融合。Xu et al. [144] 提出了最小最大化优化进行融合攻击。生成对抗样本:[48]提出了一个与真实分布相近的用于生成对抗图像的生成网络。Sharif et al. [113]首先提出了一个用于生成对抗贴纸的网络。Kong et al. [69]提出了PhysGAN用以生成在路边的对抗贴纸生成网络。Jan et al. [66]利用条件GAN来模拟电子到物理的对抗贴纸生成流程,Bai et al. [7]提出了一种由注意力图形成的脆弱位置点,并使用了一种由粗到细的方式生成通用扰动,并且在交通信号识别上具有很好的迁移性。
元攻击:元攻击可以通过设计一系列的攻击任务获得一个较好的初始攻击参数,Feng et al. [45]提出了一种类别无关和模型无关的元学习方法以生成鲁棒性的对抗模型,其可以生成由电子到物理攻击的转化,具体可分为两步:1.为生成模型进行元学习 2. 为不知名的任务进行微调,因此可以提高小样本学习和对抗样本的生成能力。Yin et al. [151]提出了使用元学习进行对抗生成器的元学习。
物理对抗防御
分为前处理、在线处理、后处理
前处理
分为图像补全和图像平滑
图像补全
[41, 51, 80]通过对抗样本和其补丁区域的不同生成定位到补丁区域,然后补全定位的区域,这样攻击效果就消失了。
Digital watermarking (DW) [56]使用了特征图的大小来检测异常区域,并把他们从后往前映射,SentiNet [26]利用梯度权重Gradient-weighted Class Activation Mapping方法来获取mask。SAC[80]和MR[87]利用分割技巧找到补丁的位置,使用了shape completer [80]和3×3 region voting [87]来进行补丁补全。TaintRadar [76]发现对抗区域和对应类别的排名具有强相关关系。
图像平滑
Randomized Smoothing [28]在对抗样本上添加了不同程度的高斯噪声,然后经过一个基础分类器进行分类,分类的投票结果将作为最终结果。(De)Randomized Smoothing [73]使用定宽的image ablation来生成平滑图像。Local Gradients Smoothing (LGS) [94]直接平滑了补丁区域,划分为了5x5的patch并使用滑动窗口来识别最高的激活区域。Demasked Smoothing [150]使用ZITS重构ablative image,用于图像分割领域。[104]发现对抗区域有更高的频域信息,所以提出了BlurNet用来过滤较高频域的激活。
在线处理
分为对抗训练、结构修改和可信鲁棒性。
对抗训练
[86, 49, 16]使用了对抗训练,Wu et al. [137]使用对抗训练来防御rectangular occlusion attacks。Rao et al. [105]发现仅使用对抗贴纸的位置不能完全防御位置优化的对抗攻击,因此使用四个方向以及随机位置的贴纸进行对抗训练。Meta-adversarial training (MAT) [88]则结合了对抗训练和元学习提高对抗生成模型的通用性。
修改架构
分为两部分:缩小感受野和引入新单元
缩小感受野:BagNet [12]替换了res50中的3x3卷积为1x1卷积,并从每个小图像中解析特征并计算生成贴纸的平均逻辑分数和结果,因此贴纸只存在于
小的感知野当中。Clipped BagNet [153] and PatchGuard [141]也全部使用bagNet作为backbone。PatchVote [64]使用了16x16的ViT模型在不同的贴纸上进行投票。
引入新的神经单元:Ad-YOLO [67]在目标检测系统中添加了patch类别,用于检测对抗patch类别。MultiBN [82]引入了动态的可学习的BN层来对抗多种类型的对抗视频,Han et al[54]提出了基于最重要的神经元提出鲁棒性放缩模型。RSA [93]提出通过鲁棒性回归机制来提高ViT模型的鲁棒性。Metzen et al[89]提出了BAGCERT defense通过一个区域打分器来进行分类图像。
可信鲁棒性
Interval Boundary Propagation (IBP) [50]首先提出了可信的鲁棒性用于电子防御领域。Chiang et al. [25]扩展了电子防御以适用于对抗贴纸。Cohen et al. [28]使用了随机平滑来保证在电子攻击的可信鲁棒性。Levine et al. [73] 提出了在反随机平滑的方法,在patch外的区域进行操作。Demasked Smoothing [150]提出了结合图像平滑和区域重构的方法来维持输入的可信度。BagNet是可信防御领域的重要模型,Clipped BagNet [153],PatchGuard [141],BAGCERT [89]都是在BagNet的基础上进行可信防御证明。PatchVote [64]是在Vit模型上进行可信防御,Salman et al. [110] and Chen et al. [23]分别在ViT上进行随机化平滑,并取得了性能上的提升。
后处理
Gurel et al. [53]结合了领域知识和增强机器学习pipeline(KEMLP),构建了因子图以构建模型输出和KEMLP之间的关系。Chen et al. [21]提出了基于Dropout的偏微分模型,只有当累加的阈值大于给定的值时,模型才给出最后的输出。
展望
以下几点仍具有挑战性:
- 物理对抗攻击的迁移性
- 鲁邦的物理对抗攻击
- 不被发现的物理对抗
- 自然的物理对抗
- 通用的物理攻击防御
- 高效的物理攻击防御
- 对抗防御间的均衡