Enhancing Transformer for Video Understanding Using Gated Multi-Level Attention and Temporal Adversarial Training
使用门控多级注意力和时间对抗训练增强transformer进行视频理解
CVPR2021
Gated Adversarial Transformer (GAT)来提高attention-based models对视频的适用性。使用多级注意力门控来建模基于本地和全局上下文模拟帧的相关性。模型从各种粒度理解视频。GAT使用对抗性培训来增强模型概括。提出了temporal attention regularization scheme来提高模块对对抗性的鲁棒性。
GAT:
- 多级门控注意力:而不是使用单个全局概要,文章定义了一个局部和全局注意力概述,使用专门的门控混合来学习从两个profile中获得的表示的加权组合。
- temporal adversarial 训练:计算每个例子的对抗方向,并且添加注意力正则化属于来确保在注意力水平和输出分类两个方面的鲁棒性。
文章贡献:
- 在SOTA self-attention based model中观察全球注意力依赖性问题,文章提出门控多级注意力模块gated multi-level attention module。
- 为视频理解提出temporal adversarial training来增强attention-based encoder的鲁棒性。
Attention based models:
self-attention对视频分类的非本地块进行密切相关。
两级注意力机制提高现有卷几块,来收集来自各个瞬间的不同视频帧的不同斑块的相关特征。
使用transformer编码器以及NetVLAD块,以获得用于大规模视频理解的音频/视频特征的有效特征表示。
使用注意力块来计算短期和长期特征表示之间的交互以进行详细的视频理解。
“动作变换器”,其中使用3D CNN提取的特征被聚合并馈送到自我关注块,以利用一个人周围的时空信息进行动作定位。
通过在不同时间步骤中共同使用从帧中获得的贴片来施加transformer进行视频分类。
Adversarial training:
Gated Adversarial Transformer (GAT):
视频T帧D尺寸输入特征,用位置编码块对时间信息编码获得 X ∈ R T × D X\in {\Bbb R}^{T \times D} X∈RT×D,然后传递到multi-head self attention(SA)块来获得输出表示。后面是layer-normalization、残差连接和前馈层。获得跨时间维度的含义来获得视频级表示。在获得音频和视觉模态这些视频层表示。连接起来并通过一个隐藏层,最后输出。从SA块获得输出表示。此外,通过从对抗例子中正则化损失term以及vanilla cross-entropy损失term训练模型。
Gated Multi-level Self Attention:
对于视频,帧间关系在本地上下文与全局上下文中看到时不同。因此,要正确识别视频,文章将从本地的多个输出表示和全局注意映射计算。通过采用这些表示的加权组合来计算最终输出表示,由软门控机制确定权重。概述了门控多级关注架构:
在多头SA块中,M个头,输入X先转换为query、key、value矩阵,mth头,计算注意力映射 A m ∈ R T × T A_m\in{\Bbb R}^{T\times T} Am∈RT×T,query Q m ∈ R T × D M Q_m\in{\Bbb R}^{T\times D_M} Qm∈RT×DM,key K m ∈ R T × D M K_m\in {\Bbb R}^{T\times D_M} Km∈RT×DM,和value matrix V m ∈ R T × D M V_m\in {\Bbb R}^{T\times D_M} Vm∈RT×DM相乘来获得头 O g m ∈ R T × D M O_{gm}\in{\Bbb R}^{T\times D_M} Ogm∈RT×DM全局层输出表示,称之为全局级别表示因为他阿是使用使用注意图来计算的描绘了帧i相对帧j的重要性。不同头的输出连接在一起,完成线性变换来获得最后输出表示 Y g ∈ R T × D Y^g\in {\Bbb R}^{T\times D} Yg∈RT×D
Q m = X W m q , K m = X W m k , V m = X W m v Q_m=XW_m^q,K_m=XW_m^k,V_m=XW_m^v Qm=XWmq,