您的位置:首页 > 其它

CV论文笔记(二) Large-scale Video Classification with Convolutional Neural Networks

2017-10-30 13:18 706 查看
参考论文

A. Karpathy, G. Toderici, S. Shetty, T. Leung, R. Sukthankar, and L. Fei-Fei,
Large-scale Video Classification with Convolutional Neural Networks, CVPR 2014.

内容介绍

Abstract

研究多种方法来扩展CNN在时域上的连通性,以利用局部时空信息
提出一个多分辨率,新颖的框架的方式来加快训练(计算效率)

作者提出的模型与单帧模型相比性能有了显著提升,为此作者进一步研究了其中表现最佳的模型的泛化能力,即通过在UCF-101数据集上重新训练顶层,相比基准模型性能显著改善

1. Introduction

背景
网络上无处不在的图像和视频激励我们寻找一种算法来分析它们的语义和内容,来进行不同应用,如检索和总结。
从实际的角度来看,目前没有符合现有图像数据集的规模和多样性的视频分类基准,因为视频显然难以收集,注释和存储。
为此作者整理收集了一个新的数据集名为Sports-1M,1 million You Tube videos  487 classes of sports.

作者认为从模型来看存在三个问题:
CNN架构用什么时序联系模式才能对视频中的局部运动信息发挥出它的最大优势。
额外的运动信息是如何影响一个CNN的预测以及它对整体的性能有多大的提升。
作者通过设计多个不同的架构用实验的方式来研究这些问题

作者认为从计算来看,CNNs要求一个长期的训练来优化数百万的参数,如果在时间上扩展架构的连通性,问题会变得更加复杂。

对此作者提出一种有效的方法来加速CNN运行性能:修改架构以包含两个独立的处理流
context stream:学习低分辨率帧的特征;fovea stream:只在高分辨率帧的中间部分操作

作者观察到这种方式由于输入的维数减少,网络运行时性能增加2 - 4倍,同时保持分类精度。

为了了解自己框架在类似数据集上的通用性,应用网络到UCF-101上,得到了最先进的效果

2. Related Work

视频分类的标准化方式主要有三个阶段:
首先,描述视频区域的局部视觉特征被密集地提取或者在稀疏的兴趣点集中提取
接下来,这些特征被组合成固定大小的视频级别的描述:
其中一个主流的方式是使用学习的k-means字典量化所有特征and在视频的持续时间内将视觉词累积到变化的时空位置和范围的直方图中
最后,对所得到的“词包”表示进行分类器训练来区分感兴趣的视频类别
注:以上指的是利用传统图像处理和机器学习算法

卷积神经网络是一种具有生物学意义的深层次学习模型,用一个从原始像素值到分类器输出端到端的单个神经网络来代替所有三个阶段。

图像的空间结构明确有利于通过层之间的限制连接(局部滤波器),参数共享(卷积)和特殊的局部不变性构建神经元(最大合并:max pooling)来进行正则化。因此,这些架构有效地将所需的工程从特征设计和累积策略转移到网络连接结构和超参数选择的设计。

3. Models

每个剪辑在时间上包含几个连续的帧,在时间维度上扩展网络的连接性,以学习时空特征。

作者描述以下三种广泛的连接模式类别(Early Fusion, Late Fusion and Slow Fusion)

3.1 Time Information Fusion in CNNs

Early Fusion
通过修改第一个层卷积滤波器在时间上延伸,早期融合扩展在像素级别上立即整合了整个时间窗口中的信息。
对单帧模型上第一个卷积层的滤波器进行修改,将尺寸扩展为11 × 11 × 3 × T
对像素数据的早期和直接连接使网络能够精确地检测出局部运动方向和速度。

Late Fusion
该模型放置两个单帧网络在时序上间隔一段距离来实现,然后在第一个全连接层合并两个信息流,共享参数的距离为15帧
单个的单帧网络都不能检测到任何运动,但是第一个全连接层可以通过比较两个网络的输出来计算全局运动特性。

Slow Fusion
该模型可以理解为在上述两个模型中做了一个平衡混合,使得更高层在时间和空间维度上逐渐获取更多的全局信息
clip=10,第一层卷积的T=4,stride=2故产生4个response;第二次卷积的T=2,stride=2故第三个卷积层得到了所有信息



3.2 Multiresolution CNNs

Fovea and context streams
若网络的输入是一个178 × 178每帧的视频剪辑,context streams接收下采样帧,是原始分辨率的一半
fovea streams接收在原始分辨率的89 × 89的中心区域,这样一来输入的维度总数减半
这种设计是考虑到在线的视频感兴趣的对象常常占据中心区域

Architecture changes
去掉最后一个pooling层,确保终止层大小 7 × 7 × 256



3.3 Learning

Optimization


Data augmentation and preprocessing
首先裁剪中心区域到固定大小然后随机采样指定大小的区域,最后以50%的概率水平地随机翻转图像
作为预处理的最后一步,我们从原始像素值中减去常数值117,这是我们图像中所有像素平均值的近似值。

4. Results

4.1 Experiments on Sports-1M
Dataset
1 million YouTube videos with 487 classes
为了了解重复问题程度,作者对所有视频使用帧级几乎重复查找算法并确定只有1755个视频(100万)中包含了相当一部分几乎重复的帧。
而且由于作者只在每个视频中使用最多100个半秒剪辑,而我们的视频平均长度为5分36秒,因此数据拆分不太可能出现相同的帧。
Training

Video-level predictions

Feature histogram baselines

Quantitative results
基于特征的方法在视频的持续时间内密集地计算视觉词,并且基于整个视频级特征向量产生预测,而我们的网络仅分别看到20个随机采样的片段。
Contributions of motion

Qualitative analysis
在第一个卷积层中,context stream学习更多的颜色特征;fovea streams学习高频、灰度级特征
网络产生了可解释的预测和大多合理的错误,进一步分析了这些错误均属于数据集细粒度类

4.2 Transfer Learning Experiments on UCF-101
UCF-101: 13,320 videos  101 categories 5 broad groups
Transfer learning
概述
我们希望CNNs在底层学习到更多通用特征,例如边缘,区域形状;接近顶层学习更复杂,具体的数据集特征
因此提出以下方案:微调顶层;微调顶部3层;微调所有层;重新训练
Results
由于作者没有获取到UCF-101的YouTube video IDs所以不能保证视频和Sports-1M没有重复
实验发现只训练softmax或者微调所有层不可行,最好的是重新训练顶部多层

5. Conclusions
虽然实验结果证明,性能对连接时间的架构细节不是特别敏感,但是Slow Fusion确实优于Late or Early Fusion。
作者发现单帧模型已经显示出很强的性能,表明局部运动提示可能并不重要,即使对于动态的数据集,例如运动。

另一种理论是,对相机运动的更细致的处理可能是必要的
混合分辨率架构能够加速CNNs且不牺牲精度
转移学习说明学习的特征是通用的,通过重新训练顶部层取得了最好的表现
在未来工作中,作者希望在数据集中吸收更广泛的类别来获取更有力和通用的特征
研究那些明确地解释摄像机运动的方法,并探索RNN作为将clip级预测和完整视频级预测结合起来的更强大的技术

个人理解

刚接触这个领域不久,先是看了2016CVPR上有关视频分析的的哥大的S-CNN,然后自顶而下学习3D
ConvNets(C3D),再到这篇文章。就我个人看法,这篇论文初步探索了如何在考虑时间的连续性来设计网络架构,达到提取运动信息的目的。但是由于作者设计的网络在两个数据集上均未取得特别惊人的效果,使得作者认为局部运动信息可能并不重要,转而研究其他的方向。值得一提的是我上一篇CV笔记博客讲述的 3D
ConvNets(C3D)刚好通过多次试验得出3D卷积(增加时序维度的卷积)相比单帧网络具有很大优势,有兴趣的朋友可以看一下!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  CVPR Sports-1M
相关文章推荐