主要是针对于视频中重要的时间线索所提出一个学习框架
这篇论文提出了一种基于视频的时间判别学习(VTDL)框架。在没有网络预训练标记数据的情况下,利用相同或不同时间间隔的片段对每个anchor视频生成时间三元组,以增强时间特征表示能力,时间一致增强(TCA)旨在确保增强的positive的时间导数(任何顺序)是不变的,除了一个缩放常数。最后,通过最小化每个Anchor与其增强的positive之间的距离来学习时间区分特征,同时最大化每个anchor与其增强的positive之间的距离以及存储在memory bank中的其他视频之间的距离来丰富表示的多样性
Generating Temporal Triplet.
作者引入了三元组的概念,提出使用基于视频的时间三元组
对于无标签数据集D中的每一个视频,首先随机裁剪一个3D时空块作为Anchor
Positive
由于剧烈的改变往往是在短时间内的,所以即使是很近的时间戳的片段,作为positive也是有歧义的
因此作者提出使用与Anchor保持相同的时间,但是不同的空间位置作为positive。这确保是positive pairs保持了时间相似但是在pixel-level是不同的
Negative
将一个视频中时间戳差至少为r的不同时间间隔的片段作为negative,在空间上没有要求
当时间差比较小时,negative和Anchor比较接近,这会促进模型关注更细粒度的时间信息,这是因为它们会有更大的机会去共享相似的空间上下文,当时间差较大时,会很容易将它们区分开,因此这可能会迫害时间鉴别性特征的学习。
Basic Augmentation
由于上述的三元组很容易导致low-level 常数解(color,edegs,objects)
为了解决这一问题,对于每一个时间三元组,作者采用了Basic Augmentation(BA)来带来大的pixel-level的视觉变化。
BA是一种转换类型,例如缩放,遮挡,光照,旋转或它们的任何组合
在本篇论文中,作者首先在一个随机调整大小的视频中进行224x224像素裁剪,然后执行颜色扰动和随机旋转,由于剧烈的平移或者旋转可能会混淆视觉时间线索,因此作者轻微的旋转整个视频,不超过10度。
Temporal Consistent Augmentation
为了使positive更加多样性,时间信息在原始和增强后的视频片段中应该保持一致
基于时间导数不变形的启发,作者进一步提出了时间一致性增强
Time derivative invariant
由于帧间差异用于提供有用的运动指示,因此时间导数可以用来衡量时间中的改变。
时空函数可以表示为 I(x, y, t),其中x和y是每个帧的像素索引,t是时间维度
将常数的加法或乘法运算应用到时空函数中,很容易证明时间导数在任何顺序上都保持一致。
α和δ表示乘法运算的常数比例因子,而加法运算只依赖于x和y
因此,额外的空间背景(图像)可以被引入到时空函数(视频)中,而时间导数保持一致,以任何比例因子的顺序。换句话说,δ可以是一个静态图像,整个操作可以看作是将相同的图像混合到视频的每一帧中(这里就类似于MixUp的操作)
Temporal Consistent Augmentation
作者引入了视频切割正则化和混合图像到每一帧的positive中,以改变像素的空间内容,同时保持时间相似
对于时间一致性增强,作者提出了三种方法:
- Video Cutout: 过对选定区域的M进行归零,并将α设为1,随机地切割出一个区域
- Internal Mix: 将M设置为1,并且从xi中随机选择一个帧作为N
- External Mix:将M设置为1,并且从其他视频中来挑选N
Temporal-Discriminative Learning
Temporal-Discriminative Loss.
值得注意的是,这里也使用了不同视频样本的Anchor作为negative
仅使用其他视频样本的Anchor作为negative,是优化和计算开销之间的折中
Memory Bank.
对于公式4来说,所有的Anchor 特征应该随时可以获得,以便作为negative
对于每一次迭代,对于每一个mini batch,生成三元组并将他们保存到memory bank中作为negative,然后计算temporal-discriminative loss并反向传播更新参数,之后用当前batch的特征替换更早的memory bank中的特征,但是这样会导致memory bank中生成的特征是通过不一致的参数所生成的。因此作者采用了weight-averaged来更新网络
数据增强的提升效果还是挺明显的
增强方式的选择