TimeSformer 视频分类 的Transformer架构 Vision Transformer(ViT) 无卷积架构 时空自注意力机制

TimeSformer是Facebook AI提出的无卷积视频分类方法,它基于ViT的时空自注意力机制,无需传统CNN,能有效处理视频的时空信息。在Kinetics-400上,TimeSformer-L的准确率达到80.7%,超越TSN、TSM和SlowFast,具有更快的训练速度和更高的测试效率。

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

TimeSformer

TimeSformer是Facebook AI在2021年提出的一种用于视频分类的Transformer架构,它成功地将Vision Transformer(ViT)的概念扩展到了视频领域。

TimeSformer的主要特点包括:

无卷积架构:TimeSformer采用纯Transformer架构,摒弃了传统的卷积神经网络(CNN)。它基于自注意力机制对视频帧中的空间和时间信息进行建模,从而能够捕获长距离依赖关系。

时空自注意力机制:TimeSformer将ViT的空间自注意力机制扩展到时空维度,使其能够同时处理视频帧中的空间信息和时间信息。这种机制允许模型从一系列帧中提取有意义的时空特征,这对于视频分类等任务至关重要。

高效性能:在多个行为识别基准测试中,TimeSformer取得了显著的性能提升。例如,在Kinetics-400数据集上,TimeSformer-L达到了80.7%的准确率,超过了基于CNN的模型如TSN、TSM和SlowFast。此外,TimeSformer的训练速度更快,测试效率更高,并且可以处理更长的视频片段。

模型灵活性:TimeSformer的架构非常灵活,可以适应不同大小和长度的视频输入。这使得它能够在各种视频任务中发挥作用,包括动作识别、视频分割、视频生成等。

可扩展性:由于Transformer的并行计算特性,TimeSformer可以很容易地扩展到大规模数据和大规模模型。这使得它能够处理更复杂的视频任务,并进一步提高性能。

TimeSformer通过引入时空自注意力机制,成功地将Transformer架构应用于视频分类领域,并取得了显著的性能提升。它的高效性能和灵活性使得它成为处理视频数据的强大工具。

1. TimeSformer 简介

论文地址:Is Space-Time Attention All You Need for Video Understanding?

TimeSformer是Facebook AI于2021年提出的无卷积视频分类方法,该方法使用ViT网络结构作为backbone,提出时空自注意力机制,以此代替了传统的卷积网络。与图像只具有空间信息不同,视频还包含时间信息,因此TimeSformer对一系列的帧级图像块进行时空特征提取,从而适配视频任务。TimeSformer在多个行为识别基准测试中达到了SOTA效果,其中包括TimeSformer-L在Kinetics-400上达到了80.7的准确率,超过了经典的基于CNN的视频分类模型TSN、TSM及Slowfast,而且有更短的训练用时(Kinetics-400数据集训练用时39小时)。同时,与3D卷积网络相比,TimeSformer的模型训练速度更快,拥有更高的测试效率,并且可以处理超过一分钟的视频片段。

2. 模型介绍

输入视频片段

TimeSformer的输入 X ∈ R H × W × 3 × F X \in \mathbb{R}^{H \times W \times 3 \times F} XRH×W×3×F 为一段视频片段,由 F F F 个从视频中采样的大小为 H × W H \times W H×W​ 的 RGB 图片帧组成。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

图1:输入视频片段由一系列的图片帧构成

图像块拆分

与 ViT 结构相同,TimeSformer将每一帧的图像分割成 N N N 个不重叠的图像块,每个图像块的大小为 P × P P \times P P×P。因为要确保每一帧被划分为 N N N 个不重叠的图像块,因此 N N N 的计算方式为: N = H W / P 2 N = HW / P^2 N=HW/P2。我们将划分好的图像块展平为 x ( p , t ) ∈ R 3 P 2 x_{(p,t)} \in \mathbb{R}^{3P^2} x(p,t)R3P2 的向量,其中 p = 1 , . . . , N p = 1, ..., N p=1,...,N 代表图像块的位置, t = 1 , . . . , F t = 1, ..., F t=1,...,F 代表帧的索引。

图2:将图像帧切割成图像块

线性嵌入

我们将每一个图像块 x ( p , t ) x_{(p,t)} x(p,t) 通过一个线性嵌入层转化为向量 z ( p , t ) ( 0 ) ∈ R D z_{(p,t)}^{(0)} \in \mathbb{R}^D z(p,t)(0)RD​ :

z ( p , t ) ( 0 ) = E x ( p , t ) + e ( p , t ) p o s z_{(p,t)}^{(0)} = Ex_{(p,t)} + e_{(p,t)}^{pos} z(p,t)(0)=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

EwenWanW

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值