ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

【论文笔记】Vedio Transformer Network

2021-12-09 15:02:28  阅读:266  来源: 互联网

标签:Transformer Vedio Network 滑窗 attention VTN token 机制 Longformer


论文地址:https://arxiv.org/abs/2102.00719

1 VTN的作用

1.1 提出问题

  • 视频识别任务过度依赖卷积网络

    处理时间维度的基本方法是使用3D卷积网络

    存在计算量过大的问题

  • 基于transformer的模型在处理长视频序列时受到限制,因为自我注意操作每层复杂度为 O ( n 2 ) O(n^{2}) O(n2)(n为序列长度)

1.2 解决方法

  • 抛弃3D网络。使用最先进的2D架构来学习空间特征表示,并在随后的数据流中添加时间信息,在结果特征之上使用注意机制。
    并且输入只有RGB视频帧

  • VTN的时间处理组件是基于Longformer,可以处理长视频序列。

    Longformer通过引入复杂度为 O ( n ) O(n) O(n) 的注意机制实现了冗长的文档处理。这种注意机制结合了局部上下文的自我注意(通过滑动窗口执行)和特定于任务的全局注意。

2 VTN的结构

image-20211202165117220

上图为VTN结构。连接三个模块:

  • 二维空间特征提取模型(空间backbone)
  • 基于时间注意力的编码器(该工作中使用Longformer),它使用特征向量 ϕ i \phi_{i} ϕi​ 和位置编码的结合。
  • 分类器 MLP head,它通过 [ C L S ] [CLS] [CLS] 指令处理得到最后的类别预测。
    【补充】 head:head是获取网络输出内容的网络,利用之前提取的特征,head利用这些特征,做出预测。

2.1 空间backbone

  • 特点:可以是任何用于2D图像的网络,不论深浅、是否为预训练、基于卷积还是transformer、权重固定还是在训练中学习
  • 论文中使用的backbone
    • ViT-B-VTN: 在ImageNet-21K上预训练, 12层,12个head
    • DeiT-B/BD/Ti-VTN:在ImageNet上预训练,12层,12个head
    • R50/101-VTN:在ImageNet上预训练,标准的2D ResNet-50 和 ResNet-101 网络

2.2 基于时间注意力的编码器

本文作者使用Longformer模块在推理过程中一次性处理整个视频。

  • Longformer操作使用滑动窗口注意,使计算的复杂度为线性

  • 在通过Longformer层传播序列之后,使用与 [ C L S ] [CLS ] [CLS]分类标记相关的特征的最终状态作为视频的最终表示,并将其应用于给定的分类任务头。

2.3 分类器 MLP head

MLP head包含两个线性层与者之间存在的一个GELU激活函数和Dropout。输入标记表示首先使用层归一化进行处理。

3 实验结果分析

3.1 不同backbone变体

image-20211206110843931

  • ViT-B-VTN是性能最好的模型,top-1准确率为78.6%,top-5准确率为93.7%。
  • 预训练数据集很重要。使用相同的ViT backbone,只是在DeiT(在ImageNet上预训练)和ViT(在ImageNet-21K上预训练)在结果上得到了改善。

3.2 不同Longformer深度

image-20211206111945941

1、3、6、12层Longformer的表现相差不大,可能是Kinetics-400数据集的视频只有10s,相对较短。

3.3 不同Longformer位置嵌入的方式

image-20211206112213682

  • 没有任何位置嵌入的版本比固定和学习版本的效果稍好。并且打乱输入帧后效果更好。
  • 这也可能与Kinetics-400数据集相对较短有关,作者认为这可能意味着该数据集主要是一个静态框架,基于外观的分类问题而不是一个运动问题。

3.4 不同帧数和每帧的占用时间

image-20211206144051807

top-1和top-5精度相似,说明VTN不受这些超参数的影响。

3.5 微调2D backbone

image-20211206145242610

微调2D backbone 使Kinetics-400数据集中top1的准确率提升了7%

3.6 与其他方法的比较

image-20211206155223723

  • 与目前最先进的SlowFast模型相比,单层的ViT-B-VTN模型就几乎实现了相同的结果,但完成一个周期更快,所需的时间更少。**端到端训练累计快了16倍。**由于采用了完整的视频推理方法,验证墙运行时间也缩短了5倍。
  • 本文的方法达到79.8%的top-1精度,与未进行此类增强的训练的相同模型相比,提高了1.2%。
  • 增强训练需要10个以上的周期,但不会影响训练墙的运行时间。

4【补充知识】Longformer

论文地址:https://arxiv.org/abs/2004.05150

4.1 Longformer解决的问题

  • 问题

    传统Tranformer-based模型在处理长文本时有着天然的劣势。因为传统模型采用的是“全连接”型的attention机制,即每一个token都要与其他所有token进行交互。其attention复杂度高达 O ( n 2 ) O(n^{2}) O(n2)

    此前的解决办法是将长文切分为若干个较短的文本序列,然后逐个处理。这就导致不同的文本序列之间无法进行交互,因而必然存在大量信息损失。

    当然,我们也可以通过添加一些其他机制来加强这种文本序列之间的交互。但这种新增机制实现起来通常比较复杂,而且往往是特定任务的,通用性不强。

  • 解决方法

    Longformer改进了Transformer的传统attention机制:对于每一个token,只对固定窗口大小的附近token计算local attention,并结合具体任务,计算少量的global attention。该方法的优点包括:

    • 复杂度低,将attention机制的复杂度降至 O ( n ) O(n) O(n)

    • 通用性强,可用于各类文档级任务

    • 部署容易。

4.2 模型

作者共提出了三种新的attention pattern,来降低传统self-attention的复杂度,分别是滑窗机制膨胀滑窗机制融合全局信息的滑窗机制。下图展示了传统attention与这三种attention pattern的示意图。

img

  1. 滑窗机制(Sliding window): 对于每一个token,只对其附近的w个token计算attention计算复杂度与文本序列长度 n n n成线性关系,为 O ( w ∗ n ) O(w*n) O(w∗n)。作者认为,根据应用任务的不同可以对Transformer每一层施以不同的窗口大小 w w w,对模型表示能力可能有潜在帮助。
  2. 膨胀滑窗机制(Dilated sliding window): 在对每一个进行token编码时,普通滑窗机制只能考虑到长度为 w w w的上下文。作者进一步提出膨胀滑窗机制,在不增加计算负荷的前提下,拓宽模型“视场”。其做法借鉴了空洞卷积的思想。如下图所示,在滑动窗口中,被attend到的两个相邻token之间会存在大小为 d d d的间隙。当transformer的层数为 l l l时,则视场范围可达到 l ∗ d ∗ w l*d*w l∗d∗w。实验表明,由于考虑了更加全面的上下文信息,膨胀滑窗机制比普通的滑窗机制表现更佳。
  3. 融合全局信息的滑窗机制(Global+sliding window): 在Longformer中,作者希望能够根据具体任务的不同,在local attention的基础上添加少量的global attention。比如,在分类任务上就会在 [ C L S ] [CLS] [CLS] 处添加一个global attention,而在QA任务上会对question中的所有token添加global attention。如上图所示,对于添加了global attention的token,我们对其编码时要对整个序列做attention。并且,编码其他所有token时,也都要attend到它。

标签:Transformer,Vedio,Network,滑窗,attention,VTN,token,机制,Longformer
来源: https://blog.csdn.net/qq_40817314/article/details/121822433

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有