赶上最新的AI论文

最后,ViT已经来到了视频识别领域!

Transformer

三个要点
✔️我们首次提出了一个仅使用转化器的视频分类模型,并旨在使ViT成为一个视频版本。
✔️为了提高计算效率,我们提出了四种不同的架构,并进行了详细的消融实验。
✔️实现了5项基准的SOTA。

ViViT: A Video Vision Transformer
written by Anurag ArnabMostafa DehghaniGeorg HeigoldChen SunMario LučićCordelia Schmid
(Submitted on 29 Mar 2021 (v1), last revised 1 Nov 2021 (this version, v2))
Comments: 
ICCV 2021
Subjects: Computer Vision and Pattern Recognition (cs.CV)

code:  

本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的。

简介

Transformer在自然语言处理的一些任务上取得了SOTA性能。现在,凭借ViT(Vision Transformer)[一种新的图像识别模型,即Vision Transformer],它已经进入了图像处理领域,成为机器学习领域的超级明星。另一方面,它是一种计算成本很高的算法,因为它计算的是输入对之间的关系。目前正在对解决这一计算问题的方法进行大量的研究,我们期待着在未来看到更多关于Transformer的工作。

在这篇文章中,我们介绍了ViViT(A Video Vision Transformer),它是Transformer对视频分类的扩展。与之前的视频分类工作不同的是,ViViT是一个只使用转化器的模型,它将转化器与3D CNN结合起来。由于转化器的计算复杂性在视频分类中比较明显,我们提出了四种不同的模型来处理计算复杂性问题。经过大量的消融实验和对所提方法ViViT的分析,我们发现ViViT实现了SOTA在五个著名的基准上。

视频视像变形金刚

在本章中,我们将对视觉变形器(ViT)进行概述,然后展示如何从视频中提取信息。最后,描述了拟议的视频分类方法。另外图1.显示了我们提议的架构的概况。

视觉变压器(ViT)的概述

ViT是一种适应于二维图像的方法,对变压器结构的改变最小。 它将二维图像分成N个斑块x_i,并通过变换器E得到一维的z_i。分类令牌(z_cls), aP,代表位置信息,和从N个z_i,我们可以准备变压器编码器的输入序列z(公式1)。

串联的Z被输入到L层的变压器。每层由多头自留地(MSA)、层规范化(LN)和MLP组成,如公式(2)和(3)所示。

最后一层的分类标记(z_cls),它被用来根据任务对数据进行分类。

嵌入视频片断

这里我们展示了两种不同的方法,即从视频 ,获得构成Transformer Encoder的输入标记z的补丁x,它比二维图像大一维。

统一的框架抽样

最简单的统一框架抽样如图2所示。在每个时间段,斑块x像ViT一样被划分,斑块x按时间排序。

小管包埋

图3.显示了在时空轴上提取药片的情况。

用于视频的变压器模型

这里将依次描述本研究提出的四种类型的架构。

我们将从一个更简单的版本开始,在这个版本中,一系列捕捉时空信息的标记被输入到转化器。

下一步是引入一个结构,以三种不同方式捕捉时间序列信息和 "空间信息"。特别是,我们改进了三个部分:编码器、自我注意和注意的内部积。

模型1:空间-时间的注意

模型1从视频中提取含有时空信息的标记z,并将其输入到变换器编码器,该编码器通过MSA层的成对互动交换信息。然而,视频的计算复杂性是一个问题。

模型2:因数化编码器

图4所示的模型2是一个因数化编码器,即它有两个具有不同作用的编码器。

第一个是捕捉空间信息的编码器(空间变换器编码器)。它同时从框架中提取令牌,并与它们进行互动。一个帧在某一特定时间的表示是通过L层转化器后的分类标记(z_cls).分类令牌(z_cls)可以预先准备好,也可以对整体进行平均。每个时间的串联表示(z_cls)被输入到第二个时间序列编码器(Temporal Transformer Encoder)。时间序列编码器输出的分类标记(z_cls)被用于最终的分类器。

事实上,模型2比模型1使用了更多的转换层,但分别计算空间和时间信息,因此需要较少的计算量(荧光剂(FLOPs)).

模型3:因子化的自我注意

模型3.在自我注意机制上进行了与模型2在编码器层面上一样的时空信息分离。具体来说,模型1在自我注意层使用所有捕捉时间和空间信息的标记,而模型3只使用捕捉空间信息的标记进行注意计算,然后只针对空间信息进行注意计算。它可以被表述为方程(4)、(5)和(6)。

模型3的结构如图5所示,在计算复杂性方面与模型2相当。

模型4:因数化点阵关注

最后一个模型,即模型4,通过将时空计算与Attention内积计算分开,实现了与模型2和模型3相同的计算复杂性。

如图6所示,内积计算的一半头是用空间标记完成的,而另一半是用时间标记完成的。

实验

这里我们描述了消融实验及其在五个数据集上的评估。然而,关于实验和实施的细节,我们请读者参考原始论文。

消融实验

首先,我们研究如何从2.2中提出的视频中对补丁x进行采样。从表1的结果可以看出,小管嵌入的中心帧格式是最准确的,所以我们在下面的实验中使用中心帧格式。

中心框架是小管子嵌入中使用的一种三维滤波器初始化:虽然滤波器膨胀(公式8.)在所有三维时间使用二维滤波器值,但中心框架(公式9.)使用中央框架(公式9.)将二维滤波器的初始值应用于中央位置。

表2.显示了四个模型在K400和EK数据集上的结果。

结果显示,模型1.对K400来说是最准确的,但模型2.对EK来说更胜一筹。这意味着模型1过度拟合较小的数据集EK。

我们还删除了模型2的Transformer层,该层捕捉时间信息,并增加了一个Baseline,该层直接使用帧级表示进行分类。这些变化的结果(尤其是对尤其是EK)。这些结果显示了时间信息的重要作用。

此外,ViViT还采用了CNN架构中常用的正则化和数据增强方法,其逐步加入的结果见表4。

最后,从图8中可以看出,用于小管嵌入的平板尺寸越小,精确度越高。

与SOTA的比较

从上述消融实验中,使用模型2.因子化编码器(FE)进行了比较,从表6可以看出,在五个数据集上实现了SOTA。

表6.(a)和(b)显示了Kinetics 400&600的结果,表明ViViT在较少的帧视图下取得了比现有基于CNN的方法更好的准确性。我们还显示我们可以看到,当训练数据为JFT时,训练后的模型ViT的准确性得到进一步提高。

表6.(c)显示,ViViT在Moments in Time数据集上实现了SOTA,Moments in Time数据集上的准确度低于其他数据集,这可以归因于存在更多的噪声。

如表6.(d)所示,它在Epic Kitchens 100数据集上的表现明显优于现有方法。特别是,对于不同类型的预测,如动词和名词,我们只需要两个预测头,而不必为每个预测使用专门的损失函数。

最后,表6.(e)显示了Something-Something v2的结果,它也明显优于基于纯变压器的方法TimeSformer-HR。在这里我们也看到,所提出的方法明显优于纯粹的基于变换器的方法TimeSformer-HR,因为TimeSformer-HR没有考虑到分解时空信息的编码器和表4中显示的限制。

摘要

在这篇文章中,我们介绍了ViViT,一种只使用变换器结构的视频分类方法,并提出了四种不同的模型来使用ViT处理视频中的时间信息。通过详细的消融实验,我们选择了因子化编码器模型,该模型在准确性和计算复杂性方面具有良好的平衡性,并与以前的研究进行了比较。

通过在所有五个数据集上实现SOTA,我们已经表明,即使是一个纯粹的Transformer结构也能有效地处理视频时空信息。我们希望这项工作将使视频研究达到与图像处理相同的关注程度。

  • メルマガ登録(ver
  • ライター
  • エンジニア_大募集!!

如果您对文章内容有任何改进建议等,请通过 "联系我们 "表格与爱学网编辑部联系。
如果您能通过咨询表与我们联系,我们将非常感激。

联系我们