这是今年CVPR 2018中接受为数不多的动作时间轴定位论文中的另一篇,基于学习的时间轴动作定位方法需要大量的训练数据。 然而,这样的大规模视频数据集不仅非常难以获得而且可能因为存在无数的动作类别而不实用。 当训练样本少且罕见时,当前方法的弊端就暴露出来了。为了解决这个挑战,本文的解决方案是采用匹配网络的One-shot学习技术,并利用相关性来挖掘和定位以前没有看过类别的行为。 本文在THUMOS14和ActivityNet数据集上评估了本文的one-shot动作定位方法。
背景
- 现在显存的基于深度学习的行为定位的方法都采用很强的监督学习策略,需要大量的标注数据,非常耗时去收集。
- 虽然转移学习或模型预训练可能在一定程度上缓解了这个问题,但处理新的动作类别和将学习的网络模型以高数据效率适应到新场景中仍然具有挑战性。
- 在本文中,考虑one(few)-shot的动作定位学习场景:给出一个(或几个)新动作类的例子,通常每个类一个例子,我们的目标是检测未修剪视频中所有出现的每个类。
- 目前很少有工作将one-shot learning应用到检测时空特征目标中。
目的
为缓解目前用来训练的动作视频数据量稀少且难以获取的问题,利用one(few)-shot learning的方法,通过少量训练样本即可达到时间轴定位以及未见过的动作的预测,提高模型的泛化性能。
方法
论文框架如下:
本文开发了一种新颖的元学习(meta-learning)策略,将视频序列匹配的任务级先验知识集成到学习动作定位中。 我们的一次学习策略的关键思想是动作视频的直观,结构化表示适合于用来匹配(部分)序列(matching sequences),以及一种相似性度量,它允许我们将动作示例的标签转换为未修剪视频中的动作提议。
本文提出了一个新的Matching Network结构,首先生成许多proposal,然后这些proposal送入到三个网络组件中进行动作标签预测:
Video Encoder Network:它为每个行动建议和参考行动计算一个segment-based的动作表示,它维护行动的时间结构并用于准确定位。
- 该网络的性能依赖于候选proposal和参考视频之间的能否良好对应,为了实现准确对齐,我们打算在行动表示中保留动作视频的时间结构。 为此,我们开发了一个利用ranking LSTM来获得segment-based的视频表示,以便将每个动作实例编码为固定长度序列的视频片段特征。
Similarity Network: 将行动建议利用相似性网络与每个参考行动(reference action)进行比较,该网络在每个时间步骤生成一组相关分数。
类似于Matching Network,网络首先计算每个单独示例$x_i$相对于整个支持集(support set)的完整上下文嵌入
然后给定一个行动建议$\hat{x}$及其编码向量$g(x_i)$,相似性网络计算提议表示与所有示例之间的余弦距离:
接着基于上述距离,原始匹配网络使用关注机制和投票策略将测试数据分类到支持集中的一个类中
我们注意到,由于支持集只由前景类组成,这种分类方法不适用于定位任务,我们还必须区分前景和背景。 因此,在本文的 one-shot action localization 架构中,我们使用相似性网络计算相关分数,并设计一个单独的标签网络来推断每个提案的类别标签(包括背景)。
Labeling Network: 设置不同长度的时间窗口,根据时间窗口内的encoding vector和correlation scores,第三个网络会在每个时间步骤中预测提案的动作类别标签(作为前景类别或背景之一)。
- 标记网络直接应用于相关矩阵。 类似于通过比较余弦距离进行分类,我们通过在短暂的时间跨度上在相关矩阵上应用全连接层来比较相关矩阵的相同列的不同行,并且输出在前景和通过sigmoid激活的背景。
- 全连接网络沿时间维度滑过相关矩阵,为每个提案确定前景/背景。 在标签网络确定为前景的提议中,公式6应用于预测动作标签,如框架图的上半部分所示。
- 相关矩阵包含有关特定特定类的信息以及提案是属于背景还是属于前景。 例如,如果与一个示例的关联比其他示例的关联高得多,那么该提议很可能属于前景并且与示例具有相同的动作标签; 如果与所有例子的相关性都比较低,那么它可能属于背景。 标签网络通过训练学习这些标准。
- 还要注意标签网络在某种意义上独立于动作类别,因为它应用于相关矩阵而不是每个视频的特征表示。 这意味着它学到的标准应该适用于输入来自不同类别的视频,这使得它适用于一次性预测。
- 后处理阶段:我们结合多尺度 proposal-level 预测来获得frame-level的单帧级预测,并将相同标号的相邻帧分组以获得动作实例。
本文的定位系统是针对 one-shot action localization 而设计的,相应的 Meta Learning Formulation 可用于模型的训练。 系统的每个组成部分都是可导的,并且可以对系统进行端到端的培训。 然而,为了获得更好的初始化和性能,我们对Video Encoder Network和Similarity Network进行了预训练。
Meta Learning Formulation
- 在元学习中,模型在一组训练任务的元阶段进行训练,并对另一组测试任务进行评估
- 元学习的目标是在元测试任务分布中找到最小化损失的模型
Optimization for the Localization System
损失函数为:
其中,两个损失函数分别如下:
Pretraining for Video Encoder & Similarity Net
预训练两者的损失函数:
利用到了一个Ranking Loss,其直观的想法是:当给予越来越多的视频内容,分类器会生成越来越置信度高的预测
实验
实验在Thumos14和ActivityNet 1.2上进行评估
One-shot问题设置要求测试期间的类别不得存在在训练期间,因此在训练和测试过程中需要对两个数据集进行划分,从而达到这一要求
训练和测试阶段有很多细节,建议看论文,这里不再赘述
和强监督方法的比较,我们从表1和表2可以看出,虽然one-shot和全监督行为检测之间仍然存在性能差距,但我们的方法在以one-shot设置进行测试时,显着优于目前最先进的方法。 我们在Thumos14数据集上使用更多的训练数据,每类15个样本进一步测试我们的方法。 我们的结果表明,性能出现明显提升,而CDC只有很小的提升,这表明我们的方法相对于样本数量具有良好的可扩展性。
还有一些消融探究实验,这里也不再赘述
优点
- 针对目前视频数据集标注费时、难以获得等痛点,作者首次将one(few)-shot的方法引入了时间轴定位,很有创新点,和弱监督学习有异曲同工之妙
- 提出了一种基于匹配网络框架的动作定位问题的元学习方法,它能够捕获任务级别(task-level)的先验知识
- 后处理中的grouping策略可以要用在我之前的工作中
缺点
- 性能目前看来并不是特别理想,和全监督的方法还有差距,还有很多改进的空间,这可能需要多去了解一些one-shot learning或transfer learning等方向的论文。