用于视频识别的 SlowFast 网络

paper题目:SlowFast Networks for Video Recognition

paper是FAIR发表在ICCV 2019的工作

论文地址:链接

Abstract

本文提出了用于视频识别的 SlowFast 网络。模型涉及(i)以低帧速率运行的慢速路径以捕获空间语义,以及(ii)以高帧速率运行的快速路径以捕获精细时间分辨率的运动。 Fast 路径可以通过减少其通道容量而变得非常轻量级,但可以学习用于视频识别的有用时间信息。本文的模型在视频中的动作分类和检测方面都实现了强大的性能,并且明确指出了slowfast的明确概念。本文报告了主要视频识别基准Kinetics、Charades 和 AVA 的最先进的准确性。代码地址:链接。

1. Introduction


在识别图像 I ( x , y ) I(x, y) I(x,y)时,习惯上对称地处理两个空间维度 x x x y y y。这是由自然图像的统计数据所证明的,自然图像首先是各向同性的,所有方向的可能性都是一样的,而且是移位不变的。但是视频信号 I ( x , y , t ) I(x, y, t) I(x,y,t)呢?运动是方位的时空对应物,但并非所有时空方向都具有相同的可能性。慢动作比快动作更有可能(事实上,我们看到的大部分世界在给定时刻都处于静止状态),这已在贝叶斯关于人类如何感知运动刺激的描述中得到了利用。例如,如果我们看到一个孤立的移动边缘,我们会认为它垂直于自身移动,即使原则上它也可能具有与自身相切的任意运动分量(光流中的孔径问题)。如果先验有利于缓慢的运动,这种看法是合理的。

如果所有时空方向的可能性不一样,那么我们就没有理由对称地对待空间和时间,就像基于时空卷积的视频识别方法所隐含的那样。我们可以用”因子 “架构来分别处理空间结构和时间事件。为了具体化,让我们在识别的背景下研究这个问题。视觉内容的分类空间语义往往发展缓慢。例如,挥舞的手在挥舞的过程中不会改变其作为 “手”的身份,而一个人总是在 “人”的类别中,尽管他/她可以从走路转到跑步。因此,对分类语义(以及它们的颜色、质地、灯光等)的识别可以相对缓慢地被刷新。另一方面,正在进行的运动可以比它们的主体身份发展得更快,如拍手、挥手、摇晃、行走或跳跃。可以希望使用快速刷新的帧(高时间分辨率)来有效地模拟潜在的快速变化的运动。

基于这种直觉,提出了一个用于视频识别的双路径SlowFast模型(图1)。一条途径被设计用来捕捉可由图像或少数稀疏帧提供的语义信息,它在低帧率和慢速刷新速度下运行。相比之下,另一个途径负责捕捉快速变化的运动,通过在快速刷新速度和高时间分辨率下操作。尽管它的时间率很高,但这一途径被做得很轻,例如,占总计算量的大约20%。这是因为这条通路被设计成具有较少的通道,处理空间信息的能力较弱,而这种信息可以由第一条通路以较少的冗余方式提供。称第一条通路为慢速通路,第二条通路为快速通路,由它们不同的时间速度驱动。这两条通路通过侧向连接融合在一起。

图1. 一个慢速网络有一个低帧率、低时间分辨率的慢速通路和一个高帧率、 α × \alpha \times α×高时间分辨率的快速通路。快速通路通过使用一部分通道 ( β , 例如 1 / 8 ) (\beta, \text{例如} 1 / 8) (β,例如1/8)来实现轻量化。横向连接将它们融合在一起。

作者的概念性想法导致了视频模型的灵活和有效的设计。快速路径,由于其轻量级的性质,不需要执行任何时间池化–它可以在所有中间层的高帧率上操作,并保持时间的保真度。同时,由于较低的时间速率,慢速途径可以更专注于空间领域和语义。通过以不同的时间速率处理原始视频,本文的方法允许这两种途径在视频建模上有自己的特长。

还有一个众所周知的视频识别架构,它有一个双流设计,但提供了概念上的不同观点。双流法没有探索不同时间速度的潜力,这是本文方法中的一个关键概念。双流方法对两个流采用相同的backbone结构,而本文的快速通道则更轻巧。本文的方法不计算光流,因此,我们的模型是从原始数据中端到端的学习。在本文的实验中,观察到SlowFast网络更有效。

本文的方法部分受到灵长类视觉系统中视网膜神经节细胞生物学研究的启发,尽管这个类比是粗略和不成熟的。这些研究发现,在这些细胞中,约 80% 是细小细胞(P 细胞),约 15-20% 是大细胞(M 细胞)。 M 细胞在高时间频率下工作,并对快速的时间变化作出反应,但对空间细节或颜色不敏感。 P 细胞提供精细的空间细节和颜色,但时间分辨率较低,对刺激反应缓慢。本文的框架类似:(i)本文的模型有两条路径分别在低和高时间分辨率下工作; (ii) 本文的快速路径旨在捕捉快速变化的运动,但空间细节较少,类似于 M 细胞; (iii) 本文的 Fast 通路是轻量级的,类似于 M 细胞的小比例。希望这些关系能够激发更多用于视频识别的计算机视觉模型。

作者在 Kinetics-400、Kinetics-600、Charades和AVA数据集上评估本文的方法。对动力学动作分类的综合消融实验证明了慢速贡献的功效。SlowFast网络在所有数据集上实现了新的最先进精度,与文献中的先前系统相比有显著的进步。

2. Related Work

时空过滤。动作可以表述为时空对象,并通过时空定向过滤来捕获,如 HOG3D和cuboids所做的那样。 3D ConvNets将 2D 图像模型扩展到时空域,同等的处理空间和时间维度。还有一些相关方法专注于使用时间步长进行长期过滤和池化,以及将卷积分解为单独的 2D 空间和 1D 时间滤波器。

除了时空过滤或其可分离版本之外,本文的工作还通过使用两种不同的时间速度来追求更彻底的建模专业知识分离。

用于视频识别的光流。有一个经典的研究分支,专注于基于光流的手工制作的时空特征。这些方法,包括流直方图、运动边界直方图和轨迹,在深度学习流行之前已经显示出具有竞争力的动作识别性能。

在深度神经网络的背景下,双流方法通过将光流视为另一种输入模式来利用光流。这种方法已成为文献中许多竞争性结果的基础。然而,鉴于光流是一种手工设计的表示,并且双流方法通常不是与流一起端到端学习的,因此在方法上并不令人满意。

3. SlowFast Networks

SlowFast 网络可以描述为以两种不同帧速率运行的单流架构,但使用路径的概念来反映与生物 Parvo 和 Magnocellular 对应物的类比。本文的通用架构有一条慢速路径(第 3.1 节)和一条快速路径(第 3.2 节),它们通过横向连接融合到一个慢速网络(第 3.3 节)。图 1 说明了本文的概念。

3.1. Slow pathway


慢速路径可以是任何卷积模型,它可以将视频剪辑作为时空volume工作。慢速路径中的关键概念是输入帧上的大时间步幅 τ \tau τ,即它只处理 τ \tau τ帧中的一个。作者研究的 τ \tau τ的典型值是16——对于 30 fps 的视频,这个刷新速度大约是每秒采样 2 帧。将慢速路径采样的帧数表示为 T T T,原始剪辑长度为 T × τ T \times \tau T×τ帧。

3.2. Fast pathway


与慢速路径平行,快速路径是另一种具有以下属性的卷积模型。

高帧率。本节的目标是在时间维度上有一个很好的表示。Fast路径以 τ / α \tau / \alpha τ/α的小时间步幅工作,其中 α > 1 \alpha>1 α>1是Fast和Slow路径之间的帧速率比。两条路径在相同的原始剪辑上运行,因此Fast路径对 α T \alpha T αT帧进行采样,比 Slow 路径密集 α \alpha α倍。在本文的实验中,典型值为 α = 8 \alpha=8 α=8

α \alpha α的存在是 SlowFast 概念的关键(图 1,时间轴)。它明确表明这两条路径以不同的时间速度工作,从而推动了实例化两条路径的两个子网的专业知识。

高时间分辨率特征。本文的 Fast 路径不仅具有高输入分辨率,而且在整个网络层次结构中追求高分辨率特征。在本文的实例中,在整个 Fast 路径中不使用时间下采样层(既不使用时间池化也不使用时间跨度卷积),直到分类前的全局池化层。因此,本文的特征张量在时间维度上始终具有 α T \alpha T αT帧,尽可能地保持时间保真度。

通道容量低。Fast路径与现有模型的区别还在于,它可以使用显著较低的通道容量来实现 SlowFast 模型的良好精度。这使它变得轻量。

简而言之,Fast路径是一个类似于Slow路径的卷积网络,但具有Slow路径的 β ( β < 1 ) \beta(\beta<1) β(β<1)个通道的比率。在本文的实验中,典型值为 β = 1 / 8 \beta=1 / 8 β=1/8。请注意,公共层的计算(浮点数运算,或 FLOPs)在其通道缩放比率方面通常是二次的。这就是使快速路径比慢速路径更具计算效率的原因。在本文的实例中,Fast 路径通常占总计算量的约20%。有趣的是,正如第二节中提到的那样。如图 1 所示,有证据表明,灵长类视觉系统中约 15-20% 的视网膜细胞是 M 细胞(对快速运动敏感,但对颜色或空间细节不敏感)。

低信道容量也可以解释为表示空间语义的能力较弱。从技术上讲,Fast路径在空间维度上没有特殊处理,因此它的空间建模能力应该低于Slow路径,因为通道较少。模型的良好结果表明,Fast路径在增强其时间建模能力的同时削弱其空间建模能力是一种理想的权衡。

受这种解释的启发,作者还探索了在快速路径中削弱空间容量的不同方法,包括降低输入空间分辨率和去除颜色信息。正如作者将通过实验展示的那样,这些版本都可以提供良好的准确性,这表明可以使空间容量较小的轻量级快速路径变得有益。

3.3. Lateral connections


两条路径的信息融合在一起,因此一条路径不会不知道另一条路径学习到的表示。通过横向连接来实现这一点,横向连接已用于融合基于光流的双流网络。在图像目标检测中,横向连接是一种流行的技术,用于合并不同级别的空间分辨率和语义。

与 [12, 35] 类似,作者在每个“阶段”的两条路径之间附加一个横向连接(图 1)。特别是对于 ResNets,这些连接就在 pool1、res2、res3 和 res4 之后。两条路径具有不同的时间维度,因此横向连接执行转换以匹配它们(详见第 3.4 节)。使用单向连接将快速路径的特征融合到慢速路径中(图 1)。作者已经尝试过双向融合,发现了类似的结果。

最后,对每个路径的输出执行全局平均池化。然后将两个池化特征向量连接起来作为全连接分类器层的输入。

3.4. Instantiations


SlowFast的想法是通用的,它可以用不同的backbone和实现细节来实例化。在本小节中,作者描述了网络架构的实例。

表 1 中指定了一个示例 SlowFast 模型。用 T × S 2 T \times S^{2} T×S2表示时空大小,其中 T T T是时间长度, S S S是方形空间的高度和宽度。接下来描述细节。

慢速路径。表 1 中的慢速路径是一个时间跨度的 3D ResNet,从 [12] 修改而来。它有 T = 4 T=4 T=4帧作为网络输入,从 64 帧原始剪辑中稀疏采样,时间步长 τ = 16 \tau=16 τ=16。选择在此实例中不执行时间下采样,因为输入步长较大时,下采样有损性能。

与典型的 C3D/I3D 模型不同,作者仅在 res4 和 res5 中使用非退化时间卷积(kernel size > 1 >1 >1,在表 1 中划线);从 conv1 到 res3 的所有过滤器本质上都是该路径中的 2D 卷积核。

表 1. SlowFast 网络的实例化示例。对于时间、空间和通道大小,内核的维度用 { T × S 2 , C } \left\{T \times S^{2}, C\right\} {T×S2,C}表示。步长表示为 { 时间步长 , 空间步长 2 } \left\{\text{时间步长}, \text{空间步长}^2\right\} {时间步长,空间步长2}。这里速度比为 α = 8 \alpha=8 α=8,通道比为 β = 1 / 8 \beta=1 / 8 β=1/8 τ \tau τ为 16。对于 Fast 路径,绿色标记更高的时间分辨率,橙色标记更少的通道。非退化时间滤波器加下划线。残差块用括号表示。backbone是 ResNet-50。

这是由实验观察所发现的,即在较早的层中使用时间卷积会降低准确性。作者认为这是因为当物体快速移动并且时间步长很大时,除非空间感受野足够大(即在后面的层中),否则时间感受野内几乎没有相关性。

快速路径。表 1 显示了快速路径的示例,其中 α = 8 \alpha=8 α=8 β = 1 / 8 \beta=1 / 8 β=1/8。它具有更高的时间分辨率(绿色)和更低的通道容量(橙色)。

Fast 路径在每个块中都有非退化的时间卷积。这是由于观察到该路径具有良好的时间分辨率,以便时间卷积捕获详细的运动。此外,Fast 路径在设计上没有时间下采样层。

横向连接。横向连接从快速路径融合到慢速路径。它需要在融合之前匹配特征的大小。将Slow 路径的特征形状表示为 { T , S 2 , C } \left\{T, S^{2}, C\right\} {T,S2,C},Fast 路径的特征形状为 { α T , S 2 , β C } \left\{\alpha T, S^{2}, \beta C\right\} {αT,S2,βC}。在横向连接中尝试以下变换:

(i) Time-to-channel:将 { α T , S 2 \left\{\alpha T, S^{2}\right. {αT,S2, β C } \beta C\} βC}重塑并转置为 { T , S 2 , α β C } \left\{T, S^{2}, \alpha \beta C\right\} {T,S2,αβC},这意味着将所有 α \alpha α帧打包到一帧的通道中。

(ii) 时间跨度采样:简单地从每个 α \alpha α帧中采样一个,因此 { α T , S 2 , β C } \left\{\alpha T, S^{2}, \beta C\right\} {αT,S2,βC}变为 { T , S 2 , β C } \left\{T, S^{2}, \beta C\right\} {T,S2,βC}

(iii) 时间跨度卷积:执行 5 × 1 2 5 \times 1^{2} 5×12内核的 3D 卷积,输出通道为 2 β C 2 \beta C 2βC,stride = α =\alpha =α

横向连接的输出通过求和或连接融合到慢速通路中。

参考文献

[12] Christoph Feichtenhofer, Axel Pinz, and Richard Wildes. Spatiotemporal residual networks for video action recognition. In NIPS, 2016. 2, 3

[35] Tsung-Yi Lin, Piotr Dollár, Ross Girshick, Kaiming He, Bharath Hariharan, and Serge Belongie. Feature pyramid networks for object detection. In Proc. CVPR, 2017. 3, 7