行为识别论文阅读 | Large-scale Video Classification with Convolutional Neural Networks

Large-scale Video Classification with Convolutional Neural Networks 论文笔记

Andrej Karpathy et al. “Large-scale Video Classification with Convolutional Neural Networks” CVPR 2014

Motivation

  1. 缺少使用CNN进行视频分类的数据集和方法,所以推出了数据集 Sports-1M(1 million YouTube videos, 487 classes
  2. 分析了动作对于CNN网络预测的影响,如何提升性能

Solution

  1. 传统有监督学习行为识别的步骤:

    1. 密集特征 or 关键点的系数特征
    2. 时序表达
    3. 分类器
    4. 以一个CVPR2008电影中人类动作识别的论文为例:
      1. 根据电影中某一片段的subtitles(含有开始结束的time stamp)与scripts的文字对应程度,保留相对应的clip
      2. perceptron 学习:x:scipts; y: motion – > 用这个学习器对片段的动作进行自动标注
      3. 时空兴趣点STIP:抽取clip的特征
      4. SVM:x:STIP,y:motion
  2. 因为无监督方法也很适合用于动作识别,近期的无监督模型效果已经逼近监督模型了,所以看了看本文中引用的两篇视频无监督学习的早期文章,都是大佬的文章:

    G. W. Taylor, R. Fergus, Y. LeCun, and C. Bregler. Convolutional learning of spatio-temporal features ECCV2010

    提出的 Convolutional Gated Restricted Boltzmann Machines (CGRBM)

    RBM其方法是:最大似然估计输入样本的概率[是一个归一化的e-x势函数 <==> 最小化能量函数Ex 越稳定]+梯度下降三组参数:w,a,b)CGRBM 中加入卷积和max pooling,接着无监督学习

    Q. V. Le, W. Y. Zou, S. Y. Yeung, and A. Y. Ng. Learning hierarchical invariant spatio-temporal features for action recognition with independent subspace analysis. In CVPR 2011

    ISA Network ,两层(第一层线性W(learned),第二层池化V(fixed)),最大化第二层**值;

    Stacked convolutional ISA Network for video data: 卷积作为ISA的输入,m个ISA并行,得到m个输出concatenate后在输入一个ISA层,再与PCA whitening(m个输出) concatenate 组合为 Local feature

    本文用的方法不同于以上,是end to end supervised

  3. Single Frame, Early Fusion, Late Fusion Slow Fusion

    1. Single Frame: 每一帧都CNN处理
    2. Early Fusion: 11x3x3xT 的3D卷积 —— 检测 local motion direction and speed
    3. Late Fusion: 两个间隔15帧的独立的Single Frame 再 FC —— the first FC layer can compute global motion characteristics
    4. Slow Fusion: 第一层 4个并行的卷积层,在10frames的时序上:T=4,stride=2,得到4个输出;第二层T=2,stride=2,得到2个输出;第三层T=2,stride=1
  4. Fovea and context streams

    1. Fovea stream: 原图的half center – 因为网络视频的总是关注中心画面
    2. context stream: 原图的half downsampled

有两张很好看的图:

行为识别论文阅读 | Large-scale Video Classification with Convolutional Neural Networks
行为识别论文阅读 | Large-scale Video Classification with Convolutional Neural Networks

图2的侧视图和图1正好对应起来;很好的展示了 3D 卷积的结构

Applications

运动视频类型分类、迁移学习

Experiments

  1. 训练:full-frame和multiresolution两种,multiresolution每秒处理20clips,full-frame每秒处理5clips, Sports-1M [200,000 videos and 4,000,000 clips ]上训练了1/4个月

  2. 测试:,每个视频截取20段,每段再裁剪不同部分测试4次,结果平均

  3. 给出Top1,Top5准确率;Slow Fusion 的特征表达最好 – > 是 motion aware的

行为识别论文阅读 | Large-scale Video Classification with Convolutional Neural Networks

第一行的baseline是对整个视频提取出特征 25000维;再用一个2层的感知机处理

  1. Fovea architecture 训练更快了2-4倍;single frame 每秒处理6-21clips,Slow Fusion每秒处理 5-10 clips

  2. Contribution of motion:只在一些动作非常明显的视频上,motion aware能比single frame消除更多的歧义,效果更好;作者认为可能CNN难以处理:摄像机不同角度的变化,相机平移和缩放

  3. Qualitative Result 中 用gif体现了第一层卷积的变化结果:context stream:低频的颜色信息;fovea stream:高频的灰度信息

  4. 分类错误分析:confusion matrix 分析,错误大部分都出在 细粒度较高的 类别(fine-grained classes)中 – 比如:deer hunting vs. hunting, hiking vs. backpacking, powered paragliding vs. paragliding, sledding vs. toboggan, and bujinkan vs. ninjutsu. 作者称之为:interpretable error

  5. 迁移学习:UCF101:3-fold 准确度不错的提升,对比baseline3%吧

English Representations

  1. Since each clip contains several contiguous frames in time, we can extend the connectivity of the network in time dimension to learn spatio-temporal features. (CNN中常见到这个connectivity,这里表示再时间维度拓展网络的连通性:three broad connectivity pattern categories (Early Fusion, Late Fusion and Slow Fusion)
  2. Notably, this design takes advantage of the camera bias present in many online videos, since the object of interest often occupies the center region. ( Fovea context stream这样的设计利用了网络视频中的镜头偏爱,因为关注点往往出现在中心区域
  3. Qualitative examination of network outputs and confusion matrices reveals interpretable errors. (定性分析 – 作者做了卷积核结果的gif展示
  4. The precise speedups are in part a function of the details of model partitioning and our implementation, but in our experiments we observe a speedup during training. (精度提升部分是由于我们模型中的分离结构和我们的实施办法)

Advantages and Drawbacks

优点:

  1. motion aware的结构,几种不同的fusion方法,多帧信息融合起来做特征表达
  2. 低分辨率中心部分图像+下采样模糊图像 – two stream 训练
  3. gif可视化卷积核处理结果的变化
  4. 对于模型差的原因给出了可解释性的分析
  5. 做的图好看直观

缺点:

  1. 对于baseline 的提升不够高,但作为开创性工作很棒了!
  2. 对于分类错误的可解释性分析是从结果的角度出发分析的,可能能从模型的角度给出一些可解释性就更好了