UniFormer & UniFormerV2 论文笔记

Author: Sijin Yu

1. Information

标题: UniFormer: Unified Transformer for Efficient Spatiotemporal Representation Learning

arXiv URL: https://arxiv.org/abs/2201.04676

code: https://github.com/Sense-X/UniFormer

期刊/会议: ICLR2022

发表时间: 2022 年 01 月

标题: UniFormerV2: Spatiotemporal Learning by Arming Image ViTs with Video UniFormer

arXiv URL: https://arxiv.org/abs/2211.09552

code: https://github.com/OpenGVLab/UniFormerV2

期刊/会议: ICCV2023

发表时间: 2022 年 11 月


2. Abstract (UniFormer)

3. Methods (UniFormer)

3.1 Overview

1

3.2 Dynamic Position Embedding (DPE)

(4)DPE(Xin)=DWConv(Xin)

DWConv() 是 0 填充的简单 3D depthwise 卷积.它的输出不改变

3.3 Multi-Head Relation Aggregator (MHRA)

4. Experiment & Result (UniFormer)

4.1 和 SOTA 的对比

下图: 在 Kinetics-400 和 Kinetics-600 上的对比, 以低计算代价达到 SOTA 性能.

2

下图: 在 Something-Something V1 和 Something-Something V2 上达到 SOTA.

3

下图: 在计算代价和准确率之间的平衡. (横轴: 计算代价, 纵轴: 准确率)

9

4.2 消融实验

下图: 消融实验.

4

下图: Local MHRA 中 长方体感受野的敏感性.

6

下图: 迁移学习的能力. 在 K400 上训练, 在 SSV1 上测试.

7

下图: 采样方法的敏感性. (帧数 × 时间步)

8

下图: Multi-clip/crop 实验.

[⚠️注: Multi-clip 指将视频按不同帧切分为多个视频, 对每个视频做分类, 然后将预测结果组合起来获得最终预测结果. Multi-clop 指将每一帧裁剪为不同的区域, 分别得到不同的多个视频, 然后将各视频的预测结果组合起来获得最终预测结果]

5

5. Conclusion (UniFormer)

主要创新点:

主要成果:


6. Abstract (UniFormerV2)

7. Model (UniFormerV2)

7.1 Overview

下图: 模型框架.

12

7.2 Local UniBlock

Local UniBlock 的行为:

(16)XT=LT_MHRA(Norm(Xin))+Xin

其中, LT_MHRA() 表示使用局部亲和力的 MHRA. 即 An(Xi,Xj) 的计算方式为式 (12) (13).

(17)XS=GS_MHRA(Norm(XT))+XT

其中, GS_MHRA() 表示使用全局亲和力的 MHRA. 即 An(Xi,Xj) 的计算方式为式 (14).

(18)XL=FFN(Norm(XS))+XS

[⚠️注: 留意到, Local UniBlock 的输入和输出形状是完全一样的.]

7.3 Global UniBlock

Global UniBlock 的行为:

(19)XC=DPE(XL)+XL

其中, DPE() 是 Dynamic Position Embedding, 同式 (4).

(20)XST=C_MHRA(Norm(q),Norm(XC))

其中, C_MHRA(q,) 是互注意力风格的 MHRA. 它的第 n关系聚合器头 (Relation Aggregator) RnC(q,) 表示如下, 其中 qR1×C 是一个可学习的 query. [⚠️注: q 的迭代和 Multi-stage Fusion 模块有关]

(21)RnC(q,X)=AnC(q,X)Vn(X)

其中, AnC(q,X) 是互注意力亲和力矩阵, 用于学习 qX 的关系.其计算如下:

(22)AnC(q,Xj)=exp(Qn(q)TKn(Xj))jΩT×H×Wexp(Qn(q)TKn(Xj))

其中, Vn(), Qn(), Kn() 都是全连接层.

同式 (15), C_MHRA(q,) 的计算为:

(23)C_MHRA(q,X)=Concat(R1C(q,X);R2C(q,X);;RNC(q,X))U

最后, 计算 XG:

(24)XG=FFN(Norm(XST))+XST

7.4 Multi-stage Fusion

这一模块的任务: 将 Local UniBlock 输出的 XL 和 Global UniBlock 输出的 XG 融合, 并更新 query q. 下图: 四种设计思路

13

记第 i 个 Global UniBlock 的输出为 XiG=Gi(qi,XiL).

实验表明, Sequential 方式和 Hierarchical Q 方式最有效 (见消融实验部分), 模型采用 Sequential 方式作为基准.

8. Experiment & Result (UniFormerV2)

8.1 和 SOTA 的对比

下图: 在 K400 上的性能比较.

14

下图: 在 K600/700 上的性能比较.

15

下图: 在 MiT V1 上的性能比较.

16

下图: 在 SSV2 上的性能比较.

17

原文在 SSV1, ActivityNet, HACS 上也做了实验, 均达到了 SOTA.

8.2 消融实验

18

19

9. Conclusion (UniFormerV2)

主要创新点:

10. 总结

UniFormer 设计了多头关系聚合器 (MHRA), 很好地处理了视频数据的局部冗余全局冗余; UniFormerV2 在此基础上, 将 UniFormer 中大获成功的 MHRA 设计成块, 设计了 Local UniBlockGlobal UniBlock, 并且设计了 Global Cross MHRA, 在 Multi-stage Fusion 中提出四种方式, 结合了 ViTs 的优点, 大大提高了视频理解的性能.