摘要
对抗攻击在图像,音频,自然语言,patch以及像素级别的分类任务中都得到了很多的应用。但是对于视频目标追踪任务的对抗攻击研究还是比较少。这篇文章通过在线产生人眼很难感知的对抗扰动,从而使得追踪器可以产生不正确的追踪轨迹(无目标攻击UA),或者是产生特定的追踪轨迹(有目标攻击TA)。在最后的时候,作者通过适应FGSM,BIM和C&W算法从而提出了一个spatial-aware的攻击方法,并且全面的分析了这些攻击方法的表现。作者认为在线目标追踪有两个新的挑战:1)很难产生可以在连续的视频帧之间进行传递和转移的对抗扰动。2)实时的追踪器要求攻击过程必须要比较快。(所以这篇论文还是重点在于不可感知与实时性)为了解决这些挑战,作者提出了spatial-aware的在线增量攻击(下面就称作是SPARK)可以在线的实施时空稀疏增量扰动,从而可以使得对抗攻击不那么容易被感知到。除此之外,作为一个基于优化的方法,通过考虑到历史的增量扰动信息,SPARK可以很快的收敛到一个很小的loss损失值,使得这个方法可以比一般的攻击方法要更有效。通过在OTB100,VOT2018,UAV123,LaSOT数据集上对SOA追踪器算法的实验发现,SPARK可以在添加很小扰动的前提下成功实现UA和TA两种攻击。
Introduction
除了图像处理任务,目前也有很多人研究其他类型任务的对抗攻击,例如语音识别,自然语言处理,强化学习,动作识别和目标检测。单目标追踪(VOT)是需要对目标物体进行在线定位,并且确定目标物体的运动轨迹。(所以单目标追踪是不强调分类的,主要还是定位)下图中可以看到,绿色的是ground truth的轨迹,蓝色的是攻击的目标轨迹,攻击的目标就是为了让物体朝着目标轨迹移动。
对抗攻击可以使得车辆或者是UAV(无人机)可以产生不正确的感知结果,从而导航到危险的区域,甚至可以产生严重的交通事故。但是现在对目标追踪的对抗攻击的研究还比较少。目前的音频,自然语言以及视频分类都可以获得整个的序列数据,但是目标追踪处理的是一帧一帧的过来的视频帧。在当前帧t被攻击的时候,之前帧(1-t-1)都已经被分析了并且不能被改变。而且在当前帧被攻击的时候,之后的每一帧也是不能马上被攻击的。由于缺少实时的数据片段,并且场景一直是在变化的,所以很难产生可以在多个视频帧中进行转移的有效的对抗扰动。除此之外,目标追踪通常是需要依赖于从视频的第一帧图片中截取出来的template模板图片。不同的模板图片截取方式会导致不同的追踪结果,所以也使得对抗扰动的生成变得不是那么的有效。而且,目标追踪通常是要求实时的进行,所以,它要求攻击的过程必须要比较迅速,在下一帧图片到来之前就可以实现对当前视频帧的攻击。尽管基于梯度下降的方法(例如FGSM,BIM)都可以对图片分类器产生有效的攻击,但是它不能用于追踪攻击,因为在追踪的过程中视频帧可以很快的到达。
作者在本文中首先提出了一个可以适应现有的SOA攻击方法(FGSM,BIM,C&W)的spatial-aware的攻击手段,发现这种攻击方式不能适应目标追踪这类实时性的任务。因此,作者接下来又提出了一个spatial-aware online incremental attack(SPARK),可以在线的快速产生人眼不能感知的对抗扰动。
Contribution
(1)可以实现单目标追踪的有目标攻击和无目标攻击
(2)首先基于现有的攻击算法(FGSM,BIM,C&W)进行对目标追踪的攻击,之后又提出了可以实现实时攻击的SPARK。
(3)在攻击现在的SOA追踪算法SiamRPN++以及SiamDW的时候可以获得很好的攻击效果和实时性,并且可以迁移到现有的SiamRPN追踪器的变种上。(不知道这个迁移性是什么程度,后面再看)
Related Work
(1)VOT的定义
单目标追踪是对第一帧中指定的物体在之后每一帧中的位置进行定位。目前的SOA追踪器可以分成三个类别:基于相关滤波,基于分类和更新,基于Siamese网络。在这几种方法中,基于Siamese网络的追踪器可以离线的学习匹配模型,并且不需要更新参数,可以很好的平衡有效性和准确性。SiamRPN追踪器可以适应物体的宽高比变化,并且可以实现实时性的追踪。这篇文章中使用基于AlexNet,MobileNetv2和ResNet-50的SiamRPN++追踪算法,主要是出于如下几个考虑:1)SiamRPN++目前在很多工业中应用广泛,研究它有意义。2)相比较基于滤波的方法以及基于分类更新的方法,SiamRPN需要调节的超参数更少,更有利于实施对抗攻击。
(2)PAT介绍
当被追踪的物体出现在前面的时候,通过白盒攻击产生纹理对抗攻击可以使得GOTURN追踪器锁定在某一个纹理上。
Spatial-aware Online Adversarial Attack
(1)问题定义
这部分的公式有点多,直接把图片放上来吧。
对于UA(无目标攻击)来说,UA的目的是产生一个对抗样本,使得对抗样本下的追踪结果(也就是响应值最大的那个bounding box)和真实的ground truth结果之间的IOU值为0(我在想IOU值为0,这个攻击会不会太强了,一定要为0吗),相当于是使得攻击后的结果跟真实的框完全不重合。
对于TA(有目标攻击)来说,TA的目的是产生一个对抗样本,使得最终的响应值最大的bounding box的中心点的坐标落在pttrp_t^{tr}pttr?,也就是落在我们想要的目标位置。
(2)Basic Attack
首先提出一个基本的攻击模型,攻击的公式如下,minimize是为了使得添加的扰动尽可能小,约束条件是,无目标攻击的目标。
同时还定义了一个目标函数objective function,使得这个目标函数的值小于0(不理解这里为什么是小于0):
有目标攻击的攻击公式如下所示:
定义的目标函数如下所示:
为了实现这个基本的对抗攻击,需要使用FGSM,BIM以及C&W来优化(5)和(6)这两个目标函数(这个目标函数真的是没有看懂)。
(3)Empirical Study
下面通过实证研究来对上面的basic attack的结果进行evaluation评估,重点关注两个问题:一个是对每一帧实施basic attack的攻击效果如何;一个是单个视频帧对整个视频的影响如何。作者在一个SiamRPN-AlexNet上做实验。实验结果表明,使用基于BIM等的方法是很难将对抗扰动迁移到下一帧的。
BA-E:对每一个视频帧,都使用FGSM,BIM以及C&W来对于公式(6)分别进行优化。
BA-R:随机的选择一些视频帧,并且在这些视频帧上运用FGSM,BIM和C&W。我们会对第1帧和第10帧图片做basic attack,然后再使用第1帧中的peturbation扰动来修改和扭曲第2-9帧图片中的扰动。通过这种方法来看basic attack是不是可以在帧与帧之间进行迁移。
作者做了2个BA-R攻击。第一个BA-R攻击姑且被记作BA-R1,每一个视频帧都有0.1的概率值被攻击。第二个BA-R攻击姑且被记作是BA-R2,以10为间隔对于视频帧进行攻击,例如对1,11,21这些视频帧进行basic attack。通过对比BA-E,BA-R1和BA-R2这几个攻击方法,作者得出了这几个结论:1)虽然BA-E可以对每一帧图片都进行攻击,所以可以获得很高的攻击准确率,但是这种方法生成的对抗扰动是很大的,并且对每一帧图片都进行攻击的时间成本太高了,不能满足追踪器的实时性的要求。BA-R1和BA-R2虽然可以降低时间成本,但是牺牲了攻击准确率。
作者通过做这些实验,是为了说明一点,那就是使用传统的FGSM,BIM和C&W产生的对抗扰动是不能在帧与帧之间进行迁移的。所以不能使用传统的这些对图片的对抗攻击方法来对追踪器进行攻击。
(4)Online Incremental Attack(在线增量攻击)
通过上面的Empirical Study的研究,作者得出的结论是,我们不能直接对每一个视频帧进行攻击。因为视频中的相邻帧之间是很相似的,所以作者觉得可以在攻击当前帧的时候,利用到之前帧已经产生好的对抗扰动。一个比较直观的方法是在计算一个新的对抗扰动的时候添加之前的对抗扰动,但是这种方法容易对当前的对抗扰动产生一些distortion(扭曲)。所以为了解决这个distortion的问题,作者提出了spatial-aware online incremental attack(SPARK),可以产生不可感知的对抗扰动。SPARK的想法就是仍旧对单个帧进行攻击,但是会通过优化方法将之前帧产生的对抗扰动添加到当前帧。
UA也就是无目标攻击的优化函数如下所示,可以看到SPARK和之前的basic attack的区别就在于加了一项?\epsilon?(从而可以体现增量?但是这种想法会不会太容易想到了)。
作者也提到,可以将前面L-1个视频帧的增量扰动添加到当前视频帧。公式如下:
类似的,对于TA的公式如下,公式长得和UA也差不多。
作者使用sign gradient descent梯度下降算法来最小化两个目标函数9和12.在线最小化公式9和12是很有效的。首先,优化增量扰动等价于以Et?1E_{t-1}Et?1?作为初始点从而对EtE_tEt?进行优化。因为一个视频的相邻帧之间都是比较相似的,所以这种初始化的方式可以在比较少的迭代次数的基础上获得很好的对抗扰动。在攻击过程中,作者有如下发现:随着时间和空间的变换,增量扰动会逐渐变得稀疏(这里的稀疏是什么含义)。相比较BA攻击方法,本文的方法可以产生更加不可感知的扰动。而且SPARK方法可以在所有的视频帧上都获得比BA-E方法更高的攻击成功率。
对于TA有目标攻击的整个算法流程如下:
Discussion
(1)作者发现,攻击更深的模型比攻击较浅的模型要更难。因为模型一旦变得更加复杂,攻击就会变得更难。
(2)看一下这个实验结果,会发现其实作者的模型的攻击成功率是不算高的,最高的都只有78.9%。所以其实,虽然这篇论文是比较早提出来对单目标追踪的对抗攻击的,但是作为第一篇,并没有取得很好的效果。(之后是不是可以基于此做一些优化,从而提高攻击成功率)
(3)通过对公式9和公式12中的L进行调整,作者发现,随着L的增大,攻击的成功率也会随之上升。这个也是可以理解的,因为L表示的是当前帧用到了前面哪几帧的扰动信息,考虑到之前更多帧的信息,自然成功率也会上升。
(4)在实验的过程中发现,对于TA也就是有目标攻击的成功率要高于UA无目标攻击。
(5)OTB数据集中包含有11种干扰属性对应的11个子数据集。作者发现,BIM,FGSM,C&W这些算法在LR属性上的表现要更优。(不理解OTB数据集中的LR属性指的是啥)
(6)transferability不好,也就是说,一个追踪算法上训练得到的扰动不能很好的迁移到其他追踪算法上。
(7)作者做了一个实验,就是去掉模板T,来对追踪算法做攻击,来查看攻击效果。作者发现,去掉T,直接对每一帧运用SSD算法检测得到的结果作为目标物体模板,也可以取得很好的攻击效果。(但是这种实验有什么意义,没有get到)