学习笔记------Collaborative Spatioitemporal Feature Learning for Video Action Recognition

5 篇文章 0 订阅
4 篇文章 0 订阅

Collaborative Spatioitemporal Feature Learning for Video Action Recognition

用于行为识别的协同时空特征学习方法


keywords:时空特征的联合学习

和现有神经网网络的区别
现有神经网络: 现有神经网络要么分别学习时间特征和空间特征,要么不加控制的联合学习时间和空间特征
本文的神经网络:提出了一个对于神经网络新颖的操作,通过在可学习的参数上添加权重共享来约束时空特征的编码融合。


现在进行行为识别的神经网络,有两个问题仍未被解决:
1. 如何学习时间特征
2. 如何将空间特征和时间特征很好地结合起来

解决上述问题现在有以下几种尝试;
1. 设计时间特征并将时间和空间特征作为输入送到双流网络中
2. 3D卷及网络将时间特征和空间特征紧密纠缠,共同学习,因此时空特征可以直接从网络中学习到。
然而,3D卷积网络的大量参数和计算量限制了模型的性能。

本文提出了一种联合时空特征学习操作(CoST),可以在权重共享约束下联合学习时空特征。


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
CoST操作的具体步骤:

给出视频序列的3D向量,本文从不同角度将其分解为3个2D图像集合,然后用卷积操作分别对三个图像集合进行卷积。从三个角度得到的视频序列分别是:
1. 我们平时见到的是H-W视角,即就是将H-W看作是一个平面,T作为一个维度将该平面扩充。
2. T-W视角, 即将T-W看作是一个平面,H作为一个单独的唯度将该平面扩充。
3. T-H视角, 即将T-H看做一个平面,W作为一个单独的维度将该平面扩充。


这样的设计使得每一帧都包含有丰富的动作信息,而不是两帧之间才有动作信息。这种方法使得2D的卷积能够捕捉到时序动作线索。也能使得作者可以通过2D的卷积学习到时空特征而不用3D卷积。

不同视图共享参数的原因有:
1. 不同视图生成的图像是可以兼容的,从图中可以看到,T-H,T-W视图形成的图像仍然存在像边,角一样的边缘信息。因此可以共享权重。
2. C2D网络的卷积核是内在冗余的,可以通过权重共享的方式进行学习时域特征。
3. 模型的参数量大大减少,网络可以更加容易的进行训练。
  另外,在空间与学习到的特征很容易通过巧妙设计网络结构和预训练参数迁移到时间域中。
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  不同视角的互补特征通过加权求和得到融合,算法为每个视角的每个通道学习出独立的参数,从而可以按需学习出时空特征。基于这些参数,可以将时间域和空间域各自的贡献量量化进行一些量化分析。

本文基于CoST操作,构建了一个卷积神经网络。本文构建的卷积神经网络相比于C2D相比,CoST可以联合的学习到时空特征,和C3D相比,CoST是基于2D卷积的,CoST连接了C2D和C3D。实验表明,CoST的性能比C2D和C3D都要好。

本文的贡献如下:
1. 提出了CoST操作,用2D卷积代替3D卷积学习出了时空特征。
2. 这是首次将空间特征和时间特征的重要性定量分析。
3. CoST的性能比C3D以及他的变体好,在大型数据集上达到了最好的效果。

相关工作

介绍了传统的基于手工特征的算法,其中性能能最好的是光流引导下沿轨迹的局部特征。介绍了双流网络以及LSTM对时序演变的建模。介绍了C3D和C3D的演变模型。与作者提出的算法最为相近的是Slicing CNN,也是从不同视角学习模型进行对人群的识别。不同的是,该算法从不同的网络分支中独立的学习三个视角的特征,最后在网络顶层进行合并。而本文是联合学习时空特征,时空特征的聚合在每一层都进行。

方法

2D ConNets

C2D模型能够取出鲁棒性的空间特征,但是只用了很简单的策略将空间和时间特征结合在一起。在本文中,作者以C2D为baseline模型,以ResNet为骨架网络,构建了一个网络结构。
下图是ResNet50结构:

3D ConNets

C3D是C2D的改进,增加了时间维度,将h*w的卷积核变成了t*h*w的卷积核。下图中(b)和(c)时C3D的两种卷积方式,很明显的可以看出,(c)的参数量比(b)的参数量要小很多,而实验结果表明(c)的效果和(b)的效果不相上下,作者采用(c)结构来作为C3D的baseline模型。

 

 


CoST

下图对比了CoST操作和C3D3*3*3和C3D3*1*1,c3D3*1*1,C3D3*3*3利用3D卷积将时间和空间特征联合提取出来,C3D3*1*1首先用3*1*1的卷积核提取时间上的特征,然后用1*3*3的卷积核提取空间特征。作者用3个3*3*3的2D卷积核从三个视角分别进行卷积操作,然后通过加权求和将三个特征图进行融合,注意,这里的三个卷积核参数是共享的,参数可以通过端到端的方法进行训练。

 

输入的特征大小为T*H*W*C1, C1为输入特征的通道数,三个视角的卷积操作可以表示为:

 

其中,圆圈里面一个叉叉的符号表示3D卷积操作,w是增加了一个维度的三个视角共享3*3的卷积。
得到三个视角的特征后,对其进行加权求和得到该层最终的输出:


其中,a = [ahw, atw, ath], a是一个C2*3大小的矩阵,其中3表示三个视角。为了避免从多个视图得到的响应发生巨大爆炸,a用softmax函数对每一行进行归一化。

在本文中,作者采用了两种CoST结构,如图所示:

CoST(a)
系数a被认为是模型参数的一部分,在反向传播的时候可以被更新,当进行识别的时候参数是固定的。

CoST(b)
系数a是基于特征被网络预测得到的,这个设计灵感来自于最近的自适应机制。每个样本的系数值取决于样本自己。首先进行全局Pooling将三个视角的特征pooling为1*1*1,然后再用1*1*1的卷积核进行卷积,这里的参数也是共享的,接着将三个特征拼接起来送到全连接FC层,最后通过softmax()函数进行归一化处理。

CoST与C2D,C3D的联系
如上图所示,如果将T-W和T-H的系数设置为0,这个时候网络就退化成了C2D。因此,CoST是严格一般化的C2D。
CoST可以看作是特殊化的C3D,3D卷积核的参数是K^3,可以看做是一个3*3的立方体空间,而CoST的参数量为3k^2 - 3k +1 ,可以看做图中的立方体去了八个角的剩余的部分。如果参数没有共享,CoST非常接近C3D除了八个角的参数被设置成0并且不可以被学习,如果有参数共享,虽然感受野的大小只有19个,对应的19个参数可以从不同视图之间共享的9个可学习参数中派生而来。计算量方面,CoST也远胜于C3D。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值