标题:MoLo:运动增强的长短对比学习用于少样本动作识别
目录
摘要
当前最先进的少样本动作识别方法是通过对学习到的视觉特征进行帧级匹配来实现的。然而,它们通常存在两个局限性:1)由于缺乏强制长时间感知的引导,局部帧之间的匹配过程往往不准确;II)显性运动学习通常被忽略,导致部分信息丢失。为了解决这些问题,我们开发了一种运动增强长-短对比学习(MoLo)方法,该方法包含两个关键组件,包括一个长-短对比目标和一个运动自动解码器。具体来说,长-短对比的目标是通过最大化它们与属于同一类视频的全局标记的一致性,赋予局部帧特征长形式的时间感知。运动自解码器是一种轻量级的结构,用于从差分特征重构像素运动,它显式地嵌入了运动动力学网络。通过这种方法,MoLo可以同时学习远程时间背景和运动线索,以进行全面的少样本匹配。为了证明其有效性,我们在五个标准基准上对MoLo进行了评估,结果表明MoLo优于最近的先进方法。源代码可从https://github.com/alibaba-mmai-research/MoLo获得。
1.介绍
最近,动作识别取得了显著进展,并在许多应用领域展现了广阔的前景。尽管如此,这些成功很大程度上依赖于大量手动数据注释,这极大地限制了对未见类别的可扩展性,因为获取大规模标记样本的成本很高。为了减轻对大量数据的依赖,少样本动作识别是一个有前景的方向,旨在利用极少量的标记视频识别新类别。
大多数主流的少样本动作识别方法采用度量学习策略,学习将视频映射到适当的特征空间,然后执行对齐度量以预测查询标签。通常,OTAM利用深度网络提取视频特征,并明确估计有序的时间对齐路径来匹配两个视频的帧。HyRSM提出探索跨视频的任务特定语义相关性,并设计了一个双向的平均豪斯多夫度量(Bi-MHM)来对齐帧。尽管这些工作取得了显著的成果,但仍存在两个限制:首先,现有的标准度量学习技术主要关注局部帧级别的对齐,并被认为受到限制,因为基本的全局信息没有明确参与。如图1所示,局部帧级别的度量很容易受到共存的相似视频帧的影响。我们认为,如果局部帧(单张帧)特征能够预测少样本分类中的全局上下文(附近多张帧),那么实现准确匹配将会有益;其次,动作动态在视频理解领域被广泛认为是至关重要的[6, 22, 25, 42, 50, 70],而现有的少样本方法并未明确探索帧间丰富的运动线索用于匹配过程,导致性能次优。在文献中,传统的动作识别工作通过将光流或帧差输入到额外的深度网络中来引入运动信息,这会导致不少的计算开销。因此,应该引入一种高效的运动补偿方法来实现全面的少样本匹配。
受上述观察启发,我们开发了一种运动增强的长短对比学习(MoLo)方法,以共同建模全局上下文信息和运动动态。更具体地说,为了将全局上下文明确集成到局部匹配过程中,我们应用了长短对比目标,强制特征帧预测属于同一类别的视频的全局上下文。对于运动补偿,我们设计了一个运动自解码器,通过重构像素运动(例如,帧差)来明确提取帧表示之间的运动特征。通过这种方式,我们提出的MoLo方法能够有效地和全面地利用时间上下文依赖和运动线索,以实现准确的少样本动作识别。在多个广泛使用的基准测试上的实验结果表明,我们的MoLo优于其他先进的少样本技术,并达到了最先进的性能水平。
总的来说,我们的贡献可以总结如下:(1) 我们提出了一种新颖的MoLo方法用于少样本动作识别,旨在更好地利用全局上下文和运动动态。(2) 我们进一步设计了长短对比目标,以增强局部帧特征以感知全面的全局信息,并设计了一个运动自解码器来明确提取运动线索。(3) 我们在五个广泛使用的基准测试中进行了大量实验,以验证所提出的MoLo的有效性。结果表明,MoLo明显优于基线,并实现了最先进的性能。
2.相关工作
在本节中,我们将简要回顾与本文密切相关的工作,包括少样本图像分类、运动学习和少样本动作识别。
少样本图像分类。仅使用少量标签识别未见类别,称为少样本学习[13],是计算机视觉中的一个重要研究方向。现有的少样本学习技术通常可以分为三类:基于增强、梯度优化和度量方法。基于增强的方法通常学习生成样本以缓解数据稀缺困境,主要包括产生额外训练样本[7,17,52,77]和对抗生成[34,82]。梯度优化方法[14,23,36,48,49,51]试图修改网络优化过程,使得模型可以快速微调到接近最优点。例如,MAML[14]显式地训练网络的参数,以在当前任务上通过少量梯度步骤产生良好的泛化性能。度量方法[54]被广泛采用,利用视觉编码器将图像映射到嵌入空间并学习相似性函数。这类方法通常通过欧氏距离[43,54,76,80]、余弦距离[47,61]和可学习的度量[16,56,78]进行少样本匹配来对查询样本进行分类。我们的算法也属于度量方法的范畴,但侧重于利用时间上下文和运动信息进行准确的少样本动作识别。
运动学习。如何高效地学习视频中的运动线索是社区中广泛研究的问题。先前的方法通常利用光流[45,53,62,63,69,70,87]或帧差[31,66,84]来明确注入视频动态线索用于动作识别。由于光流的高采集成本[2,20,32]以及提取运动特征需要额外网络的需求[5,67],近期的方法开始研究如何仅使用原始帧输入提取运动特征并取得了良好的结果[9,12,24,25,29,30,60,64,65]。在本文中,我们也专注于使用原始帧提取运动信息。与以往方法不同的是,在我们的MoLo中,运动特征用于促进视频对齐,并且我们设计了一个运动自解码器,学习恢复帧差以明确提取运动动态,而无需多个单独的网络。
少样本动作识别。与图像相比,视频包含更丰富的时空上下文交互和时间变化。现有的少样本动作识别方法主要属于基于度量的元学习范式,以在时间上匹配帧,因其简单性和有效性被广泛使用。其中,CMN提出了一种记忆结构和多显著性算法,将可变长度的视频序列编码为固定大小的矩阵表示进行视频匹配。OTAM设计了一种可微分的动态时间扭曲算法来在时间上对齐两个视频序列。ARN基于3D骨干结构来捕获长范围的时间依赖性并学习置换不变表示。TRX采用注意机制将每个查询子序列与支持集中的所有子序列进行对齐,然后融合它们的匹配分数进行分类。ITANet和STRM引入了联合时空建模技术以实现稳健的少样本匹配。HyRSM和MTFAN强调学习任务特定特征的重要性。Nguyen等人和Huang利用多个相似性函数来准确比较视频。尽管这些方法表现出显著的性能,但大多数方法通常局限于局部匹配,没有明确考虑时间上下文信息和运动线索。
3. 方法
在本节中,我们首先介绍少样本动作识别任务的问题设置。然后,我们将详细阐述所提出的MoLo方法。
3.1. 问题定义
给定一个训练集 和一个测试集
,通常我们会在训练集上训练一个深度网络,然后在测试集上验证性能。传统的监督学习任务假设训练和测试样本共享相同的类别集合,即
。相比之下,少样本动作识别的目标是在测试期间仅使用少量样本识别未见类别,即
,并验证训练模型的泛化能力。我们遵循之前的方法,采用基于情节的元学习策略来优化网络。在每个情节中,有一个支持集 S,其中包含 N 个类别和每类包含 K 个视频(称为 N-way K-shot 任务),以及一个查询集 Q ,包含待分类的查询样本。期望少样本动作识别模型学习在支持集的指导下为查询集中的视频预测标签。对于推断,将在测试集上随机抽样大量情节任务,并使用平均准确率来报告学习模型的少样本性能。
3.2. MoLo
总体架构
我们的框架概述如图2所示。为了清晰描述,我们以N路1次采样任务为例来说明我们的方法。在一个N路1次采样的情节任务中,支持集 包含N个视频样本,其中
,T是为获取视频表示而稀疏采样的视频帧数。给定一个查询视频
,目标是将q准确地分类为支持集中的一个类别。与之前的方法类似[4,74],我们首先采用深度特征提取网络[19]来对视频进行编码,将视频编码为特征序列。因此,我们可以获得支持特征
和查询特征
,其中
,
,C是通道数。随后,将获得的特征输入到一个带有长短对比目标的基础头部进行帧匹配。同时,为了明确提取运动信息进行少样本匹配,我们还设计了一个运动自解码器来重构帧差,然后将结果输入到一个类似于基础头部的运动头部中的运动特征。基于上述两个头部的输出匹配分数,我们可以将它们合并用于查询分类。
图2. 提出的MoLo方法概览。给定支持和查询视频,我们首先利用特征提取器对帧特征进行编码。随后,我们将这些帧特征输入到基础头部中,执行支持-查询帧级度量,并应用长-短对比目标来在匹配过程中提高时间上下文意识。此外,我们使用运动自解码器来恢复像素运动,即帧差,然后将获得的运动特征输入到类似于基础头部的运动头部中进行少样本匹配。最后,通过融合两个头部的匹配结果来对查询视频进行分类。为了方便说明,少样本任务中的其他支持视频没有显示在图中。
补充:
运动自解码器的作用:通过将特征差异通过解码器重构得到帧差异,将帧差异与原始的帧进行
损失,从而优化特征差异生成器中的参数,进而使得特征差异生成器能够更好的捕捉运动信息。
长短对比目标
给定特征和
,我们在空间维度进行全局平均池化以将其折叠。然后,我们在视频特征序列中添加一个可学习的标记,并将特征发送到一个用于时间信息聚合的时间Transformer。我们将输出特征表示为
。该过程可以表述为:
其中,是时间Transformer,
是跨视频共享的可学习标记,
表示位置嵌入来编码相对位置关系。值得注意的是,可学习标记用于自适应地聚合全局信息,之前的方法也已经证明了这种方式的有效性。这样,与可学习标记对应的输出特征
具有全局表示能力。然后,我们展示了如何利用标记特征的全局属性进行稳健的视频匹配。
大多数现有方法[4,74,83]通常基于帧级别的对齐度量来对查询视频样本 进行分类,可以表示为:
其中,是帧级别的度量,如OTAM [4] 和 Bi-MHM [74]。然而,上述度量仅考虑了局部帧级别,忽视了在匹配过程中明确增强特征帧的全局感知能力。直觉上,如果两个视频属于同一类别,则一个视频的全局特征与另一个视频的帧特征之间的距离会比其他不同类别的视频更近。我们认为全局上下文对于局部帧级别匹配至关重要,特别是在存在相似的共存帧的情况下。为此,我们利用基于 [39] 的长短对比损失来提高帧特征的全局上下文意识:
其中,是查询特征,
是情节任务中与查询相同类别的视频表示,
是属于其他类别的负样本。以上损失函数旨在最大化所有正配对相似性分数的总和,并最小化所有负配对相似性分数的总和。通过这种方式,我们明确强制局部特征感知全局时间上下文,实现更强健的少样本帧对齐。
长短对比目标:
①长指的是可学习标签可以自适应的聚合全局信息(多个帧的信息);短指的查询集和支持集中帧与帧之间的对齐度量(局部信息)。
②时间Transformer可以建模时间上的长短关联。(在时间转换器中,通过学习注意力权重来动态地分配每个时间步长的注意力,以此来捕获序列中不同时间点之间的相关性。这样,模型就可以在时间维度上对序列数据进行有效的建模,从而理解长短时序关系,为准确的视频匹配提供支持。)
图3. 提出的运动自解码器的架构细节,包括特征差异生成器和解码器。(a)特征差异生成器在3D卷积后计算相邻视频帧之间的特征差异,以提取运动信息。(b)解码器包括堆叠多个上采样操作以重构帧差异。
运动自解码器
为了进一步将运动信息纳入少样本匹配过程中,我们设计了一个运动自解码器,由特征差异生成器和解码器组成。运动自解码器通过在帧特征之间操作来显式提取运动特征。具体来说,我们修改了[25]中的差分算子以生成特征差异,如图3(a)所示。公式表达如下:
其中, 表示特征差异生成器,
是输出的运动特征。通过上述特征差异生成器,我们直观地获得了帧之间的运动特征。为了进一步显式监督运动特征生成,受到 MAE [18] 的启发,我们设计了一个解码器(图3(b)),来重构像素运动动态。随后,我们将获得的运动特征输入到具有长-短对比目标的运动头部进行视频匹配。与基础头部类似,在运动头部中,我们首先采用空间全局平均池化运动特征,并连接一个可学习的标记,然后将它们输入到一个时间Transformer进行时间建模。我们将运动头部的结果特征表示为
。对于局部匹配,我们对这些特征应用帧级别的度量:
其中, 是支持运动特征
和查询运动特征
之间的距离。类似于
,我们还对运动特征应用损失
。
我们将支持和查询视频之间的距离表示为基础头部和运动头部获得的距离的加权和:
其中,是一个平衡系数,
表示基础头部中经过时间Transformer的输出特征序列,
表示运动头部中经过时间Transformer的输出特征序列。然后,我们可以将输出的支持-查询距离用作分类的logits(指分类模型的输出层之前的未经过 softmax 函数处理的原始输出,在分类任务中,logits 可以被解释为表示每个类别的得分或概率)。在训练过程中,整体框架是端到端训练的,最终的损失可以表示为:
其中,是基于真实标签的支持-查询距离的交叉熵损失,
和
是平衡因子,
表示重构帧差异的L2损失,LLG是对基础头部和运动头部中的长短对比损失。对于少样本推理,我们可以利用方程6中支持-查询视频对的距离值,根据最近邻规则[54]对查询样本进行分类,并且解码器可以被丢弃。
4. 实验
在本节中,我们首先在第4.1节介绍了我们的 MoLo 的实验设置,然后在第4.2节将我们的方法与以前的最新方法在多个常用基准数据集上进行比较。最后,在第4.3节提供了对 MoLo 的全面剖析研究,以展示每个模块的有效性。
4.1. 数据集和实验设置
数据集。我们的实验在五个常用的少样本数据集上进行,包括 SSv2-Full [15]、SSv2-Small [15]、Kinetics [5]、UCF101 [55] 和 HMDB51 [28]。对于 SSv2-Full 和 SSv2-Small,我们遵循了 [4] 和 [88] 中的分割设置,从原始数据集 [15] 中随机选择了 64 个类作为训练集,24 个类作为测试集。SSv2-Full 和 SSv2-Small 的区别在于前者包含了每个类别的所有样本,而后者每个类别选择了100个样本。在少样本设置中使用的 Kinetics 也是原始数据集 [5] 的子集。UCF101 数据集包含 101 个动作类别,我们采用了 [74, 79, 81] 中的少样本分割方式。对于 HMDB51 [28],常见的做法是将 31 个类用于训练,10 个类用于测试。
实现细节。为了与现有方法 [4, 44, 88] 进行公平比较,我们的方法采用了在 ImageNet [10] 上预训练的 ResNet-50 [19] 作为基础特征提取器,并移除了最后的全局平均池化层,以保留空间动态信息。我们采用 Adam [26] 对我们的 MoLo 进行端到端的优化,并像 [33, 38, 74, 83] 中一样应用辅助语义损失来稳定训练过程。与之前的方法 [4, 44] 类似,我们均匀稀疏采样了8帧,即 T = 8,以获取整个视频的表示。我们还在训练阶段实现了标准的数据增强,例如随机裁剪和颜色抖动,并且在少样本测试时,从每个帧的中心裁剪了一个 224 × 224 的区域。对于许多样本的推断(例如,5-shot),我们简单地采用了平均原型范式 [54] 来对查询视频样本进行分类。为了评估每个基准数据集上的少样本性能,我们从测试集中随机构建了 10,000 个 episodes,并报告了平均分类准确率。
4.2. 与最先进方法的比较
我们在 SSV2-Full 和 Kinetics 数据集上,根据 5-way K-shot 设置中 K 的变化(从 1 到 5),将 MoLo 的性能与现有最先进方法进行了比较。如表1所示,我们采用了两种常用的对齐度量来验证我们框架的有效性,即 OTAM [4] 和 Bi-MHM [74]。从结果中,我们可以观察到以下情况:(1)基于 Bi-MHM,我们的 MoLo 在不同的 shot 设置下始终优于所有先前的工作在 SSV2-Full 数据集上,并在 Kinetics 数据集上获得可比较的结果,这验证了我们引入全局信息和运动线索以进行可靠的视频匹配的动机。(2)与原始的 OTAM 相比,我们的方法可以显著提高性能。例如,在 1-shot SSV2-Full 设置下,MoLo 的性能从 42.8% 提高到 55.0%,在 Kinetics 上获得了 1.6% 的 1-shot 性能提升。同样的现象也适用于 Bi-MHM,这证明了我们的框架对于局部帧度量类型的鲁棒性。(3)我们的 MoLo 在 SSV2-Full 数据集上的收益通常比在 Kinetics 数据集上更显著。我们将这归因于 SSV2-Full 数据集涉及大量的时间推理,并且显式地引入全局时间上下文和运动补偿在这个数据集上带来了实质性的好处,而 Kinetics 数据集更偏向于外观场景。
为了进一步验证我们的MoLo,我们还在UCF101、HMDB51和SSv2-Small数据集上与最先进的方法进行了比较,结果显示在表2中。结论基本与表1中的相同。值得注意的是,在大多数情况下(例如,1-shot和3-shot),我们的方法优于其他方法。然而,在UCF101和SSv2-Small上,5-shot的性能略低于最近的先进方法,因为我们的MoLo是一个针对不同shot设置的通用框架,不像TRX [44]和STRM [58]那样专门设计为5-shot。
4.3. 消融研究
为了方便比较,我们选择 Bi-MHM [74] 作为我们的基准线,并将每个组件添加到 Bi-MHM 中,以验证模块设计的合理性。
网络组件分析。我们对模型元素进行了详细的消融分析,并将实验结果总结在表3中。根据结果,我们可以观察到长短对比目标和运动自解码器在提升性能方面起着关键作用。特别是,通过将长短对比目标添加到基准线 Bi-MHM 中,1-shot 性能可以从44.6%提高到52.2%,反映了将全局上下文纳入局部匹配过程的重要性。通过引入运动自解码器也可以显著提高性能。此外,实验结果显示了不同模块之间的互补性,表明了我们模型结构的合理性。通过整合所有模块,我们的方法在1-shot和5-shot设置下分别达到了56.6%和70.6%的性能。在表4中,我们进一步将运动重构目标从帧差异更改为RAFT光流[57],并将提出的运动自解码器插入到TRX [44]中。结果表明了提出的MoLo的适用性。
主干深度的变化。前面的比较结果都是基于 ResNet-50 的。为了调查主干深度对少样本性能的影响,我们还对 ResNet-18 和 ResNet-34 进行了详细的比较实验,如图4所示。可以看出,随着主干的加深,模型的容量变得更加广泛,性能也得到了改善。提出的 MoLo 方法在各种主干深度下始终优于现有的最先进技术,包括 OTAM、TRX 和 HyRSM,揭示了我们方法的可扩展性。
表4.不同运动重建目标的比较及在现有TRX中加入运动自解码器。
输入帧数的影响。为了公平比较,我们的 MoLo 在 8 帧输入条件下(每个类别一次性共同输入8帧)与当前方法进行比较。为了分析输入帧数对少样本性能的影响,我们进行了从 2 到 10 帧的输入视频采样实验。如图5所示,性能开始上升,并随着输入帧数的增加逐渐饱和。值得注意的是,即使在只使用 2 帧时,我们的 MoLo 仍然保持领先的性能,甚至优于使用 8 帧输入时 OTAM 的结果,表明我们方法的稳健性。
不同数量的时间变换器层。在我们的框架中,时间Transformer被采用来建模时间上的长短关联,并且我们进一步探讨了时间Transformer数量对性能的影响。结果显示在表5中,我们注意到当应用一个变换器层时,在Kinetics数据集上取得了最佳结果,并且随着层数的增加,过拟合开始出现。在SSv2-Full数据集上,与上述情况略有不同。我们将这归因于这个基准测试中的时间依赖性更为复杂,可能需要更多的变换器层来发现5-shot情况下的全面关系。为了准确性和模型复杂性的考虑,我们在我们的MoLo中使用了一个时间变换器层来建模时间关系。
长短对比目标的分析。我们进行了消融实验,以展示我们提出的长短对比目标的优越性,结果如表6所示。在比较方法中,“仅时间转换器”表示经过空间全局平均池化后的帧特征直接输入到时间转换器中,并在没有长短对比损失的情况下执行查询-支持对的本地匹配。“带时间转换器和TAP”表示在计算长短对比损失时,我们将全局标记特征替换为全局时间平均池化特征。需要注意的是,以上变种也包含了运动自动编码器和两个少样本分类头。实验结果表明,利用带有可学习标记的时间转换器提供了更优越的性能。这表明了在匹配过程中强制局部帧特征预测全局时间上下文的必要性,以及利用可学习标记自适应聚合全局时间特征的合理性。此外,我们还探索了长短对比目标在视频内部或视频间的影响,表7中的比较结果表明,跨视频方式比视频内部方式[9,65]带来更多的好处。这可以归因于跨视频方式有助于获得更紧凑的类内特征分布。
表7。在SSv2-Full和Kinetics上进行的不同长短对比样式的比较实验。“视频内部”意味着最大化局部帧特征和同一视频的全局特征之间的表示相似性。
N路少样本分类(N-way few-shot classification)。我们进一步进行消融实验,展示N路1样本准确率,其中N从5到10变化。在表8中,我们将MoLo与现有方法进行了比较,包括OTAM、TRX和HyRSM。可以观察到,N越大,分类变得更加困难,性能下降。例如,在SSv2-Full上,MoLo的10路1样本准确率与5路1样本结果相比下降了14.3%(40.0%对比54.3%)。值得注意的是,我们的方法在各种设置下始终实现了优越的结果,证明了所提框架的普适性。
4.4. 可视化分析
为了分析提出的方法对特定动作类别改进的影响,我们对每个动作类别相对于基准Bi-MHM [74]的性能增益进行了统计,如图6所示。从结果中,我们可以观察到通过添加我们提出的模块,每个动作类别的性能都有一定的改进。值得注意的是,在添加长短对比目标之后,“Picking something up(捡起某物)”和“Removing something(扔掉某物), revealing something behind(展示背后的物体)”都提高了超过15.0%。类似的发现也可以在“Pushing something from right to left(从右向左推动某物)”和“Tipping something over(倾斜某物)”中观察到。这与我们的动机一致,并充分证明了我们的方法可以通过强化长程时间感知来提高局部帧匹配的稳健性。此外,通过引入运动自解码器,每个类别的性能还可以进一步提高。
图6. 在SSv2-Full数据集上进行的5-way 1-shot类别改进的定量分析。顶部:将长短对比目标添加到基线方法中的类别性能增益;底部:与基线相比,提出的MoLo的类别性能增益。“S”是“something”的缩写。
4.5. 局限性
MoLo在一些数据集上的5-shot结果并不令人满意,而且在一些抽象动作类别(不太具体或者相对模糊的动作描述,可能不容易被准确地界定或识别的动作类别)上也只有边际增益(微小的提升),例如,“显示某物为空”和“假装向某物撒空气”。在未来,我们将设计一种更通用的方法来解决这些问题。
5. 结论
在本文中,我们提出了一种新颖的MoLo方法,用于少样本动作识别,该方法包括长短对比目标和运动自编码器。长短对比目标通过对比表示来鼓励局部帧特征预测全局上下文。运动自编码器被利用来恢复像素运动,以显式提取运动信息。通过这种方式,我们的MoLo实现了稳健而全面的少样本匹配。对五个常用基准数据集的大量实验证实了我们方法的有效性,并表明MoLo实现了最先进的性能。
读后总结
创新点:
主要出发点(个人):行为识别主要是一种动态的判断形式,所以引入了全局信息和运动信息。
①长短对比目标
出发点:为了解决现有的度量方法基本只是帧与帧之间的度量,只存在局部信息的问题。
方法:提出长短对比目标,通过引入可学习的标记特征序列,自动实现对相同类别的多个帧的全局信息聚合,从而通过全局信息进一步提高行为识别的准确度。
②运动自解码器
出发点:现有的少样本对比学习方法缺乏对运动信息的处理。
方法:提出运动自解码器,首先在特征差异生成模块中,通过差分算子将不同通道的特征图进行相减操作得到特征差异;然后通过自解码器重构特征差异,最小化重构的结果与原始特征图得差异损失,优化特征差异生成器的参数,从而生成更具运动信息的特征差异。同时有一个类似于基础头部的运动头部,对特征差异得到的特征序列执行创新点①的长短对比目标。最后通过融合基础头部和运动头部两个头部的匹配结果来对查询视频进行分类。