TSN 论文阅读

TSN论文

提出的动机

TSN全称——Temporal Segment Networks,一种用于对视频中动作进行识别的网络。以往的视频动作识别所运用的神经网络会受到如下的限制:

  1. 长度问题。因为传统方法只关注于短期的动作,依赖于稠密采样(这样会带来超高的计算复杂度,同时对长视频进行采样会有丢失重要信息的风险)。
  2. 视频未裁剪。没有把可能会干扰动作识别模型的背景帧去掉。
  3. 构建模型存在困难。公开能获得的数据集无论是尺寸还是多样性都不够充足,使用光流提取带来了巨额的计算消耗,所以计算能力也成为了限制模型构建的一个瓶颈。

文章对以上三个问题都提出了解决的方案,给出了一个思路简单、灵活并且具有适用性的框架。(该框架使用的是全局的稀疏抽样策略基于连续帧有大量冗余的视频)

  1. 给出了关于长视频学习的解决方案。
  2. 分层聚合方案,将动作识别模型应用于未剪裁的视频。
  3. 调研了一系列好的方法来学习和应用深度动作识别模型。

为什么要基于段采样?

  1. 计算的角度。稠密的局部采样会带来大的计算量。
  2. 建模的角度。由于固定的采样间隔,所以时间上的覆盖范围依然很局部和受限。难于去捕获完整视频的视觉内容。(其实是因为对整个视频进行稠密的采样是不现实的)

所以采取了一种段采样的策略。所基于的思想就是:虽然帧被很密集地记录在视频中,但是其内容的变化是非常缓慢的。所以这种均匀的稀疏全局的采样策略总能大致地覆盖整个视频的额视觉片段。所以,采样的帧数将会被固定为一个独立于视频长度的初始值。

框架和公式

框架整体流程

网络框架的主要流程如下3点:

  1. 将视频分成K段。这每个片段都有一个卷积网络,但是所有片段的卷积网络都是共享参数的。
  2. 每个视频序列中随机地提取出小的片段。
  3. 使用段共识函数(segmental consensus function)聚合信息(这里的信息是通过神经网络传出来的视觉特征)。TSN网络能对整个视频的长时间结构进行建模。而这个建模所花费的时间其实是与视频长度无关的,只与视频分的段数相关。

请添加图片描述

根据上图,给出了论文中的第一个公式,该公式是对整个网络的一个整体描述

T S N ( T 1 , T 2 , … , T K ) = H ( G ( F ( T 1 ; W ) , F ( T 2 ; W ) , ⋯   , F ( T K ; W ) ) ) TSN(T_1,T_2,\dots,T_K)={\mathcal H}({\mathcal G}({\mathcal F}(T_1;{\bold W}),{\mathcal F}(T_2;{\bold W}),\cdots,{\mathcal F}(T_K;{\bold W}))) TSN(T1,T2,,TK)=H(G(F(T1;W),F(T2;W),,F(TK;W)))

其中出现的 F ( T 1 ; W ) F(T_1;W) F(T1;W)函数代表的是第1个卷积网络,W为权重,用于产生类别分数。 G G G为分段共识函数,用于结合多个短片段的输出以获得他们之间的类假设聚合结果(就是综合每个片段对第i个类的分数,进行综合判断)。 H H H为预测函数,论文中用的就是softmax函数。

损失函数

L ( y , G ) = − ∑ i = 1 C y i ( g i − l o g ∑ j = 1 C e g j ) {\mathcal L}(y, G)=-\sum\limits_{i=1}^C y_i\left(g_i-log\sum\limits_{j=1}^C e^{g_j}\right) L(y,G)=i=1Cyi(gilogj=1Cegj)

∂ L ( y , G ) ∂ W = ∂ L ∂ G ∑ k = 1 K ∂ G ∂ F ( T k ) ∂ F ( T k ) ∂ W \frac{\partial{\mathcal L}(y,G)}{\partial W}=\frac{\partial{\mathcal L}}{\partial G}\sum\limits_{k=1}^K\frac{\partial G}{\partial{\mathcal F}(T_k)}\frac{\partial{\mathcal F}(T_k)}{\partial W} WL(y,G)=GLk=1KF(Tk)GWF(Tk)

损失函数和损失函数对权重的导数如上所示。C代表动作类别的个数,yi代表第i个动作类别的正确标签,g代表分段聚合函数(G)的第j个动作的值,小写的k代表第k个(总共有大写的K个)卷积神经网络。

聚合函数的分析

字母的定义顺延损失函数开头的定义。

  1. 最大池化。 g i = m a x k ∈ { 1 , 2 , … , K } f i k g_i={\rm max}_{k\in\{1,2,\dots,K\}}f_i^k gi=maxk{ 1,2,,K}fik该式为第i个动作的聚合函数的输出值,代表的是总共K个片段的神经网络输出中对第i个动作的判断值中最大的那个。f取自于 F k = F ( T k ; W ) {\bold F}^k={\mathcal F}(T_k;W) Fk=F(Tk;W),所以可以得到第i个动作的聚合函数对权重为W的卷积网络的第i个输出(动作)的导数:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值