Timeception Complex Action Recognition

本文围绕Timeception复杂动作识别展开,当前很多工作关注短范围行为识别,而该研究聚焦长范围复杂行为。提出Timeception,可同时关注长短时间序列信息,容忍行为时间差异。介绍了设计时空CNN的原则、Timeception层的构建方法,还进行了相关实验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Timeception Complex Action Recognition

地址:https://arxiv.org/pdf/1812.01289.pdf

introduction

当前的很多工作主要关注short-range的行为识别,如:ucf101,hmdb51 & kinetics。而我们主要关注long range & complex 的行为。该任务的两个难点:1)如何同时建立 minute-long temporal modeling 和seconds-long details(对长序列建模的同时,也关注短序列) 2)当前的时空卷积通常是fixed-size kernels,如何建立不同尺度?。所以本文提出:Timeception,1)同时关注长短时间内的序列信息 2)容忍行为在时间范围内的差异(是指可以学习短序列,也可以学习长序列么?)

贡献:1)learn minute-long action ranges of 1024 timesteps; 2)introduce multi-scale temporal kernels ;3) use temporal-only convolutions;

method

1.motivation

提出质疑:当前的3d卷积中,没人证明为什么要同时学习时空特征。

虽然有方法认为可将3d卷积解耦成 空间卷积1*L*L和时间卷积 T*1*1,但这种方式的解耦并不是必须的,我们可以将解耦定义为:

也就是没必要解耦成空间与时间链接or交替的方式。

2.设计时空CNN的3个原则

1)Subspace Modularity 子空间模块化

2)Subspace Balance

3)Subspace Efficiency

(这里几个原则,可能理解起来就是 设计一个module可以很方便/lightweight的用于现有的很多网络中)

3.提出的Timeception layers

对长视频建模的两个目标:1) learn the possible long-range temporal dependencies ;2)容忍不同的时长。

1)如何学习long-range tenporal dependencies?

本文提出了temporal-only的convolution:T*1*1*1,每个kernel只在一个channel上作用。

如果堆积很多temporal-only 的卷积层不好,所以使用:use channel grouping operation before the temporal-only convolutions and channel shuffling operation after the temporal-only convolutions.

有点像shuffle-net中分组卷积,每个temporal-only的卷积只对当前这一小组的特征进行作用;分组卷积完成后,在引入channel shuffle,这样就能融合不同尺度的特征。

2)如何Tolerating Variant Temporal Extents?

将上面提到的temporal-only的卷积 换成 multi-scale temporal kernels,两种方式:a) inception 结构 b)dalated 卷积(减少参数)

这里有点想捕获不同时间范畴的信息,所以引入不同尺度的kernel size,实现长短信息交互。

3)提出的卷积模型

 

图b:时间卷积操作的kernel size:3,5,7;在channel维度concat

图a:先分组卷积,再在channel维度concat;这里shuffle并不是完全引入random shufle这样的操作,而是一种“flatten-reshape-flatten”的操作;具体可以看shuffle-net的实现。

experiment

1.数据集: Charades,Breakfast Actions,MultiTHUMOS

2. Original v.s. Altered Temporal Extents

先训练两个baseline,一个用mulit-scale temporal kernel,另一个用fixed-sized kernel。结果:(虽然有提高,但这个结果并木有report baseline?)

 

3.Fixed-size vs. Multi-scale Temporal Kernels

 

个人想法:

本文好像就是提出了Timeception 层,只做时间维度的1d卷积,然后像inception一样把不同卷积核大小输出的结果在channel维度链接。(也可以是dalated 卷积实现)

第一次看这篇paper时,完全没看懂shuffle操作,shuffle层在代码中:

一开始感觉就是shape的转换,怎么就可以实现shuffle了?不过后来看了一下shuffle-net才明白~

不过这篇paper是将提出的Timeception层接在网络的最后面(应该是这样的,具体我也没细看)感觉也有点奇怪,有点像是在hige-level对不同帧特征进行时序融合。我之前参考Timeception的思想,将这样的时序关系学习引入在resnet中间,好像性能反而降了很多...这两周有空试试接在resnet最后面看看有木有效果~

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值