type
status
date
slug
summary
tags
category
icon
password
comment_flag
SLUGS

Source

authors: Ji Lin(MIT), Chuang Gan(MIT-IBM Watson AI Lab), Song Han(MIT)
from:ICCV2019
 

Abstract

  • 2D CNN计算代价低但无法捕获视频中行为帧的时间关系;3D CNN能捕获但是计算密集,部署成本昂贵
  • 作者提出的TSM在时间维度对特征进行移位,使得邻近帧交换时间信息。

Introduction

  • 2D CNN直接对单帧无法进行时间上的建模,3D CNN可以对时间进行建模,但是计算代价昂贵
  • 许多方法试图从时间建模和计算代价之间找到平衡点,如post-hoc fusion和mid-level temporal fusion,但都牺牲了低层次的时间建模信息来提高效率。
  • TSM基于一种直观知识:卷积操作是由移位和乘法累加
      1. 考虑普通的一维卷积运算。假设卷积核大小为3,权值为,输入是无限长的一维向量。卷积算子可写为:
        1. 将输入的左移位、不移位、右移位记为:
          1. 那么卷积运算可写为:
            💡
            移位操作可以通过偏移地址指针执行,通过合理设计,可将乘法累加合并到后面的2D卷积中去,因此和2D CNN相比,几乎无额外成本
        • 之前的Navie Shift操作:
          • 在不同空间方向移动其输入张量的每个通道:
            notion image
            空间位移策略直接应用到时间维度既不能提高性能也不能提高效率。如果我们移位全部或者大部分通道,会导致两个问题:
            1. 由于大量数据的移动导致效率更差,数据移动增加推理时间;
            1. 由于糟糕的空间建模能力导致效能降低,通过将部分通道移动到相邻帧,当前帧不在获得通道信息,损害2DCNN的空间建模能力。
          • 相比于TSN,当使用naive shift精度下降2.6%。
        • 作者文章的贡献:
            1. 提出的TSM不但拥有更强的spatio-temporal建模能力,并且并不会增加额外的计算代价
            1. 提出的partial shift和residual shift可以实现高效率的建模
            1. 针对离线视频的视频理解提出的bi-directional TSM实现了SOTA效果
            1. 针对在线实时视频识别提出的uni-directional TSM,在边缘设备上有着较强时间建模能力的同时,识别延迟低

        Related Work

        Deep Video Recognition

        从深度网络的角度讨论相关工作:
        1. 2D CNN是视频识别很直接的方法,但不能对时间顺序和关系进行建模
            • Simonyan et al. designed a two-stream CNN
            • TSN extracted averaged features from strided sampled frames.
        1. 3D CNN可以联合学习时空特征,但学习更多参数而带来高代价计算量
            • Tran et al. proposed a 3D CNN based on VGG models, named C3D
            • Carreira and Zisserman proposed to inflate all the 2D convolution filters in an Inception V1 model into 3D convolutions
        1. Trade-offs寻找计算代价和时间建模能力的平衡点
            • Lee et al. proposed a motion filter to generate spatio-temporal features from 2D CNN.
            • Tran et al. and Xie et al. proposed to study mixed 2D and 3D networks, either first using 3D and later 2D (bottom-heavy) or first 2D and later 3D (top-heavy) architecture
            • ECO also uses a similar top-heavy architecture to achieve a very efficient framework
            • Another way to save computation is to decompose the 3D convolution into a 2D spatial convolution and a 1D temporal convolution
            • 2D-3D CNNs会移除掉low-level的时间建模信息或者high-level的时间建模信息

        Temporal Modeling

        从时间建模讨论:
        • 直接的方法是使用上述的3D CNN
        • Wang et al. proposed a spatial-temporal non-local module to capture long range dependencies
        • Wang et al. proposed to represent videos as space-time region graphs
        • An alternative way to model the temporal relationships is to use 2D CNN+ post hoc fusion
        • Some works use LSTM to aggregate the 2D CNN features
        • Attention mechanism also proves to be effective for temporal modeling
        • Zhou et al. proposed TRN to learn and reason about temporal dependencies
        作者说3D CNNs方法计算量大,后面的方法无法捕获low-level的时间建模信息,被丢失在特征提取过程。但TRN的毛病呢?
        作者说自己的方法有着和3D CNN类似的效果,并且只需要和2D CNN类似的计算量。

        Temporal Shift Module(TSM)

        前面已经说过,TSM基于直观知识:卷积操作可解耦为移位和乘法累加。
        再一次“鞭尸”Navie Shift,不但增加了推理延迟,还损害了空域上的建模能力。
        作者为了解决Navie Shift的问题,提出了两个技术方案:
        1. Reducing Data Movement:
          1. 作者以ResNet-50作为Backbone,使用8帧输入,来测试no shift(baseline),局部shift(1/8,1/4,1/2),以及all shift带来的延迟和效果对比(200轮热身后,测试1000轮的平均延迟):
            notion image
        1. Keeping Spatial Feature Learning Capacity:
          1. 作者考虑了时域特征学习和空域特征学习的平衡,分析了如下两种TSM模块的设计:
            notion image
            • In-place TSM:移位操作发生在卷积或残差块前,由于改变了输入,当移位很多channel时,损害模型的空域特征学习能力
            • Residual TSM:移位操作放在残差块所在的分支上,保留了原始的输入,也就保留了空域上的特征

        TSM Video Network

        Offline Models with Bi-directional TSM

        notion image
        对于离线视频的行为识别,给定视频,采样得到共帧。
        TSM在现有的2D CNNs网络基础上改进,将网络中的所有残差块所在分支上接入TSM模块,使网络能同时学习时域和空域特征,并且不带来额外的计算代价。
        下图是shift的示例:
        notion image

        Online Models with Uni-directional TSM

        与离线视频不同的是,作者只是单方向沿时间维度shift通道信息:
        notion image
        推测作者这样做的原因是,为了提高实时性。具体而言,作者对得到的每一帧都保留其前1/8的特征信息,并缓存到内存里;当时间到达下一未来帧时,作者又保缓存当前帧的前1/8特征信息,并用内存里缓存的前一帧的前1/8特征信息来替换当前的前1/8特征信息,从而实现shift操作,如下图:
        notion image
        作者因此总结出针对online video的识别使用uni-directional TSM的独特优势如下:
        1. 推理低延迟
        1. 占用内存低
        1. Multi-level的时域信息融合(作者说,不像TRN那样只能在特征提取后进行晚期的时域信息融合,也不同于ECO那样只进行mid-level的时域信息融合。

        Experiments

        在Something-Something-V1数据集上,TSM和其他方法的对比(在测试集上的精度吊打之前的方法,而且其有着可观的算力消耗和参数数量:
        notion image
        在各种数据集上和Baseline TSN的对比:
        notion image
        Something-Something-V2上,TSM实现SOTA:
        notion image
        延迟对比:
        notion image
        算力消耗和精度平衡对比(圆形面积代表参数数量):
        notion image
        参考:
         
        《Temporal Interlacing Network》笔记《Temporal Relational Reasoning in Videos》笔记
        Loading...