Dense Dilated Network for Few Shot Action Recognition

Motivation

在视频的时空信息探索中,有使用3D卷积学习时空表征,也有使用2D+1D以及TCN,但是这些方法都需要大量的数据来获得一个满意的结果。
数据稀缺问题是新出现的行动类别的一个常见问题,这阻碍了神经网络学习辨别特征。同一类别中的动作具有多种背景,这需要足够数量的带注释的视频数据来训练深度神经网络。因此作者想采用密集连接和膨胀卷积来扩大感受野,提取时空特征。

方法

在这里插入图片描述
作者采用了图像识别任务中一个新颖的DenseNet,采用密集连接来充分利用整个视频的时空信息。将一个视频分为n个片段,使用TSN分别提取空间信息和时间信息,然后使用具有密集连接的块提取特征,最后得到每个片段的预测分数,融合分数得到视频的预测结果。

Dense Dilated Blocks

DenseNet的优点不仅是防止梯度分散,而且减少了参数个数。DenseNet的层往往很窄,比如每层12个过滤器,使得整个网络易于训练和收敛。此外密集的联系有正则化的效果,尤其是在数据量很小时,可以避免过拟合。作者提出的密集扩展框架,不仅可以提高视频动作识别,还可以实现小样本学习。
在这里插入图片描述
temporal dense convolution块有L层,每层由三个操作构成:batch normalization、膨胀率为 s l = 2 l s_l=2^l sl=2l的膨胀卷积和一个ReLU函数。和传统的卷积相比,膨胀卷积可以捕捉long-term依赖,可以给与具有可鉴别信息的片段更大的权重。卷积操作是在两个时间步上应用,t和t-s,因此滤波器也可以表示为 W = { W ( 1 ) , W ( 2 ) } W=\{W^{(1)},W^{(2)}\} W={W(1),W(2)},那么膨胀卷积可以定义为:
x t l = f ( W ( 1 ) x t − s l − 1 + W ( 2 ) x t l − 1 + b ) x_t^l=f(W^{(1)}x_{t-s}^{l-1}+W^{(2)}x_t^{l-1}+b) xtl=f(W(1)xtsl1+W(2)xtl1+b) (1)
其中 x t l x_t^l xtl指的是在t时间步第l层的膨胀卷积结果,b是偏置向量。

dense connection

为了进一步提高,作者考虑在每个块内使用密集连接。将不同层学习的特征连接起来,可以为后续图层的输入提供更多变化。类内表示更容易学习,尤其是在训练数据有限的情况下。
每个TDC块i中的层具有相同的滤波器数量 k i k^i ki,这可以被认为是DenseNet中的增长率。密集连接以通道方式结合所有层,定义每个块 B i B^i Bi在时间步t时刻的输出 S t i S_t^i Sti为:
S t i = [ x t l , x t l − 1 , . . . , x t 0 ] S_t^i=[x_t^l,x_t^{l-1},...,x_t^0] Sti=[xtl,xtl1,...,xt0] (2)
S t i S_t^i Sti将所有输入concat为一个张量。

Transition layer

在块之间加上过渡层,由一个batch normalization和一个1×1卷积组成,1×1卷积实现特征的下采样。

Growth rate

将k视为不同块的增长率,每层在第i块生成 k i k^i ki特征向量,则不同块的滤波器可以写为:
k i = k i − 1 × ( l − 1 ) + k 0 k^i=k^{i-1}\times (l-1)+k^0 ki=ki1×(l1)+k0 (3)
其中 k 0 k^0 k0表示输入层的通道数,l是每个块的层数。

Dense Dilated Aggregation

作者探索了不同的连接结构来构建密集的扩张网络,设置3个块作为所有聚合的基本结构。下图展示了3种聚合策略,包括添加所有的TDC块、连接块和提取不同块的特征。利用所有块的信息可以提供整个视频的更多知识,而来自更简单网络的块的输出可以给出不同尺度的信息。
在这里插入图片描述

Adding layers

首先,作者尝试将所有的输出加在一起,由于不同块的滤波器大小不同,首先使用一个1×1卷积将所有输入对齐,然后相加。
Z t = R e L U ( V ∑ i = 0 B − 1 S t i + e ) Z_t=ReLU(V\sum_{i=0}^{B-1}S_t^i+e) Zt=ReLU(Vi=0B1Sti+e) (4)
其中V是权重矩阵,e为偏差,将该模块成为扩展膨胀卷积聚合DDA。

Concatenating layers

为了使感受野更宽,作者又探索连接不同层的输出,最后一层比其他连接方法具有更大范围的通道数。
Z t = R e L U ( [ S t B − 1 , s t B − 2 , . . . , S t 0 ] + e ) Z_t=ReLU([S_t^{B-1},s_t^{B-2},...,S_t^0]+e) Zt=ReLU([StB1,stB2,...,St0]+e) (5)
该模块成为DDC。

Output features of different blocks

作者提取不同块的输出来执行视频动作的识别。将输出视为片段级别的表征,这有助于对提出的体系结构有更多的了解。这也将在调整超参数时提供有用的信息。作者将每个块的输出特征成为DD1、DD2和DD3。

与提取特征相比,add和concat的方式可能是冗余的,这产生了不必要的信息,不仅使网络更加复杂,而且使其更难在小数据集上收敛。

分类

作者取最后一层softmax层之前的作为所有dense dilated网络的输出,输出特征为n×d,n为片段个数,d为特征维度。使用SVM预测每个片段的class label,最后使用多票数决定视频级的预测结果。

实验

在这里插入图片描述
在这里插入图片描述

结论

作者提出了一个扩展的基于密集连接的深度网络体系结构,通过在原型学习环境中构建问题来处理小样本动作识别。
1、提出了一个新的神经网络结构,其结合了扩展时间卷积和密集连接层来实现视频行为识别。
2、提出了dilated dense block,其可以从片段级和long-term context里捕获时空信息。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秃头嘤嘤魔

感谢厚爱

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值