↓ Skip to main content

视频中的时空注意力为什么可以分解?

·70 words·1 min
Jinyu Chen
Author
Jinyu Chen
问题驱动的个人知识库

判断归属:AI 候选。 定义与文献事实注明来源;例子、推导和组织方式是本次整理的解释,尚未经过用户逐项确认。

Tokens
#

普通自注意力并不只处理时间。它读取一组 token;位置代表单词、图像 patch 还是节点,由输入组织及位置表示决定。视频包含 TT 帧,每帧分成 SS 个空间 patch,得到 TSTS 个 token。记每个表示为 xt,sx_{t,s},由线性投影得到 Q、K、V,并编码帧次序和空间位置。

本文从缩放点积注意力推导两种连接方式,以 TimeSformer §3作已发表实例;不把它说成所有时空模型的统一架构。

Joint
#

联合时空注意力让每个 (t,s)(t,s) 查询全部 (t′,s′)(t',s'):

At,s;t′,s′=softmax⁡t′,s′(qt,skt′,s′⊤dk),ot,s=∑t′,s′At,s;t′,s′vt′,s′. A_{t,s;t',s'}=\operatorname{softmax}_{t',s'}\left(\frac{q_{t,s}k_{t',s'}^\top}{\sqrt{d_k}}\right),\qquad o_{t,s}=\sum_{t',s'}A_{t,s;t',s'}v_{t',s'}.

有 TSTS 个查询,各读取 TSTS 个位置,所以主要聚合计算为 O(T2S2d)O(T^2S^2d)。空间分辨率或帧数增大都会迅速扩大连接矩阵。这是 token 数量与连接范围的结果,而非“时空”一词本身额外产生某种运算。

Divided
#

一种分解方法先在同一空间位置跨帧做时间注意力,再在同一帧内跨空间做注意力。忽略额外分类 token 和投影常数:

Ctime=O(ST2d),Cspace=O(TS2d),Cdivided=O((ST2+TS2)d). C_{\mathrm{time}}=O(ST^2d),\qquad C_{\mathrm{space}}=O(TS^2d),\qquad C_{\mathrm{divided}}=O((ST^2+TS^2)d).

任意两个时空位置虽未在同一个注意力矩阵里直接相连,信息仍能经两步传播。例如 (t1,s1)(t_1,s_1) 先通过时间聚合进入 (t2,s1)(t_2,s_1) 的中间表示,再通过空间聚合影响 (t2,s2)(t_2,s_2)。

连接数量下降依靠结构约束。两次分解计算的 softmax、参数和非线性组合,并不与一次联合注意力严格等价;因此效率和表示能力需要一起评价。TimeSformer 比较的分解模型还具有不同的参数量,不能把其特定实验结果解释成“所有任务中分解都更准确”。

Assumptions
#

同一 patch 坐标在不同帧不一定追踪同一个物体,尤其在相机移动时。空间位置、运动与语义关联并非一回事。离线视频分类可读取未来帧,在线预测则需额外因果掩码;结构名称不能代替可见信息的定义。

多头可学习多种关联,但总宽度固定时不会自动消除连接矩阵的二次项。下采样、局部连接和时空分解改变的是不同环节,不能仅把“采用多头”作为复杂度降低理由。

联系:KV 缓存依赖因果性;此处的非因果视频注意力不能直接照搬逐帧追加时历史状态永不变化的假设。

Revision
#

2026-10-12:由泛化的时空概述改为联合/分解两种可计算结构,补成本推导、运动对应和因果边界。解释为 AI 候选。