目标检测的稀疏对抗攻击,代码已开源

题目:Sparse Adversarial Attack to Object Detection

论文: https://arxiv.org/pdf/2012.13692v1.pdf

代码: https://github.com/THUrssq/Tianchi04.

引言

该论文的出处是阿里天池大赛中安全AI挑战者计划第四期的通用目标检测对抗攻击。阿里的安全AI挑战者计划是一系列关于AI安全的竞赛,到目前为止球200多所高校100多家企业的近4000支队伍参加,主要目的是抵御未来AI面临的各种安全问题。阿里天池论坛的学习氛围很好,很多优秀的战队很详细的分享了在本次比赛的方法和代码,感兴趣的可以学习一下。

题目赛况

因为该论文是根植于比赛,所以需要先对本次比赛的题目和评价指标介绍一下,尤其是评价指标有些复杂需要对其详细介绍,这样才能更容易理解论文中实验结果。

赛题简介

阿里天池安全AI挑战者计划第四期比赛针对 通用的目标检测模型 进行攻击,比赛采用COCO数据集,其中包含20类物体。任务是通过向原始图像中添加对抗补丁(adversarial patch)的方式,使得典型的目标检测模型不能够检测到图像中的物体,绕过目标定位。主办方选取了4个近期的State-of-the-art检测模型作为攻击目标,包括两个白盒模型YOLO v4和Faster RCNN和另外两个未知的黑盒模型。

评价指标

一张图像中对抗贴图的像素值大小和位置没有任何限制,只会限制贴图的尺寸。评估是使用原始图像减去修改后的图像,得到修改域,然后,计算修改域中连通域的数量和每个连通域的大小。一个连通域被视为一个添加的对抗贴图,对抗贴图有两点限制:

  1. 限制了改变的像素数量在总像素中的比率,不超过全图所有像素的2%。

  2. 限制了对抗贴图的数量不多于10个,当检测到对抗贴图的数量超过10个。

对抗贴图使得图像输入到模型后,所有目标都无法被检测到,采用方评价得分方式为:

其中5000表示最大修改像素数量( 因为限制1中要求像素改变量不超过全图中的2%,所以有500x500x2%=5000 ),是第个对抗贴图的面积,是干净样本的图像,是对抗图像,是表示第个模型(共四个模型),表示模型检测图像返回的检测框的数量(检测框越少得分越高),最后的得分是所有的图像在4个模型( 两个白盒模型YOLO v4 和Faster RCNN 和两个未知的黑盒模型 )上的总得分:

从总得分的公式可以推知,如果一个FinalScore的得分越高,则攻击的效果越好,这是一个正相关关系的评价指标。

论文方法介绍

作者提出一个针对目标检测器的稀疏对抗性攻击(SAA),作者集成了两个现成的目标检测器,并在黑盒攻击有很强迁移性,所以该方法可以很容易地推广到多模型中去。如下图所示,为本文的SAA框架,它集成了两个目标检测器(一阶段目标检测器YOLOv4和二阶段目标检测器FasterRCNN)来进行攻击。为了使用有限的像素进行强大的对抗性攻击,作者特意设计了对抗补丁的位置、形状和大小。

有关Patch的设计

因为比赛的要求比较严格,图像的修改范围不超过整个图像的2%,所以这种对抗扰动在空间中是稀疏的。针对这些情况,作者设计了一种 十字形贴图 ,其交点位于物体包围盒的中心( 如下图所示为添加十字形贴图的对抗样本 )。利用大跨度的patch 可以严重地误导目标检测器的结果,但是确只有很少的像素变化。作者基于物体中心是对抗攻击的脆弱区域的假设,提出了如下目标检测器的输入公式如下:

其中,这里代表干净的图像,代表对抗的补丁,是故意设计的Mask。

损失函数

SAA的目标是消除图像中所有的物体检测框,该攻击与目标检测器的正样本(前景)和负样本(背景)的定义密切相关。作者通过使图像中的一个物体成为目标探测器的负样本来消除它。根据目标探测器前景和背景的定义作者设计了相关的损失函数。

YOLOv4是一阶段目标检测器 ,YOLOv4利用置信度去区分图像的前景和背景。置信度低于YOLOv4中的阈值的包围框将被识别为背景,并将在后处理阶段丢弃。基于这些原理作者设计的YOLOv的损失函数为:

其中表示所有对象类别的集合,表示所有边界框的集合,conf是YOLOv4中的对象置信度。损失函数提取图像的最大目标置信度。作者通过降低置信度从而来达到攻击的目的。

FasterRCNN是两阶段目标检测器 ,作者通过增加背景的softmax输出概率,同时减少任何其他类别(前景对象)的softmax输出概率来实现攻击,但是FasterRCNN通常会产生10 万多个区域提案,是YOLOv4的10倍以上。大量的区域建议使其难以消除所有目标与极其有限的攻击。因此作者做出相应的妥协,设计了FasterRCNN的损失函数为:

其中,和是超参数,表示所有对象的集合类,表示所有边界框的集合,是设计的元素的个数。

作者结合了两个目标检测器的损失来训练对抗补丁,最终损失函数如下所示:

实验结果

作者从MSCOCO2017数据集中选择1000张图像,所有图像大小为500*500。选取YOLOv4和FasterRCNN作为目标模型。根据section 2.2中介绍的评价指标,实验结果如下所示:

论文中没有给出该方法的总得分,可以直观的算出FinalScore为:

我搜索了一下第四期通用目标检测对抗攻击的榜单,可以发现本文的作者是来自于清华大学的队伍,在此类竞赛的排名中荣获TOP4的好名次。如下图所示的红框中的“ 我还有机会吗 ”就是本文作者的战队。

END

备注:对抗

对抗学习交流群

扫码备注拉你入群。

我爱计算机视觉

微信号:aicvml

QQ群:805388940

微博知乎:@我爱计算机视觉

投稿:amos@52cv.net

网站:www.52cv.net

在看,让更多人看到