读论文:Seeing isn’t Believing: Towards More Robust Adversarial Attack Against Real World Object Detectors — CCS2019
【说真的,这是我第一次写文章,完全不会用啊,大哥!!!!!!】
Part Ⅰ: Abstract & Introduction
这篇论文主要讲的是 物理世界对抗样本,在开头Abstract 和 Introduction部分,作者主要为了阐明攻击 object detector( in real world ) 和 攻击 images classifier( in digital world )的区别,也论证了在物理层面上实现对抗样本的攻击是更难以实现的,因为有着诸多的约束:
1.target object 与 detector的 相对位置(角度、距离等)会时刻发生改变
2target object 所在的环境条件(背景、光线等)会时刻发生变化
3.受攻击的模型是 object detector,是dynamic,不像images detector,是static。
4.detector在作出分类预测之前,还需要检测whether there is an object。
针对以上所述,作者提出了两种AEs
Part Ⅱ:Attack approach – HA
FIR(feature-interference reinforcement)
To generate AEs, most of the existing studies design an objective function or a loss function to minimize the di#erence between the deep learning model’s prediction value and the expected value. Since object detectors extract the high-dimensional features of the object and give predictions based on those extracted features, AEs can be enhanced by perturbing the original object’s features “earlier” in the hidden layers (i.e., before the output layer).
在DNN中间有着许多隐藏层,作者通过在设置object function,对比原始图片和加了噪声图片的在隐藏层中的提出出来的feature map 之差,来optimize 噪声。
Step ①:输入 原始图片x 和 加入噪声的图片x’,激活DNN中间隐藏层
Step ②:分别提取x和x’ 的中间隐藏层,并且提取target object所在那个区域的那一部分,记为Qn和Q’n
Step ③:将提取出来的Qn和Q’n平均池化得到feature vector,v 和 v’
Step ④:用作者设计的loss function去measure两者的difference
ERG(enhance realistic constrains generation)
the existing works is not enough. The reason is that we observed that object detectors have a certain “knowledge” to the background of the object and the object semantic. This “knowledge” make detectors be sensitive to the relationship of the object and different background as well as the object semantic integrity. More precisely, the former means whether the object is in the reasonable environment and whether this object is in the reasonable position, while the latter means whether the object appears to be in reasonable integrity.
作者想法很简单,要想使得生成的对抗样本在物理世界中更加鲁棒更加有效,那么在生成对抗样本的过程中,就应该
尽可能地去模拟拟合现实环境。而且要攻击object detector,就要更加知道它的习性。知己知彼,百战百胜。
所以作者主要做了两件事情:
1.把target object放在一个reasonable的环境中攻击,如在Google上搜路边的照片,把路标p在照片里去进行攻击
2.p也要p真一点,要把杆子pole给加上去
这么做的动机来源于object detector对于背景和语义之间有相关的认识:
1.由于detector在训练的时候,物体是包含在背景里面的,所以detector多少会学到跟背景相关的至少,如这个物体和这个背景是一个固定搭配等等
2.同时detector对于对于物体的完整性也会敏感,比如 没有杆子的悬空的路标、没有轮胎悬空的车辆都会觉得wired。
对比EOT(Expection over Transformation)算法去拟合真实环境,作者认为在现实情况中是远远不够的。因为其即使在生成AEs的过程中加入了图片翻转等操作,其在现实中距离和角度的有效范围都不高;二是没有考虑到语义相关性和语义合理性的问题。
Part Ⅲ:Attack approach – AA
nested-AE 嵌套对抗样本
作者受到的启发来源于 YOLO-v1,2 到 YOLO-v3 的过渡。远的物体看起来更小,近的物体看起来更大。于是YOLO-v3在设计的过程中use more than one scales(e.g., three scales for YOLO v3: big, medium, and small scale) to measure the scope of the objects,只要物体从这三个尺度任意一个尺度被检测到,就算是检测成功。同时,作者通过对比三种尺度,发现在“远距离”“小物体”上更容易攻击模型(针对AA),因为这样,在同一张照片上,物体占更少的pixels。在这里我的理解是,因为AA是要把一个人眼看上去不像STOP的的路标欺骗detector让它以为是个STOP。如果凑太近的话,让它看得太清楚,不就骗不了它了吗?就好像我们总会有这样的经历:
走在路上,看到很远的地方,有个很美很美的人儿,你以为这就是你心目中的梦中女神(男神),然后在好奇心的驱使下,你越走越近,直到你看清她的样子,才发现,噢,就这。嗯,大概就是这么一个画面。
作者也拿它制作的 AA对抗样本 做了实验,整如上面提到的,一个物体,在近的时候看起来比较大,在远的时候看起来比较小。
在实验过程中,在远的时候,整个对抗样本都被detector识别出来,就是那个框框框住了整个对抗样本。但是在近距离的时候,
可能是让detector看得太清楚了,它并没有把整个对抗样本都识别成STOP路标,而是把这个假STOP路标中的某一块当成了STOP,
也是就说,除了中间的那一块,对抗样本其他四周的部位基本对于detector来说是没用的。这也印证了刚刚上面说到的:小的
物体更容易欺骗detector(AA),因为它看得不清楚。我的理解是这样的。
我们再来仔细观察一下作者提供的AA对抗样本:不知道你们有没有感觉,反正我看的时候,我就
觉得这个路标像是 一圈套着一圈,一圈套着一圈,一个STOP里面还有一个STOP,一个STOP里
面还有一个STOP
。如果不懂的话可以 看看右边的图,那个是我通过几次截屏得到的一个我桌面的
嵌套图片。所以这也解释得通为什么在近距离的时候,detector只截取了这个对抗样本中间的一小
部分,因为中间的一小部分又相当于一个小的STOP,所以就被欺骗了
。公式嘛…其实不太想写,其实就两个吧
Part Ⅲ:Attack approach – Style-customized AEs
这里主要想讲讲那个 Shape-controlled AE, 我觉得这个还是比较有意思的。作者的思路就是生成一个特定形状的对抗样本,比如心形啊,苹果形啊。
作者设置生成AE的方程为 Xadv + P * Mask,然后呢,那个Mask就是一个和X相同维度的01矩阵,然后在这个矩阵里面,形状所在的地方为1,其余地方为0,然后这样把这个方程代入生成的过程中,生成出来的对抗样本就是特定的形状。有点类似于这种。
Part Ⅳ:实验结果分析
1.从数据结果上看
对于这个结果我讲一下自己的见解,阴天的成功率大于晴天我觉得有很大一部分原因是因为在晴天的时候由于太阳光的照射导致对抗贴纸上的一些色彩发生了变化,可能变得过于鲜艳或者怎样,然后达不到数字图像上模拟出来的效果,这也是物理对抗一个难点,因为无可避免的环境因素的干扰。
而至于HA上,wide angle > narrow 是因为对于原始情况(原始路标,原始正常的detector)来说,到了一个离路标很宽的角度,detector看到的路标本来就已经是变形的,所以识别出来的成功率也不高,如果再加上对抗贴纸的话,成功率就更低了。而对于AA来说,也是同样的道理,到了一个很宽的角度,本来要识别出来的成功率都不高了,你要想一个fake路标appear出来,也是不容易的,所以对于AA来说 wide < narrow
在distance上,对于HA来说,long > short也是必然的,在远距离的情况下,detector看到的路标本来就很小,要识别出来也是很考验能力的,所以HA的成功率自然高,如果凑得很近,那么detector就看得清楚,识别出来的成功率会高,那么对抗攻击的成功率就自然低了。而对于AA来说,凑得比较近,detector就看得比较清楚,那么攻击它的成功率就会高。
2.作者在第五部分Discussion中讨论了语义合理性和语义完整性的影响
其实这里我看了好久好久,真的看了好久好久,我一直没搞懂,作者展示出来的数据,明明是在不合理的情况下的攻击率会更高,在不完整的情况下攻击率也会更高,但是为什么作者在ERG的时候就强调要把target object放在一个合理的background中,并且要给它加个杆保证其完整性。
我最后给了自己一个解释就是:
对于背景合理性问题:放在不合理的背景中(室内),由于detector会对object和background之间的relationship比较敏感,所以当在一个室内环境下,detector就会在它曾经训练过程中记下的室内物体中进行搜索,而不是更倾向于把它看作一个在户外的路标。
对于完整性的问题,同样的,detector看到一个没有腿儿的路标,可能会把它看作是一个烙饼或者碟子。emmm,我觉得解释有点牵强,但是,我也想不到更好的解释了。
Part Ⅴ:Potential Defence
作者归纳出三种主流的防御方法:
1.去除噪声法;2.对抗训练网络法;3.用GAN去训练网络使得能够识别哪些是真哪些是假
但是说白了,对抗训练和GAN的过程是一样的。所以我觉得第二点和第三点基本都差不多,然而,第二第三点都有个局限性,攻击者同样地可以设置新的攻击方法产生新的perturbation去绕过这些防御。而对于第一种,第一种去除噪声法只针对那种像散沙一般的噪声,所以也没什么用。但是如果能把perturbation给破坏掉,使其失去完整性,说不定可以达到防御的效果。
Part Ⅵ:最后附一张脑图吧
虽然我知道,一般脑图都不会看的哈哈哈哈,所以我放在最后面了。怎么说呢
这是我这周看 CCS2019 Seeing isn’t Believing整理的笔记以及个人的一些见解
总体来说,这篇文章能发在CCS其含金量毋庸置疑,我最大的感受是,作者在提出攻击方法的时候其实也不是提出很厉害的像CW-attack那样的攻击算法,而是通过仔细观察真实物理情况和数字图像上的不同,在加上针对object detector的弱点作出相对的操作。其实这是我第二次看这篇论文,感觉前几个月第一次看的时候只看了皮毛。当然现在还是会有些地方不太懂,后面更多的是需要和别人讨论。
还有就是,其实我是习惯在oneNote上做笔记的,但是呢,在陈一一的驱使下我尝试了写一下博客,实在是太多不会了,什么设置字体大小,插入公式,调整表格,我太难了,等假期有空再来美化一下吧,欢迎评论区讨论噢。
来源:oschina
链接:https://my.oschina.net/u/4399202/blog/4867994