介绍

本文提出了一个新的大型视频行为识别数据集Kinetics,包含400个动作类别,每个类别包含超过400个片段。比 HMDB-51UCF-101高出了两个数量级。

观察到视频理解相较于图片分类多了时间维度,所以本文将 2D 卷积的权重,扩展为 3D 卷积,提出了Two-Stream Inflated 3D ConvNetI3D)模型。可以在大型数据集(如本文提出的Kinetics)上预训练,然后在小型数据集上进行微调。

基于 Inception-v1I3D模型,获得了远远超过先前SOTA的性能。

Two-Stream Inflated 3D ConvNets

通过这个架构,我们展示了3D 卷积神经网络可以从通过ImageNet预训练的 2D 卷积神经网络的权重中获益。

我们在这里也采用了双流结构,虽然3D卷积神经网络可以直接从RGB流中学习时许信息,但它们的性能仍然可以通过光流来大大提升。

扩张 2D 卷积到 3D

我们建议将成功的图像分类模型简单地转换为 3D 卷积神经网络。这可以通过从一个二维架构开始,将所有的卷积核与池化层膨胀起来——赋予它们一个额外的时间维度来实现。滤波器通常是方形的,我们只需把它们变成立方体—— N×NN \times N 个滤波器变成 N×N×NN \times N \times N

从二维滤波器中引导出三维滤波器

从预先训练好的ImageNet模型中引导出参数,为了做到这一点,可以将一个图像可以通过重复复制到一个视频序列中而被转换为一个(单调的)视频。然后,通过满足我们所说的无聊视频固定点,三维模型可以隐式地在ImageNet上进行预训练:单调视频上的池化激活应该与原始单幅图像输入相同。由于线性关系,沿着时间维度,复制的权重 NN 次,并通过除以 NN 来重新缩放它们。这保证了卷积滤波器的响应是相同的。由于单调视频的卷积层的输出在时间上是恒定的,所以点状非线性层以及平均层和最大集合层的输出与二维情况相同,因此,整个网络响应尊重单调视频的固定点。

在空间、时间和网络工作深度上对感受野的增长进行调度。

这应该取决于帧率和图像尺寸。如果它在时间上相对于空间增长得太快,它可能会混淆来自不同物体的边缘,破坏早期的特征识别,而如果它增长得太慢,它可能无法很好地捕捉场景的动态。在我们的实验中,输入视频的处理速度为每秒 2525 帧;我们发现在前两个最大汇集层中不进行时间汇集(通过使用 1×3×31×3×3 核和时间跨度 11),而在所有其他最大汇集层中使用对称的核和跨度是有帮助的。最后的平均池化层使用一个 2×7×72×7×7 的核。整体架构如上图所示。我们使用64帧的片段训练模型,并使用整个视频进行测试,在时间上对预测进行平均

双流处理

虽然3D 卷积网络应该能够直接从RGB输入中学习运动特征,但它仍然是纯粹的前馈计算,而光流算法在某种意义上是递归的(例如,他们对流场进行迭代优化)。也许是因为缺乏递归性,在实验中我们仍然发现具有双流配置的价值——如上图,e)——一个I3D网络在RGB输入上进行训练,另一个在携带优化的平滑流动信息的流动输入上进行训练。我们分别训练这两个网络,并在测试时对它们的预测进行平均。