《One-shot Adversarial Attacks on Visual Tracking with Dual Attention》论文笔记
这是cvpr20的一篇与对抗攻击相关的文章。
涉及的问题
深而学习虽在计算机视觉领地取得了辉煌成就,但其易受攻击性为众人所熟知.通过难以识别的小变化,即可使神经网络产生截然不同的推断结果.该文章探讨的问题在于:作者首次将其对抗攻击引入至视频目标追踪(VoT)领域.研究者致力于探索如何利用这些技术突破VoT领域的顶尖模型(SiAmRPN等).
与基于图像分类或目标检测的传统攻击方法不同,在对抗VOT模型时会遇到以下关键挑战:(1)由于VOT任务通常在线进行,在只知道第一帧的目标框位置而未知目标物体类别的情况下难以通过离线手段获得类级抗扰动;(2)尽管在分类任务中只需使次大概率值超过最大概率即可实现成功攻击,在跟踪任务中仅靠最大化次大置信度并不能导致跟踪失败因为像SiamRPN等网络需要多个锚框进行回归以获得精确的目标位置;(3)高斯窗口的影响体现在希望与ground truth最远的目标框仍能保持较高置信度但高斯窗口会在帧间限制这一目标框的置信度这显然存在矛盾
解决的方法
总体上而言,解决方法可划分为三个阶段:首先,在面对类别不确定性的挑战时,在每个视频的第一帧仅添加perturbation,并将其定义为one-shot攻击策略;其次,在攻击过程中所采用的目标函数由两个部分组成:一个是batch confidence损失函数(BC Loss),另一个是特征损失函数(Feature Loss)。BC Loss旨在降低高质量框(High-Quality Boxes)的置信度并提升低质量框(Low-Quality Boxes)的置信度;而Feature Loss则增强了攻击效果的具体表现,请参阅下文以获取详细信息。最后,在两种损失函数中引入了注意力机制以提高鲁棒性,并适当提升了模型性能。

该式代表的是batch confidence loss,在我们的目标下需要对其进行最小化处理。针对排名位于1-p范围内的高质量目标框(boxes),我们期望通过生成对抗样本z^{*}来减少这些框的质量损失;而对于排名处于最后r-q至q范围内的目标框,则希望通过生成对抗样本z^{*}来提升这些区域的目标框的质量表现(quality)。这一公式的适用条件是确保每个像素点上的扰动幅度均不超过预先设定的最大阈值\epsilon。

上式体现的是特征损失,在通过最小化该损失函数的过程中需要使干净输入z与对抗样本z^{*}之间的特征发生远离,在原始输入受到有限扰动的情况下实现这一目标能够使得攻击更加有效。

该方法在batch confidence loss的基础上引入了注意力机制。其中w代表注意力权重参数。由公式5可知,在优化过程中随着rank为I的框与其最高排名框之间的坐标差值减小而增加对应的权重系数。这一设计反映了不同boxes的重要性差异,并通过增加高质量boxes对应的惩罚项来实现对损失函数的有效优化。

feature loss的attention机制与batch-wise confidence loss极为相似,在各个通道上分配重要性权重系数。当w值较小时,则表示对应的损失较大,并且这种做法在区分各通道的重要性上具有一定的价值。具体而言,在第j个通道中,w值较小意味着该通道的均值与其最小通道均值之间的差距较小。

该dual-attention loss的具体计算公式如上所示,在实验中需要调节这两个超参数α和β。
算法的流程如下:

从视频的第一帧截取目标区域z后令初始对抗样本z^{*}等于初始目标框z并将干净的目标框输入VOT模型从而生成n个候选目标框按置信度对这n个候选框进行排序随后对系统进行100次迭代当某次迭代中置信度最高的候选框的位置超过上一次的位置时则提前终止循环;否则采用双注意力机制实施攻击
实验结果
作者在OTB100,LaSOT和GOT10K这三个数据集上进行了一系列实验:

上图所示的precision指标衡量的是box中心点与ground truth中心点之间的距离。如果这一距离超出20个像素,则判定为失败案例;而success rate则从scale层面进行评估,在candidate与ground truth重叠率低于设定阈值0.5时,则被视为失败案例。根据表格数据可知,在普通噪声条件下仅能带来个位数范围内的性能下降,在这种对抗攻击方法下却能造成几十个百分点的性能损失幅度显著提升

通过调整阈值进行的实验中(如图所示),这张图表能更直观地呈现经过对抗攻击后的模型性能变化。具体而言,在图一中(即第一张图表),当模型受到攻击时其precision指标出现了明显下降。值得注意的是,在极端情况下(如将阈值设为0),模型的表现会非常糟糕;而当阈值过大时则可能导致模型过于保守从而无法有效识别真实的攻击情况。类似地,在图二中也会出现相同的现象。因此,在选择合适的阈值时需要综合考虑其对模型性能的影响程度。

在LaSOT与GOT10K两个数据集上的结果也都一致,在我们利用Adversarial Attacks生成对抗样本时,并非仅仅只是单纯地添加噪声这一种方式;实际上这些对抗样本能够真正欺骗神经网络模型而导致其预测精度显著下降

上图展示了一个消融实验的结果分析过程,在该实验中我们观察到以下几点:首先,在对抗攻击场景下与普通噪声相比具有更高的抗扰动能力;其次,在引入注意力机制后能够略微提升分类精度;最后,在结合L1和L2两种损失函数的情况下取得了更好的性能表现。基于以上结果分析可知,在提升模型鲁棒性方面最优方案应为同时考虑两种损失函数并为其各自设计对应的注意力机制以进一步优化分类效果

文章优缺点
优点:基于VOT任务的本质设计了一种对抗攻击策略,在one-shot攻击中呈现出一种以不变应万变的特点。该方法仅在第一帧的patch区域进行扰动处理即可适应各类未知目标;作者主张不应仅使第二大的候选超过最大置信度分值(confidence),因为VOT任务要求多个候选标签共同回归到真实标签上。为此,在high-quality box和low-quality box之间分别采用了不同的损失函数进行优化,并将两者结合起来使用。其中batch confidence loss能够有效提升low-quality box的置信度使其超越high-quality box;而feature loss则旨在通过最小化输入数据的变化,在特征空间中增大两者之间的距离从而提升攻击效果。这种构思确实非常巧妙。
存疑:
(1)从我的角度来看,在注意力机制这一块儿有所提升的空间似乎不大。然而该方法可能导致一定的计算负担,并且其计算过程可能带来一定的时延问题。值得注意的是,在该机制被广泛应用于实际场景之前,默认假设其具有某种特性可能并不合理。此外,在实验环节中需要反复调整参数a、b、c等以达到最佳效果,在在线训练过程中感觉步骤较为繁琐;而在线训练过程涉及过多超参数(如a, b, c, α, β等)确实增加了复杂性
(2)在算法流程中提到,在某一轮攻击迭代的过程中(即某一次攻击迭代的时候),如果此时排在第一位的box(即rank 1的box)在其索引位置上对应的尾巴概率值低于p,则认为此次迭代应终止。进一步地,在满足上述条件下加入额外约束可能有助于提升效果(个人认为再加一个限制条件有可能会更好),即在该索引位置上的尾巴概率值不仅低于p,在该时刻该box还应属于low-quality类别的情况。这是否能带来更好的效果仍需进一步验证。
