论文地址:https://arxiv.org/pdf/2109.02613.pdf
虽然一些编码的特性可能对生成行动建议更有用,但之前的行动定位方法不包括任何注意机制,使定位子网络能够更多地关注更重要的特性。在本文中,我们提出了一种新的注意机制,类基于语义的注意(CSA),学习的语义分布动作类在一个输入视频找到编码特性的重要性分数,用于提供关注更有用的编码特性。我们的注意机制优于先前的自注意力模块,如动作检测任务中的squeeze-and-excitation。我们还观察到,我们的注意机制是这种自我注意模块的互补,当两者一起使用时,可以看到性能改善。
对于视频理解任务,学习良好的视频表示,学习对视频理解任务有用的相关编码特征是至关重要的。这些丰富的视频表示或编码的特征可以用来执行各种视频理解任务(例如,定位子网络可以使用这些特征来检测动作片段,等等)。之前关于卷积神经网络中的注意力的研究已经表明,关注更重要的特征通道或位置可以加速训练,通常可以提高网络性能。 尽管编码功能的重要性可能因不同的视频而有所不同,现有的动机来自于先前的工作,他们已经证明了通过注意机制改善了ConvNet的表现,此前并没有通过注意力机制来更加关注编码特征的动作定位网络。
将注意纳入编码特征,虽然以前没有被用于动作定位的convnet使用,可以用一些自注意力的方式很容易地实现,它们学习编码特征的相互依赖性,以估计特征的相对重要性。相比之下,我们提出了一种新的注意机制,该机制基于动作识别模型提取的类特定语义丰富的特征,这些特征用于动作定位网络中编码器的输入。我们使用这些特定类的语义丰富特性的基本原理是,编码特性的重要性分布可能取决于视频中包含的哪个动作类(或动作类)。对于动作定位任务,类-语义可以在不同的时间轴上发生变化,因为不同的动作类可以在不同的时间轴上出现。之前的工作是在全弱监督设置下(只有类级别的监督来学习动作的时间边界),使用类语义丰富的分类特征作为输入,并成功地推动了最先进的定位性能。这表明类语义特性包含了进行可靠的动作本地化的有用信息。为了从视频中时间变化的类语义中学习特征的重要性,我们的新注意机制共同从编码器输入特征的信道和时间轴中学习,并沿着编码特征的信道和时间轴提供注意。我们的注意机制是通用的,可以很容易地应用于之前的具有编码器和定位子网络的定位网络。
我们首先记录了一个通用的动作定位架构的布局,它包括一个预先训练好的动作识别卷积网络,在视频长度上等距分布的时间点(t∈{1,…,T})上提取类语义丰富的特征
R
i
,
t
R_{i,t}
Ri,t。动作定位ConvNet(由编码器和定位的子网络组成)以R作为输入进行训练,生成动作建议。
随着卷积网络的训练,编码器子网络学习编码类语义丰富的特征R到另一个更适合后续的动作定位任务的时间顺序特征F(例如生成建议的起始和结束时间点,并使用置信映射对起始和终点进行分组),定位子网络学习使用F来执行这些定位任务。
在这项工作中,我们使用了标准的动作识别、编码器和定位子网络,并且我们只关注F上的注意机制(如上图中粉色虚线所示)。
为了帮助定位子网络更多地关注对定位任务更有用的特征通道和时间位置,需要有一种注意机制,能够根据其对动作定位任务的有用程度或重要性来调整
F
i
,
t
F_{i,t}
Fi,t,为了缓解先前动作定位网络中缺乏输入自适应通道/时间注意机制的问题,我们提出了一个注意模块,该模块独立估计每个通道和时刻点的注意权值,并将它们独立应用于定位编码器子网络输出F.现在我们将详细讨论我们的注意力模块的设计:它的输入,它的联合学习框架,以及这个设计选择背后的基本原理,包括输入的选择和学习框架。
注意模块的输入:基于之前关于注意的工作,将注意应用于F的更直接的方法是使用F本身,类似于自注意框架,如SE块。F特征可能更有效地识别前景中的背景(已经接受过动作局部化训练),而R特征可能更有效地识别视频属于哪个动作类别/类别(已经接受过动作识别训练)。假设我们的通道/时间注意机制更依赖于动作类信息丰富的R特征,而不是前景/背景类信息丰富的F特征,R很可能是注意模块更好的输入选择。
从类语义和时间上下文中进行联合学习: 与以图像为输入的图像分类任务相比,动作定位任务的视频输入不仅具有不同时间点的类语义信息,而且这些类语义在时间轴上也存在变化。例如,视频中的“喝咖啡”动作片段之前可以是“烹饪”动作,然后是“洗碗”动作。因此,对R的局部时间理解可以提供关于哪个类语义在一个时间点上更占优势的指示。此外,由于边界检测是动作定位网络的一项重要任务,对这些类语义的变化的时间理解可以表明哪些时间位置对边界点更重要。
**注意力权重的计算:**注意权值由两个独立的注意模块计算,每个模块都有类语义丰富的R特征作为输入。每个注意模块(一个估计每个通道的注意权重,另一个估计持续时间点的注意权重)从R的局部时间变化中学习,以计算每个通道和每个时间点的注意权重。然后,我们将我们的通道和时间注意应用于F(或使定位子网络关注更重要的特征通道和时间位置,分别得到
F
A
C
F_{AC}
FAC和
F
A
T
F_{AT}
FAT)。最后,我们将
F
A
C
F_{AC}
FAC和
F
A
T
F_{AT}
FAT聚合,得到我们最终注意修改的编码器输出FA。接下来,我们将介绍注意模块的技术描述。
我们使用一个由一维卷积(核大小的k)组成的简单注意块,它简洁地从R的时间轴和通道轴共同学习。在时间轴上,这个一维卷积有一个大小为k的接受域,在通道轴上,它有一个大小为
C
i
n
C_{in}
Cin的接受域(或整个特征通道的长度)。因此,它可以同时从全局通道上下文和局部时间上下文中捕获可用的信息。请注意,我们的CSA注意力有两个注意模块:一个计算每个通道的注意,另一个计算永久时间点的注意。为了实现这一点,我们并行计算一个通道注意向量和一个时间注意向量,并为特定的通道时间输入位置分配权重。然后,我们通过一个简单的连接操作来执行后期融合。我们使用一个简单的投影层来缩小合成通道的输出数到类特征F的输出数,然后由定位子网络进行处理。
我们的时间注意块的输入是
R
C
i
n
×
T
R^{Cin×T}
RCin×T,其中Cin和T分别对应于输入通道数和时间点数。同样,让Cout表示输出通道的数量,F表示我们的注意机制会修改的编码器特征。我们的时间注意力的计算方法为:
在
y
T
y_T
yT之上有一个完全连接的层(用
f
C
T
f_{CT}
fCT表示)的s型映射,可以产生T维注意向量
A
T
A_T
AT。最后,利用编码器特征F的操作得到
F
A
T
F_{AT}
FAT、时间注意修正的编码器特征。另一种执行融合的方法是将时间和通道参与的特征添加在一起。然而,这导致了一种平均效应,减少了每个注意模块的贡献。
其中“;”表示连接操作符,FACout×T表示最终的编码器输出,由时间和通道注意机制调制。本地化子网使用此输出,并执行定位视频中所有单个动作所需的后续步骤。