目录
摘要
Abstracts
1. 介绍
2. 相关工作
3. 模型
3.1 时序段网络TSN
3.2 学习时序段网络
4. 训练结果
5. 结论
摘要
本周阅读的论文是《Temporal Segment Networks: Towards Good Practices for Deep Action Recognition》。作者主要想通过较少的训练样本,高效的训练出用于动作识别的ConvNet,主要贡献有两点:
- 提出temporal segment network(TSN)网络模型:TSN采样,具备稀疏性和全局性的特征,能够建模间隔更长帧之间时间依赖关系,确保获取视频级信息
- TSN包含提取空间信息和提取时间信息两路模型,并基于后期融合方式来融合两路模型的结果。提出了一系列最佳实践方案,如数据增强、正则化、交叉模态预训练等。并取得了非常好的效果。
Abstracts
The paper I read this week is' Temporary Segment Networks: Towards Good Practices for Deep Action Recognition '. The author mainly aims to efficiently train ConvNet for action recognition with fewer training samples, with two main contributions:
Propose a Temporal Segment Network (TSN) network model: TSN sampling, with sparse and global features, can model temporal dependencies between frames with longer intervals, ensuring the acquisition of video level information
TSN includes two models for extracting spatial and temporal information, and fuses the results of the two models based on post fusion methods. A series of best practice solutions have been proposed, such as data augmentation, regularization, cross modal pre training, etc. And achieved very good results.
1. 介绍
在动作识别中,有两个关键和互补的方面:外观和动态。识别系统的性能在很大程度上取决于它是否能够从中提取和利用相关信息。然而,由于许多复杂因素,如比例变化、视点变化和相机运动,提取此类信息并非易事。
主流ConvNet框架通常侧重于外观和短期运动,因此缺乏整合长期时间结构的能力。
ConvNets在基于视频的动作识别中的应用受到两个主要障碍的阻碍。首先,长距离的时间结构在理解动作视频的动态方面起着重要作用。
然而,主流的ConvNet框架通常专注于表象和短期运动,因此缺乏纳入长程时间结构的能力。其次,在实践中,训练深度ConvNets需要大量的训练样本以达到最佳性能。但数据集有限。因此,卷积网络面临着过拟合的风险。
时空段网络(TSN),这个框架用稀疏的采样方案在一个长的视频序列上提取短的片段,其中的样本沿着时间维度均匀分布。在此基础上,采用分段式结构来汇总采样片段的信息。在这个意义上,时间段网络能够对整个视频的长距离时间结构进行建模。此外,这种稀疏的抽样策略以极低的成本保留了相关的信息,从而在合理的时间和计算资源预算下实现了长视频序列的端到端学习。
探索了一些好的做法来克服上述因训练样本数量有限而造成的困难,包括:1)跨模态预训练;2)正则化;3)增强数据增量。
作者认为,在训练视频分类模型时,连续的帧会造成冗余,所以密集采样的策略是没必要的,所以作者采用了稀疏采样的策略。
2. 相关工作
主要有两种做法:
- 双流结构,一个模型学习图像层面的信息,一个模型学习时间层面的信息,最后融合两路模型的结果
- 使用3D卷积核,同时抽取图像层面和时间层面的信息,这衍生出了不同3D卷积核的变种
3. 模型
3.1 时序段网络TSN
具体来说,我们提出的时间段网络框架,旨在利用整个视频的视觉信息来进行视频级预测,也是由空间流ConvNets和时间流ConvNets组成。
时间段网络不是在单帧或帧堆上工作,而是在整个视频中稀疏采样的短片段序列上工作。
一个输入视频被分成K个片段,并从每个片段中随机选择一个简短的片段。不同片段的等级分数通过片段共识函数进行融合,产生片段共识,这是一个视频级别的预测。然后,来自所有模式的预测被融合以产生最终的预测。所有片段的ConvNets共享参数。
3.2 学习时序段网络
-
模型架构:之前的two-stream模型采用的是相对浅的模型结构,作者选择BN-Inception这种比较深的模型结构来当做building block,因为该模型在速度和准确率上都不错。
-
模型输入:之前two-stream模型采用RGB作为spatial stream的输入,采用光流作为temporal stream的输入。作者研究了额外的两种模态,RGB difference和warped光流。
图2. 四种类型的输入模式的例子。RGB图像、RGB差分、光流场(x,y方向)和扭曲的光流场(x,y方向)
。
- 模型训练:由于视频样本较少,训练较深的ConvNet可能会过拟合。为了解决该问题,作者提出了如下的策略:
- 跨模态预训练:RGB网络可以使用ImageNet预训练,但是光流网络没有预训练的数据集,所有作者采用ImageNet上预训练的参数来初始化光流模型参数。
- 正则化:Batch Normalization用来解决协变量偏移的问题。在学习过程中,BN将估计每批中的激活均值和方差,并使用它们将这些激活值转换为标准高斯分布。该操作会使得模型收敛速度变快,但是同时会带来了过拟合的问题。因为,作者通过固定住除了第一层以外,其他层的BN参数,来解决该问题。而且,作者在BN-Inception模型后面加入了dropout层,来解决过拟合的问题。
- 数据增强:random cropping、horizontal flipping、corner cropping、scale jittering。
4. 训练结果
(1)跨模态预训练和partial BN with dropout实验:
(2)新模态特征:RGB Difference和warped optical flow fields实验
RGB Difference和RGB特征有一定的互补性
结合RGB和光流特征,能取得非常好的效果
所以在下面的实验中,我们选择平均池化作为默认的聚合函数。
"BN-Inception+TSN "指的是在性能最好的BN-Inception架构上应用时间段网络框架的设置。
UCF101数据集上的拟议方法的成分分析。从左到右,我们一个一个地添加组件。BN-Inception被用作ConvNet架构
基于时间段网络(TSN)的方法与其他最先进的方法的比较。分别介绍了使用两种输入模式(RGB+Flow)和三种输入模式(RGB+Flow+Warped Flow)的结果。
5. 结论
作者提出了Temporal Segment Network,用于建模视频级模型,捕获长时间的运动特征。通过稀疏采样的分段结构以及各种数据增强策略,该模型在HMDB51和UCF101上取得了非常好的效果