← 返回
技术论文解读

ViT³:解锁视觉中的“测试时训练”

ViT³: Unlocking Test-Time Training in Vision
Authors
Dongchen Han, Yining Li, Tianyu Li, Zixuan Cao, Ziming Wang, Jun Song, Yu Cheng, Bo Zheng, Gao Huang
Institutions
清华大学 · 阿里巴巴集团
Venue
CVPR 2026 (Oral) · 2025-12
Links
TL;DR

清华与阿里把“测试时训练”(Test-Time Training, TTT)这一线性复杂度序列建模新范式系统性地搬进视觉。作者对 TTT 的“内层模型”和“内层训练”做了一轮系统消融,提炼出 6 条可操作的设计准则,据此造出纯 TTT 架构 ViT³。它在图像分类、检测、分割、生成四类任务上稳定超过 Mamba 和线性注意力,并把与高度优化 ViT 的差距缩到很小;在 1248² 分辨率(6084 token)下比 DeiT 快 4.6×、省 90.3% 显存。论文已被 CVPR 2026 接收为 Oral。

30 秒速览
论文类型
实证研究 + 架构提出(systematic study + baseline)
一句话
把 TTT 系统性引入视觉,提炼 6 条设计准则并造出 ViT³ 基线
核心做法
把注意力重写成“测试时在 K-V 上做几步在线学习”,内层模型用门控线性单元 + 一个深度卷积头
关键结果
ViT³-S 81.6% / H-ViT³-B 85.5%(ImageNet Top-1);1248² 下比 DeiT 快 4.6×、省 90.3% 显存
适用
要处理长视觉序列(高分辨率检测/分割/生成)的线性复杂度骨干
不适用
追求绝对 SOTA 精度——语义分割上仍略逊 TransNeXt 等高度优化 ViT
机构 / 收录
清华大学 + 阿里巴巴;CVPR 2026 Oral
代码
github.com/LeapLabTHU/ViTTT
01

问题:在二次复杂度和“太弱的线性注意力”之间,找第三条路

Vision Transformer(视觉Transformer)(ViT)已是现代视觉的基石,但 Softmax 注意力(标准点积注意力)对序列长度有二次复杂度(随长度平方增长) O(N²) 的硬伤——处理高分辨率图像这种长序列时贵到难以承受。

社区的主流解法是线性注意力(用核函数把注意力降到O(N)):把 Softmax 换成线性核,利用矩阵乘法结合律把计算从 (QKᵀ)V 重排成 Q(KᵀV),复杂度降到 O(N)。本质上它把整段 K、V 压成一个 d×d 的线性层权重 W=KᵀV。但代价是状态太小、KᵀV 这种朴素压缩会丢掉重要信息,表达力受限,很多场景下打不过完整注意力。

TTT(Test-Time Training(测试时训练))提供了第三条路。它的视角很优雅:任何注意力都可以看成“把上下文 (K,V) 压进一个内层模型,再用 Q 去查询它”——Softmax 注意力是一个宽度为 N 的两层 MLP,线性注意力是一个 d×d 线性层。TTT 则把这个内层模型解放成任意模块 F_W,在测试时把 K-V 当成一个“迷你数据集”,做几步自监督在线训练来更新它的权重。当内层模块本身是线性复杂度时,整体就保持 O(N),同时获得远比线性注意力丰富的非线性表达力。

但灵活也带来新瓶颈:内层训练(损失函数、学习率、批量、轮数)和内层模型(结构、大小)该怎么选,此前缺乏系统理解。这正是本文要回答的核心问题——为视觉 TTT 建立设计准则。

三种序列建模范式:内层模型的不同选择 Softmax 注意力 宽度 = N 的两层 MLP 激活 = Softmax O(N^2) 表达力强,但太贵 线性注意力 d x d 线性层 W = K^T V(一次矩阵乘) O(N) 便宜,但状态太小、易丢信息 TTT(本文) 任意内层模型 F_W 在 K-V 上在线训练几步 O(N)(内层线性时) 把压缩方式变成可学习的 非线性模块 注意力 = 把上下文 (K,V) 压进一个内层模型,再用 Q 查询它 —— 区别只在这个内层模型是什么 TTT 把它从固定结构解放为测试时即时训练的任意模块
图 1(概念重绘):三种范式的统一视角。注意力 = 把 (K,V) 压进一个内层模型再用 Q 查询;区别只在内层模型是什么。TTT 把它从固定结构变成“测试时即时训练的任意非线性模块”。
02

方法本质:把 K-V 压进一个“即时训练”的小网络

TTT 把序列建模重写为在线学习。设 内层模型(TTT中被即时训练的小网络) F_W:ℝ^d→ℝ^d,初始权重 W₀ 是外层网络里可学习的参数。对每一段输入,它在 key-value“数据集”上做几步梯度更新(下式),再用更新后的权重 W* 处理查询 Q 得到输出。
\hat{V}_{\mathcal{B}}=\mathcal{F}_{W}(K_{\mathcal{B}}),\qquad W\leftarrow W-\eta·\frac{\partial\mathcal{L}(\hat{V}_{\mathcal{B}},V_{\mathcal{B}})}{\partial W},\qquad O=\mathcal{F}_{W^{*}}(Q)
内层训练:在大小为 B 的 K-V 小批上,用自监督重建损失 L(鼓励 F_W(Kᵢ)≈Vᵢ)更新内层权重;η 是内层学习率。整个内层更新过程可微,与外层网络端到端联合优化(即对梯度再求梯度,类似元学习)。
关键术语区分:F_W 和上式叫内层模块 / 内层训练(inner loop);整张网络在真实数据上的训练叫外层训练(真实数据上的端到端训练)(outer loop)。一个 TTT 层每段序列要做:(i) 在 key 上前向 V̂=F_W(K),(ii) 损失反向,(iii) 在 query 上前向 O=F_W(Q)。反向通常是前向的 2 倍 FLOPs,所以一轮内层训练约等于 1+2+1=4 倍前向算力——这也是为什么“轻量但表达力强的内层模型”很重要。
03

六条设计准则:视觉 TTT 到底该怎么配

作者以经典视觉 Transformer DeiT 为骨架、把注意力块换成 TTT 层作为基线,逐一消融内层训练和内层模型的各项选择,提炼出 6 条洞见。

前三条关于“内层训练”,后三条关于“内层模型”:

1
准则 1:混合二阶导(损失对 V̂ 和 V 的交叉二阶偏导)为零的损失函数不适合 TTT
外层要通过反向传播给 value 投影矩阵 W_V 传梯度,而这条梯度正比于损失的混合二阶导 ∂²L/∂V̂∂V。若它(近似)为零,W_V 学不动。实验印证:MAE(L1) 损失(导数是符号函数、混合二阶导几乎处处为零)精度最差(76.5%),Smooth L1 也偏低(78.1%),而 Dot Product / MSE / RMSE 都约 79%。
2
准则 2:单 epoch、全批量梯度下降(用全部 K-V 做一步更新)在视觉里最好
与语言 TTT“小批量更有利”的结论相反,视觉里 B=N(全批量)最优。原因是模态差异:顺序小批量带来因果偏置(前面的批量影响后面、后面的还会覆盖前面),适合语言这种因果数据,但对非因果的视觉次优。多个 epoch 能小幅提精度,但显著降吞吐、还可能训练不稳。
3
准则 3:偏大的内层学习率(取 1.0)有效
学习率从 0.1 扫到 10:太小则内层更新不足,太大则训练发散。η=1.0 兼顾有效更新与外层稳定。论文还指出,对线性内层+MSE 的特例,调 η 在数学上等价于缩放 K、V,但 η 仍是关键超参(就像 Softmax 注意力里的 1/√d 缩放)。
4
准则 4:增大内层模型容量(加宽)稳定涨点
把两层 MLP 的隐藏维从 d 加宽到 4d,精度从 78.9% 单调升到 79.6%。这是 TTT 相对线性注意力的核心优势:不再被限制在 d×d 线性映射,而能用更复杂的非线性内层模块并持续受益。代价是内层加宽比外层加宽更费算力(约 4 倍)。
5
准则 5:当前设定下,加深内层模型反而更差
反直觉但清晰:FC→2 层→3 层 MLP,精度不升反降,且更深的内层训练损失更高(属于欠拟合而非过拟合)——说明是优化瓶颈,分为外层初始化难学、内层梯度爆炸/消失两方面。标准残差和朴素初始化收效有限。破解深内层的优化被作者列为重要的未来方向。
6
准则 6:卷积结构特别适合做视觉的内层模型
得益于 TTT 的灵活性,内层可以是卷积而非只能是 MLP/GLU。3×3 卷积(79.9%)和轻量深度卷积 DWConv(80.1%)都明显涨点。机理优雅:卷积内层把全局上下文压进局部卷积核权重,于是 O=F_W(Q) 同时实现全局(更新后的核)+ 局部(感受野)交互,天然融合全局与局部。
内层损失(准则1)Top-1混合二阶导
MSE (L2)79.2非零 ✓
Dot Product78.9非零 ✓
RMSE78.8非零 ✓
Smooth L178.1部分区域为零 ✗
MAE (L1)76.5几乎处处为零 ✗
内层模型(准则4-6)Top-1FPS
FC(d×d 线性,最快)79.11708
MLP 2 层 r1(基线)78.91315
MLP 2 层 r4(加宽)79.6836
MLP 3 层(加深)77.51086
简化 GLU:FC⊙SiLU(FC)79.71194
Conv 3×379.9979
DWConv(深度卷积,最优)80.11366
ViT^3 的内层模型:多数头用门控线性单元,一个头用深度卷积 配置:dot-product 损失 · 单 epoch 全批量梯度下降 · 学习率 1.0 F1:简化门控线性单元(多数头) FC(x) ⊙ SiLU(FC(x)) 把 d x d 线性状态的容量翻倍 同时仍然好优化(避开深则难训) 承担全局信息压缩 F2:深度卷积(单个头) DWConv(x) 把全局上下文编进局部卷积核权重 同时获得全局(核)+ 局部(感受野) 天然融合全局与局部信息 整个 TTT 块是标准注意力块的即插即用替代,可塞进各类 ViT 骨干 两套规模族:ViT^3(非分层)· H-ViT^3(4 阶段分层)· DiT^3(生成)
图 2(概念重绘):ViT³ 据 6 条准则组装的内层块——多数头用简化门控线性单元 F1(容量翻倍且好优化),单个头用深度卷积 F2(融合全局+局部)。整块是注意力的即插即用替代。
04

ViT³:把准则落成一个即插即用的注意力替代块

据准则,ViT³ 的内层训练取 dot-product 损失 + 单 epoch 全批量梯度下降 + 学习率 1.0;内层模型用两个被验证有效的模块组合——简化门控线性单元(用乘法门控的线性层) F1 = FC(x)⊙SiLU(FC(x))(让 d×d 线性状态容量翻倍且易优化)和深度卷积(逐通道卷积,极省算力) F2 = DWConv(x)(融合局部与全局)。每个 TTT 块里一个头用 F2、其余头用 F1。这是标准注意力块的即插即用替代,能塞进各类 ViT 骨干。

作者造了两套规模族:ViT³(非分层)和 H-ViT³(4 阶段分层),并把它适配到扩散 Transformer DiT(扩散Transformer) 上得到 DiT³ 做生成。所有分类模型按 Swin 协议从零训练 300 epoch。

81.6%
ViT³-S ImageNet Top-1(DeiT-S 仅 79.8%)
85.5%
H-ViT³-B Top-1(用 MESA)
4.6×
1248² 下相对 DeiT-T 的加速
90.3%
1248² 下显存节省
6 条
提炼出的设计准则
O(N)
线性复杂度,可并行
分类(ImageNet-1K):ViT³/H-ViT³ 稳定超过线性注意力和 Mamba 变体,逼近顶级 ViT。如 H-ViT³-S 用约一半参数和 FLOPs 就超过更大的 SOFT-L++ 和 VMamba-B。检测(COCO):高分辨率下 token 远长于分类(N≫d),VMamba/SOFT++ 受限于状态容量而吃亏,H-ViT³ 靠非线性内层+在线学习获得更强全局建模,匹配或超过线性方法。分割(ADE20K):H-ViT³ 是强线性基线、稳超 VMamba/VVT/SOFT++,但仍逊于 TransNeXt 等高度优化 ViT。生成:DiT³ 在各规模上一致改善 DiT 的 FID(无需额外调参)。
模型类型ParamsTop-1(ImageNet)
DeiT-STransformer22M79.8
Vim-SMamba26M80.3
Agent-DeiT-SLinear23M80.5
ViT³-STTT24M81.6
VMamba-BMamba89M83.9
MILA-B‡Linear96M85.3
H-ViT³-B‡TTT94M85.5
生成模型(FID-50K↓)FLOPsFID对比 DiT
DiT-S/2 → DiT³-S/26.06→6.23G68.40 → 62.65↓ 5.75
DiT-B/2 → DiT³-B/223.01→23.35G43.47 → 39.31↓ 4.16
05

适用边界:它是强基线,但不是 SOTA 收割机

精度仍有天花板:语义分割上 H-ViT³ 虽稳超其他线性方法,但仍明显逊于 TransNeXt 等高度优化 ViT——论文把“设计更深、更强的内层模型”列为补差距的方向,而这恰恰被准则 5 卡住(当前深内层训不动)。

算力账要算清:TTT 内层每段序列约 4 倍前向算力,加宽内层涨点但更费算力;优势主要体现在长序列(高分辨率)场景,分类这类短序列上相对密集 ViT 的效率红利没那么大。

结论的适用范围:6 条准则是在“DeiT 骨架替换注意力块”这一受控设定下得到的实证结论,且作者明确声明未穷尽设计空间——内层优化器、内层数据增强、用 Transformer 做内层模型等都没覆盖。准则 2(全批量优于小批量)也被作者归因于“朴素顺序小批量”,为视觉定制的小批量内层算法仍是开放问题。

仍是“缩小差距”而非“反超”:定位是为视觉 TTT 提供强基线和设计指南,不是宣称全面超越 Transformer。

06

时效性:CVPR 2026 Oral,TTT-in-vision 方向正在升温

截至 2026 年 6 月:本文(arXiv 2512.01643,2025 年 12 月)已被 CVPR 2026 接收为 Oral,代码开源在 github.com/LeapLabTHU/ViTTT(LeapLab THU,即 Gao Huang 组)。

TTT 作为线性复杂度新范式的热度仍在上升——同期已出现紧随其后的工作,如 Vision-TTT(arXiv 2603.00518,2026)继续探索高效且富表达力的视觉 TTT 表示学习,与本文方向一脉相承。这说明本文“把 TTT 系统性引入视觉 + 提供强基线”的定位正当其时:它更像是开一个子领域的奠基性基线 + 设计手册,而非一锤定音的终态架构。论文自己点名的两大未解问题(深内层优化、为视觉定制的小批量内层训练)很可能是后续工作的主战场。

07

关键术语

下面汇总正文中出现的承重术语。
Test-Time Training (TTT)
测试时训练。把注意力重写为在线学习:对每段输入,在其 key-value 上即时训练一个小内层模型,再用它处理 query。内层为线性复杂度时整体保持 O(N)。
内层模型 / 内层训练(inner loop)
TTT 中被即时训练的小网络 F_W,以及它在 K-V 上做的几步梯度更新。与之相对的外层(outer loop)是整张网络在真实数据上的端到端训练。
Softmax 注意力
标准点积注意力,可视为宽度为 N、激活为 Softmax 的两层 MLP,复杂度 O(N²)。
线性注意力(linear attention)
用线性核替换 Softmax,把 K、V 压成 d×d 线性层权重 W=KᵀV,复杂度降到 O(N),但状态小、易丢信息。
混合二阶导 ∂²L/∂V̂∂V
内层损失对预测值 V̂ 和目标值 V 的交叉二阶偏导。它决定外层能否给 W_V 传梯度;为零的损失(如 L1)会让 TTT 学不动。
全批量梯度下降(full-batch, B=N)
用整段序列的全部 K-V 作为单个内层批量做一步更新。视觉里单 epoch 全批量效果最好(与语言相反)。
门控线性单元(GLU)
用乘法门控的线性结构。ViT³ 用简化版 FC(x)⊙SiLU(FC(x)) 作内层模型,把线性状态容量翻倍且仍好优化。
深度卷积(DWConv)
逐通道卷积,参数和算力极省。作为 TTT 内层时能把全局上下文编进局部卷积核,天然融合全局与局部,是单内层模型里的最优选择(80.1%)。
DiT
扩散 Transformer,用于图像生成。把其注意力换成 ViT³ 块即得 DiT³。
MESA
一种几乎零成本缓解过拟合的训练策略,论文中带 ‡ 的结果即使用了它。
08

延伸阅读

原文、代码与相关脉络。