Efficient Test-time Adaptation through Candidate Verification and Divergence Shifts¶
会议: NeurIPS 2026
arXiv: 2610.06147
代码: https://github.com/mmai-laboratory/ttc
领域: 学习理论
关键词: 测试时自适应, 视觉语言模型, 候选验证, 子空间摄动, 无需训练
一句话总结¶
针对视觉语言模型在推理阶段遭遇目标域偏移的问题,本文提出 TTC(Test-Time Correction)框架,打破传统预测端调整参数或原型的范式,将其重塑为基于假说检验的候选验证过程,通过度量测试样本假想插入类别子空间诱发的散度偏移实现高效无参校正。
研究背景与动机¶
大规模预训练视觉语言模型(如 CLIP)通过在共享多模态表征空间中对齐图像与文本,展现出了卓越的零样本迁移能力。然而,在实际部署环境下,测试数据往往不可避免地遭遇严重的分布偏移(如风格变化、光照差异、背景纹理变异以及自然对抗样本扰动),导致模型的零样本预测置信度大幅下降并诱发错误分类。为弥合源域与目标域之间的表征间隙,测试时自适应(Test-Time Adaptation, TTA)技术应运而生,力求在仅借助无标注测试流的前提下实时修正模型预测。
现有面向视觉语言模型的测试时自适应方法普遍遵循“预测端调整(prediction-side adaptation)”的设计范式。早期方法(如 TPT、DiffTPT)通常依赖多视图数据增强并在测试时对可学习 Prompt 或特征适配层进行反向传播梯度微调;后续免训练(training-free)方法(如 TDA、OGA、BCA)虽然消除了反向传播开销,但依旧着眼于通过构建正负缓存队列、在线高斯统计更新或贝叶斯类先验重校准输出 logits。然而,这一范式存在一个根本性矛盾:在严重域偏移下,模型初始输出的绝对置信度和高 logits 本身往往并不可靠,基于不确定或受损的置信度反向调节参数或统计量,极易导致错误累积;同时,多视图增强和全局先验维护带来了显著的计算延迟与显存开销。
本文的切入视角是转换解题范式:与其在受损的预测空间修补概率,不如将自适应重塑为几何维度的“候选验证(candidate verification)”过程。从几何摄动理论的角度看,一个测试样本若是某类别的真实成员,将其假想并入该类别的特征子空间时应呈现出良好的结构兼容性与极低的子空间畸变;反之,若归入错误类别,则会引入显著的正交残差并大幅破坏该子空间与竞品候选之间的几何关系。核心 idea:将测试时自适应重塑为“提出假说-子空间重构-几何校正”的候选验证流程,提出 TTC 框架,通过在候选类记忆子空间中假想插入测试特征并计算诱发的双向散度偏移,以最小聚合验证误差选出最佳真实标签。
方法详解¶
整体框架¶
TTC 采用完全免训练(training-free)且无需迭代优化的自适应流程。对于测试图像特征,模型首先依据初始冻结 VLM 的预测输出筛选出 top-\(k\)(默认 \(k=3\))个最具竞争力的候选标签,构成假设候选集 \(\mathcal{C}_k(\mathbf{x})\)。针对候选集中的每一个假设,TTC 将测试特征假想插入至对应类别的记忆库子空间中,分别计算测试特征的绝对重构残差以及与其他候选子空间之间的成对双向散度偏移(Pairwise Divergence Shift),最终聚合得到各候选标签的验证得分,输出使得聚合摄动与重构误差最小的类别作为校正预测。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
A["输入测试图像特征 x<br/>与初始预测 logits z"] --> B["候选假说生成<br/>提取 top-k 候选标签集合"]
B --> C["假想插入与子空间投影<br/>岭正则化投影算子构建"]
C --> D["双向散度偏移估计<br/>前向与反向子空间摄动度量"]
D --> E["聚合验证得分判别<br/>绝对兼容性与相对稳定性联合优选"]
E --> F["输出校正预测标签<br/>并高置信度在线更新类别记忆库"]
关键设计¶
1. 候选假说生成与类别记忆子空间表征:将搜索空间严格限定在局部竞争集合 传统分类重校准方法通常面临全类别空间维护的庞大计算负担,而测试时分类混淆绝大多数发生在置信度最高的少数几个混淆类别之间。TTC 首先通过冻结文本编码器生成的类别向量 \(\mathbf{T}\) 与测试视觉特征 \(\mathbf{x} \in \mathbb{R}^d\) 计算初始 logits \(\mathbf{z} = \mathbf{T}\mathbf{x}\),截取 top-\(k\) 集合 \(\mathcal{C}_k(\mathbf{x}) = \mathrm{TopK}_{y\in\mathcal{Y}}(\mathbf{z})\)。对于每个候选类别 \(y\),TTC 维护一个容量上限为 \(m\)(默认 \(m=16\))的高置信度特征记忆库 \(\mathbf{B}_y = [\mathbf{b}_{y,1}, \dots, \mathbf{b}_{y,m_y}]^\top \in \mathbb{R}^{m_y \times d}\),其诱发的类记忆子空间定义为 \(\mathcal{S}_y = \mathrm{span}(\mathbf{B}_y)\)。这种局部化表征将检验维度从全类别集合降维到极小候选子空间,彻底规避了全库检索与全局统计建模的高昂内存开销。
2. 假想插入与岭正则化子空间重构:解决子空间维度跳跃的平滑摄动算子 当对候选假设 \(h_y: \mathbf{x} \mapsto y\) 进行验证时,TTC 并不直接改动全局模型状态,而是执行“假想插入(hypothetical insertion)”,生成增广记忆矩阵 \(\widetilde{\mathbf{B}}_y = [\mathbf{B}_y; \mathbf{x}]\) 及其增广子空间 \(\widetilde{\mathcal{S}}_y = \mathrm{span}(\widetilde{\mathbf{B}}_y)\)。依据传统子空间摄动定理(如 Davis-Kahan 定理),若直接采用未加正则的正交投影算子,只要 \(\mathbf{x} \notin \mathcal{S}_y\),投影矩阵的变化范数便会因正交基秩增而发生突变(恒为单位范数跃迁),无法对残差大小形成连续梯度响应。为此,TTC 引入基于岭正则化的平滑投影算子: $\(\mathbf{P}_y = \mathbf{B}_y^\top (\mathbf{B}_y \mathbf{B}_y^\top + \lambda \mathbf{I})^{-1} \mathbf{B}_y\)$ 其中 \(\lambda > 0\) 为岭正则系数。在假想插入后,利用 Sherman-Morrison 逆矩阵更新公式,投影矩阵的变动量严格受控于测试特征的岭残差 \(\mathbf{r}_y = (\mathbf{I} - \mathbf{P}_y)\mathbf{x}\): $\(\widetilde{\mathbf{P}}_y - \mathbf{P}_y = \frac{\mathbf{r}_y \mathbf{r}_y^\top}{\lambda + \mathbf{x}^\top \mathbf{r}_y}, \quad \|\widetilde{\mathbf{P}}_y - \mathbf{P}_y\|_2 \le \min\left\{1, \frac{1}{\lambda} d_\mathbf{x}(\mathcal{S}_y, \mathbf{x})^2\right\}\)$ 该设计确保了只有当测试样本与候选子空间契合且残差较小时,引入的几何扰动才足够微弱,为后续检验提供了连续平滑的物理度量。
3. 成对双向散度偏移估计:利用互补非对称信号消除单向伪契合 为量化子空间间的几何关系受假想插入的影响程度,TTC 定义了基于最近子空间重构误差(NSE)的跨子空间散度 \(d_{\mathcal{S}}(\mathcal{S}_a, \mathcal{S}_b) = \frac{1}{m_b} \|\mathbf{B}_b \mathbf{P}_a - \mathbf{B}_b\|_{2,1}\),即用类别 \(a\) 的投影算子重构类别 \(b\) 样本的平均 \(L_{2,1}\) 范数。当 \(\mathbf{x}\) 假想插入至类别 \(y\) 时,其对竞争候选类别 \(r \in \mathcal{C}_k(\mathbf{x})\) 产生的单向散度偏移为: $\(\delta_{y \to r}(\mathbf{x}) = d_{\mathcal{S}}(\mathcal{S}_y, \mathcal{S}_r) - d_{\mathcal{S}}(\widetilde{\mathcal{S}}_y, \mathcal{S}_r)\)$ 单一方向的前向偏移容易受到类别子空间固有容量或主成分重叠的干扰。若 \(\mathbf{x}\) 确实属于类别 \(y\),则插入 \(\mathbf{B}_y\) 几乎不扰动 \(\mathcal{S}_y\),导致 \(\delta_{y \to r}(\mathbf{x})\) 极小;同时,若将其错误插入竞品类别的记忆库 \(\mathbf{B}_r\),则会引入巨大的离群正交分量,大幅剧烈改变竞品子空间对 \(y\) 的重构能力,使得反向偏移 \(\delta_{r \to y}(\mathbf{x})\) 显著放大。TTC 将前向偏移与反向偏移构建为非对称差分对 \(\delta_{y \to r}(\mathbf{x}) - \delta_{r \to y}(\mathbf{x})\),形成极强鉴别力的几何检验信号。
4. 聚合验证得分判别与流式在线记忆维护:绝对兼容性与相对稳定性的统一决策 单一考虑相对偏移可能在多个均不契合的远距离类别间产生虚假的低摄动错觉。为此,TTC 构建了综合绝对重构误差与相对稳定性的聚合验证得分 \(E_y(\mathbf{x})\): $\(E_y(\mathbf{x}) = \underbrace{d_\mathbf{x}(\mathcal{S}_y, \mathbf{x})}_{\text{绝对兼容性}} + \underbrace{\sum_{r \in \mathcal{C}_k(\mathbf{x}) \setminus \{y\}} \left[\delta_{y \to r}(\mathbf{x}) - \delta_{r \to y}(\mathbf{x})\right]}_{\text{相对稳定性}}\)$ 其中 \(d_\mathbf{x}(\mathcal{S}_y, \mathbf{x}) = \|\mathbf{x}^\top \mathbf{P}_y - \mathbf{x}^\top\|_2\) 为样本到该类别子空间的绝对重构残差。最终决策直接选取使得 \(E_y(\mathbf{x})\) 最小的候选类别 \(\hat{y} = \arg\min_{y \in \mathcal{C}_k(\mathbf{x})} E_y(\mathbf{x})\)。在完成决策后,若当前测试样本被判为 \(\hat{y}\),则以其特征向量更新记忆库 \(\mathbf{B}_{\hat{y}}\);当记忆库达到上限 \(m\) 时,动态淘汰置信度最低的历史条目,确保记忆库在测试流演进中始终表征纯净紧凑的域适应几何结构。
实验关键数据¶
主实验¶
论文在五大经典测试场景(零样本分类、分布偏移域泛化、少样本分类、Base-to-Novel 泛化、跨数据集评测)及 15 个基准数据集上进行了详尽评测。下表汇报了在 11 个下游数据集上的零样本分类性能,以及在 ImageNet 衍生分布偏移数据集上的域泛化(Domain Generalization)评测对比。
| 数据集 / 场景 | Backbone | 基线 (Zero-Shot) | 前序最强免训练基线 | 本文 (TTC) | 优势提升 |
|---|---|---|---|---|---|
| 11 个下游数据集平均 (Zero-Shot) | ResNet50 | 56.62% | 61.47% (BCA) | 63.98% | +2.51 pp |
| 11 个下游数据集平均 (Zero-Shot) | ViT-B/16 | 64.68% | 68.73% (BCA) | 71.10% | +2.37 pp |
| ImageNet 域泛化平均 (0-Augment) | ResNet50 | 46.33% | 45.93% (OGA) | 48.23% | +2.30 pp |
| ImageNet 域泛化平均 (0-Augment) | ViT-B/16 | 61.24% | 61.87% (OGA) | 63.72% | +1.85 pp |
| ImageNet 域泛化平均 (Augmented) | ResNet50 | 46.33% | 50.43% (DPE, 63-aug) | 50.94% (仅10-aug) | +0.51 pp |
| ImageNet 域泛化平均 (Augmented) | ViT-B/16 | 61.24% | 65.57% (BCA, 63-aug) | 66.90% (仅10-aug) | +1.33 pp |
在资源消耗维度,下表展现了在单卡 NVIDIA RTX A5000 上运行 ImageNet 零样本预测时的算力与显存开销对比(均在无数据增强、提取后特征输入条件下测试):
| 方法 | Backbone | GPU 显存 (GB) \(\downarrow\) | CPU 内存 (MB) \(\downarrow\) | 吞吐量 (img/s) \(\uparrow\) | 端到端耗时 (s) \(\downarrow\) | Top-1 准确率 (%) \(\uparrow\) |
|---|---|---|---|---|---|---|
| DPE (NeurIPS'24) | ViT-B/16 | 0.20 | 1009 | 17.0 | 2935.5 | 69.91% |
| TDA (CVPR'24) | ViT-B/16 | 0.24 | 520 | 184.1 | 271.6 | 69.51% |
| OGA (CVPR'25) | ViT-B/16 | 2.01 | 545 | 20.8 | 2398.7 | 68.50% |
| BCA (CVPR'25) | ViT-B/16 | 0.26 | 471 | 932.5 | 53.7 | 70.22% |
| TTC (Ours) | ViT-B/16 | 0.17 | 135 | 2049.0 | 24.5 | 71.57% |
| BCA (CVPR'25) | ResNet50 | 0.40 | 472 | 956.2 | 52.4 | 61.81% |
| TTC (Ours) | ResNet50 | 0.31 | 142 | 1103.4 | 45.4 | 62.58% |
消融实验¶
消融实验深入验证了验证得分三要素(绝对重构残差 \(d_\mathbf{x}\)、前向偏移 \(\delta_{y \to r}\)、反向偏移 \(\delta_{r \to y}\))以及散度度量指标设计的有效性(在 11 个下游数据集零样本任务上评测):
| 验证机制消融配置 | \(d_\mathbf{x}\) | \(\delta_{y \to r}\) | \(\delta_{r \to y}\) | ResNet50 平均准确率 (%) | ViT-B/16 平均准确率 (%) | 说明 |
|---|---|---|---|---|---|---|
| 仅绝对重构兼容性 | \(\checkmark\) | 59.56 | 67.39 | 相当于经典最近子空间分类,缺少相对几何扰动信息 | ||
| 仅前向候选稳定性 | \(\checkmark\) | 61.84 | 69.73 | 仅度量自身被插入后的结构变形 | ||
| 仅反向竞品敏感性 | \(\checkmark\) | 62.63 | 70.29 | 仅度量将测试点强行塞入竞品带来的破坏力 | ||
| 绝对兼容 + 前向偏移 | \(\checkmark\) | \(\checkmark\) | 63.60 | 70.85 | 结合绝对锚点与自身形变 | |
| 绝对兼容 + 反向偏移 | \(\checkmark\) | \(\checkmark\) | 63.73 | 71.04 | 结合绝对锚点与竞品排异性 | |
| 纯双向相对稳定性 | \(\checkmark\) | \(\checkmark\) | 63.25 | 70.72 | 缺少绝对距离锚定,易发生两两相对漂移 | |
| 完整 TTC 评分 | \(\checkmark\) | \(\checkmark\) | \(\checkmark\) | 63.98 | 71.10 | 三者协同取得最优解 |
| 散度度量方式 (Metric) | ResNet50 INet | ResNet50 11-Avg | ViT-B/16 INet | ViT-B/16 11-Avg | 说明 |
|---|---|---|---|---|---|
| 无适应基线 (Zero-Shot) | 59.90 | 56.62 | 68.50 | 64.68 | 原始 CLIP 输出 |
| 欧氏距离 (\(L_2\) Distance) | 52.68 | 50.01 | 62.12 | 57.60 | 易受高维噪声与模长缩放主导,发生严重性能退化 |
| 余弦相似度 (Cosine Sim.) | 61.72 | 61.58 | 70.37 | 69.61 | 具有一定方向鉴别力,但无法捕捉高维子空间结构 |
| 最近子空间重构 (NSE) | 62.58 | 63.98 | 71.57 | 71.10 | 严谨契合子空间几何投影机理,大幅领先 |
关键发现¶
- 双向扰动机制的强互补性:消融表明反向偏移 \(\delta_{r \to y}\) 甚至比前向偏移 \(\delta_{y \to r}\) 单独贡献更大(ViT-B/16 上 70.29% vs 69.73%)。这是因为当错误类别被强制插入异类样本时,其子空间正交残差急剧发散,表现出极强的“排异反应”,成为证伪错误候选的高灵敏度探针。
- 极致的计算与内存轻量化:在 ViT-B/16 特征上,TTC 吞吐量高达 2049 img/s,耗时仅 24.5s,较 CVPR'25 最优免训练方案 BCA 提速超 2 倍,CPU 内存减少超 3 倍(从 471MB 骤降至 135MB),GPU 显存占用进一步压低至 0.17GB。这证明无需全局反向传播或高维协方差统计,紧凑子空间的闭式投影具有巨大的落地优势。
- 对初始记忆纯度的鲁棒性:在零样本场景下,虽然记忆库由模型自身的伪标签初始化(含一定错误),但实验表明即使初始纯度有限,由于验证是基于类子空间聚合投影而非逐样本点匹配,TTC 对噪声点展现出天然的几何压制力;且随着在线更新逐步用校正后的样本替换低置信度条目,记忆纯度持续自发优化。
亮点与洞察¶
- 范式颠覆(Prediction Adjustment \(\to\) Candidate Verification):将传统在不可靠预测端强行修改概率分布的思路,转变为利用数据几何底层特性的假设检验。摆脱了对绝对置信度数值的依赖,以“谁能以最小代价容纳该样本”作为决策依据,切中 TTA 的本质痛点。
- 巧妙的正则化闭式闭环:借助 Sherman-Morrison 矩阵逆修正公式,将假想插入这一动态行为转化为常数复杂度的秩一矩阵更新,避免了每次检验重新做 SVD 或大矩阵求逆,兼具理论严谨性与工程执行的高效性。
- 可复用的非对称证伪思想:在对比学习或开放词表检索中,通常仅计算样本到类别的单向距离;TTC 提出的“假设插入反向测试竞品类别崩塌程度”的证伪思路,可广泛迁移至多模态拒识、域外(OOD)检测及开集细粒度识别任务。
局限与展望¶
- 受限于初始 Top-\(k\) 候选召回界限:TTC 依赖初始冻结模型的 Top-\(k\) 预测构建候选空间。当极端域偏移导致真实标签被排斥在 Top-\(k\) 之外时(\(A_{\mathrm{out}}\) 场景),TTC 无法凭空找回正确类别。未来可探索自适应动态扩展候选集或引入多尺度语义检索。
- 类别记忆库冷启动问题:在测试流极短或面对零样本长尾未见类别时,若某些类别记忆库为空或样本极度稀疏,子空间无法有效 span 展开,TTC 将退化为原始零样本预测,缺乏冷启动下的先验保底机制。
- 高维细粒度语义歧义失效:错误分析指出,TTC 在极高语义重叠的标签(如 "sunglass" 与 "sunglasses"、"projectile" 与 "missile")上容易发生误校正,由于此类子空间几何重叠度极高,微小的度量波动即可颠覆正确预测,未来需结合词义本体层级结构进行约束。
相关工作与启发¶
- vs TPT / DiffTPT: TPT 族依赖测试时在线反向传播微调 Prompt,并强制要求 63 个复杂的数据增强视图,计算延迟高达数十秒且显存开销大。TTC 是完全免训练的 Closed-form 计算,无需梯度优化,在单张图像推理上展现出超两个数量级的吞吐优势。
- vs TDA / OGA / BCA: TDA 维护庞大的正负样本记忆队列,OGA 实时拟合全维度高斯协方差矩阵(显存占用超 2GB),BCA 维护全局贝叶斯先验统计,均局限在预测端校正。TTC 仅针对 top-\(k\) 候选展开局部子空间分析,以极低的内存开销(135MB)和极低 GPU 显存(0.17GB)大幅刷新了各项任务精度。
- vs 经典最近子空间分类 (Nearest Subspace Classifier):经典方法将最近子空间绝对重构距离作为唯一测度;TTC 创造性地将子空间重构作为“扰动探针”,利用假想插入诱发的双向散度偏移度量动态稳定性,实现了从静态匹配到扰动证伪的质的飞跃。
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ [将 TTA 重新定义为基于子空间摄动的假说验证,立意新颖巧妙,摆脱了预测端调参的传统窠臼]
- 实验充分度: ⭐⭐⭐⭐⭐ [涵盖 5 种评测场景、15 个数据集、两类代表性 Backbone,具备详尽的消融、效率评测和误报分析]
- 写作质量: ⭐⭐⭐⭐⭐ [动机叙述逻辑链严密,数学推导清晰规范,附录中的 Sherman-Morrison 摄动界限分析极为扎实]
- 价值: ⭐⭐⭐⭐⭐ [代码开源且兼具极致吞吐与低显存特性,为高吞吐边端 VLM 部署自适应提供了极具实用价值的范本]