打开网易新闻 查看精彩图片

行为识别方法:目前在深度学习领域中对视频移动信息识别的方法主要有光流法、3D卷积、深度循环神经网络和2D卷积+3D卷积的方法。帧采样:若输入视频的所有帧会使得计算和存储消耗非常高,故而要对帧进行采样。常见的采样方法有均匀采样、自适应采样、剪辑采样(剪辑视频最重要的部分)和批量随机丢弃。时间池化:3D卷积的方法通常是在时间维度做平均池化,双流法通常是把空间特征和时间特征融合在一起。高效反向传递:模型训练三分之二的时间和存储都用于梯度反传,目前大部分工作都关注于梯度近似的方法。

问题提出

目前的视频行为识别方法都是粗糙地对视频帧进行下采样,之所以这么做是因为使用所有帧在计算上几乎是不可能的,然而下采样可能会导致关键信息丢失。 如下图,两次采样结果在第 三帧有所差异 ,上排第三帧存在两个行为: 打鸡蛋和做鸡蛋饼,而下排第三帧丢失了做鸡蛋饼的行为。 故而,这篇论文提出要学习视频所有帧的信息并且降低计算和存储的开销。

解决方案

本文使用的是TSM模型(Temporal shift module for efficient video understanding),且在此基础上做出改进,提出了时间聚类和融合(Temporal clustering and aggregation)。 对于一段视频(n=1)具有t帧,先把其投入到两个卷积块提取一些基本特征,再使用ReLU激活输出得到0~1之间的数,后使用符号函数(sign)将所有激活数二元化,这样可以计算汉明距离表示帧与帧之间的相似度,根据相似度将t帧聚类为g个组,每个组的帧叠加在一起表示为一个融合帧,再输入到之后的卷积块中提取特征。 这样一来帧的数量大大减少了,由于帧融合也没有丢失关键信息。

打开网易新闻 查看精彩图片

模型方法

梯度近似和误差估计

想在训练的时候让模型看到视频所有的帧,就要将帧激活数按组融合以减少计算和存储开销。 出于这个目的,我们要计算一个梯度值而这个梯度值与分组所有帧的梯度和近似。 故而我们假设所有临近的帧都是极其相似的,这样它们通过卷积块输出的激活数也是高度相似的,就可以一致更新。 设相似帧近似于线性相关,那么原来标准的梯度计算可以变换为如下:

打开网易新闻 查看精彩图片

左边的式子表示的意思是,分别用各个样本的激活数产生的损失对权重求偏导后累加梯度值。这是标准的梯度计算方法,如果一次输入有N个样本就要分别要计算N次梯度,开销大。右边的式子表示的意思是,先对所有样本的激活数累后加产生的损失对权重求偏导得到一个梯度值。这种方法只计算一次梯度,开销小。所谓梯度近似,就是想利用右边的梯度近似左边的梯度。然而,这个等式成立的条件是激活函数和损失函数是线性的,通常情况下我们使用的是近似线性的,所以会产生误差,故有必要研究一下这个误差:

这个误差不等式是经过严密的数学推导而来,论文中有详细的推导过程,这里不再赘述。从上可以看出,两种梯度计算方式的误差是由帧激活数的差异和其Softmax( 是softmax函数)结果决定的。若两帧的激活数越相似,误差越小。

总结: 这一块提供数学证明解释为什么要将相似的帧聚合在一起。因为相似的帧会产生相似的激活数,从而使得梯度近似误差很小,这样一来我们就可以用计算一次和的梯度去替代计算多次梯度的和。

时间聚类和融合

当一段视频所有帧通过卷积块输出多个特征图(激活数)时,通过符号函数将其二元化,即负数置0、正数置1。然后,计算帧间的汉明距离作为相似度用于聚类。汉明距离的计算方法是对应位置做异或后统计一的个数。由于二元化后的0表示负数、1表示正数,计算汉明距离就相当于统计两个特征图中符号不一致的数值个数。合理性在于,网络采用的激活函数是ReLU,当两个特征图的符号一致时ReLU函数相当于线性激活函数,这样才满足上一节提出的等式。统计两个特征图中符号不一致的数值个数,把这个作为相似度用于聚类的本质是:想将相似的帧且是线性相关的帧尽量聚合在一起。

打开网易新闻 查看精彩图片

这篇文章采用了两种聚类方式:累积聚类(Cumulative Clustering)和 坡度聚类(Slope Clustering)。累积聚类就是把一段视频所有帧间汉明距离累加在一起,再均分为g段,那么帧i所在的组为 ,即第i帧和第i+1帧激活的汉明距离除以总的汉明距离乘以g再向上取整。坡度聚类的分类边界是汉明距离上升最快的地方,也就是斜率最大的地方作为帧分界出。下图给出了两种聚类方式的示意:

打开网易新闻 查看精彩图片

最后,将属于一组的帧激活(特征图)叠加在一起完成时间融合(Temporal Aggregation)。

实验

数据集

名称

描述

下载地址

Something-Something V1 & V2

V1包含86K个训练视频和11K个验证视频,共有174个动作分类。
V2在V1的基础上将视频扩大到220K

https://pan.baidu.com/share/init?surl=NCqL7JVoFZO6D131zGls-

A提取码:07ka

UCF-101

包含13320个视频,共101动作类别

https://link.zhihu.com/?target=https%3A//www.crcv.ucf.edu/data/UCF101/UCF101.rar

HMDB51

包含6766个视频,共51个动作分类

https://link.zhihu.com/?target=https%3A//serre-lab.clps.brown.edu/wp-content/uploads/2013/10/hmdb51_org.rar

Breakfast

包含1712视频共10个类别,都是做早餐的视频。

https://link.zhihu.com/?target=https%3A//serre-lab.clps.brown.edu/resource/breakfast-actions-dataset/

分析实验

帧越多越好?

打开网易新闻 查看精彩图片

这个实验说明,确实是模型看到的帧越多效果越好。相比之下,单独使用TSM模型比这篇论文采用的聚类融合的方法计算开销(FLOPs)和存储开销都大得多,体现了这个方法的"计算上可行"。另外,可以看出分组16个比8个好,可能是因为粒度越小误差越小。

相似的帧有相似的梯度?

打开网易新闻 查看精彩图片

可以总结出,帧激活和与梯度之间的关系接近线性相关,所以帧激活是相似的话,梯度值也是相似的。

聚类方法

打开网易新闻 查看精彩图片

累加聚类效果最好,平均分组效果最差,因为累加聚类更能将相似地帧放在一起。下图是一个可视化结果说明累加聚类的聚类边界更合理。

打开网易新闻 查看精彩图片

总结

这篇论文沿用TSM模型,在模型上并没有什么创新。其主要贡献是提供了一种高效学习视频所有帧的方法,并在数学层面和实验层面分析了其可行性,可以说同时解决了视频理解领域的计算难和信息丢失的问题。

来源:知乎

作者:Jender

深延科技|

打开网易新闻 查看精彩图片

深延科技成立于2018年1月,中关村高新技术企业,是拥有全球领先人工智能技术的企业AI服务专家。以计算机视觉、自然语言处理和数据挖掘核心技术为基础,公司推出四款平台产品——深延智能数据标注平台、深延AI开发平台、深延自动化机器学习平台、深延AI开放平台,为企业提供数据处理、模型构建和训练、隐私计算、行业算法和解决方案等一站式AI平台服务。