ReToken:一个 Token 解决 VLM 的"大海捞针"难题

视觉检索长上下文VLM零样本迁移
PaperDog · 2026-08-02 · arXiv:2607.28627

长视频里找答案,不是模型不够聪明,而是它根本不知道该看哪里。ReToken 用一个可学习的 token,把"该看哪里"变成了一个可训练的检索目标——冻结整个 VLM,只加一个 embedding 和一个投影矩阵,就在 Visual Haystacks 上带来超过 20% 的相对提升,还零样本迁移到了长视频。

为什么长视觉上下文变成了检索问题

多图集合、小时级视频已经能塞进 VLM 的输入范围,但问题随之而来:干扰物越多,性能越差;全量处理在显存上根本跑不动。于是长视觉输入的核心矛盾被压缩成一个问题——如何从海量视觉 token 里选出与问题相关的那一小撮

处理文本时,LLM 的注意力信号在大规模长上下文训练后是可靠的。但论文发现:在 VLM 里,文本与视觉特征之间的注意力与相关性弱相关。看图 1a,问题 token 对帧 token 的注意力分数完全无法区分相关帧与干扰帧。

注意力分数无法区分相关帧
图 1a:注意力分数无法区分相关帧与干扰帧

量化下来,注意力检索器在 QAEgo4D 长视频测试上的平均 recall@1 只有 5.1%——基本是瞎猜。而 ReToken 在最后一层达到 18.4%,是注意力的 3 倍多:

ReToken 每层召回率对比
图 1b:ReToken 在最后一层的 recall@1 远超注意力检索

关键发现:value 空间才是检索信号的富矿

那什么信号靠谱?论文发现一个不对称现象:用精确目标短语匹配视觉的 value 投影,而不是传统的 key,双图检索 recall@1 从 65.7 涨到 78.0(Qwen3VL),InternVL3.5 从 78.8 涨到 83.8。

为什么?在 Transformer 注意力层里,token 的 value 承载的是真正被传播出去的内容,而 query-key 内积只决定内容如何被聚合。所以 pooling 每帧的 value 投影,得到的是"这帧贡献了什么"的忠实表征——比 key 特征对检索文本更敏感。这与视觉分割领域的观察一致:value 特征更富含语义,注意力权重只是聚合机制。

但敏感是双刃剑:用整句问题平均出来的 query 混入大量无信息 token,噪声会抵消甚至逆转 value 空间的优势。value 空间奖励精确的检索目标,惩罚嘈杂的检索目标——这正好给"学习一个专用检索 token"提供了动机。

方法:一个 token,两个损失

ReToken 在问题末尾追加一个可学习 embedding,训练时用最终层的输出投影,与每帧 value 均值做余弦相似度打分,用类平衡的二元交叉熵损失监督(防止负样本主导)。默认冻结整个 VLM,只更新这个 token 和一个投影矩阵——参数增量可以忽略不计。

训练管线
图 3:训练管线——ReToken 输出与每帧 value 特征算余弦相似度,用相关性标签监督

还有一个部分微调变体:放开 VLM 前 1-3 层,此时加上生成损失(标准 next-token prediction)防止漂移。消融显示微调前几层在图像任务上最好,但视频任务会因域偏移掉点——冻结才是更稳的默认选择。

推理是两遍式 retrieve-then-answer:视频先编码一次,KV cache 持久化;第一遍用 ReToken 从最终层选出 top-K 帧;第二遍只加载这些帧的 KV cache 生成答案。

推理管线
图 4:推理管线——视频只编码一次,检索后仅用选中帧生成答案

长视频下,ReToken 的检索 pass 每层先看 top-256 帧(K₁),最后在最终层精排成 top-K——检索时的视野比作答时更宽,这是刻意的不对称设计。

结果:图像涨完,视频零样本也涨

Visual Haystacks 上,ReToken 的优势随上下文规模扩大而扩大。C=50 时 Qwen3VL-8B +13.4 分(72.0 vs 58.6)、InternVL3.5 +12.4 分,相对提升超过 20%:

上下文规模 CC=2C=10C=50C=100
Qwen3VL-8B82.069.258.655.7
+ ReToken85.9 (+3.9)80.7 (+11.5)72.0 (+13.4)67.7 (+12.0)
InternVL3.5-8B81.669.057.355.3
+ ReToken84.1 (+2.5)76.9 (+7.9)69.7 (+12.4)59.7 (+4.4)

更值得注意的是图像到视频的零样本迁移:ReToken 只用多图 QA 数据训练,却在长视频上直接生效。LVBench 上 Qwen3VL-8B 从 40.6 涨到 48.6(+8.0 分),视频平均时长超过 1 小时。VideoMME 的增益随视频时长增长:2 分钟短片无增益(低于检索触发阈值),4-15 分钟 +2.6,30-60 分钟 +3.4。

VideoMME 时长增益
图 6:ReToken 的增益随视频变长而变大

消融:三个值得记住的结论

第一,value 优于 key。用平均 key 检索,recall 59.4;换成 value,64.7。value 承载真正传播的内容,区分干扰物更准。

第二,两遍推理是硬需求。ReToken 只在最终层训练了检索损失,单遍推理(每层自己检索)准确率只有 50.4,两遍广播到 72.0。这不是工程取舍,是训练目标决定的架构约束。

第三,ReToken 和注意力检索走的是相反的精度-召回曲线。ReToken 在小 K 时最优——每个槽位都精准;ReKV(注意力)需要更大的 K 才能召回相关帧。下图显示了这种反向趋势:

Top-K 检索预算对比
图 5:ReToken 在小检索预算下占优,ReKV 需要更大预算——精度-召回权衡
ReToken 用最少的改动证明:长视觉上下文的瓶颈不在模型容量,而在"怎么找到该看的东西"。而"找"这件事,value 空间是比注意力分数更可靠的信号源。

工程意义

对做视频语义检索的人来说,这篇的启示是直接的:别再默认注意力分数是唯一的检索信号。value 空间被系统性低估了——它免费存在于每个 Transformer 层,不需要额外编码器,只需一个轻量投影就能变成高质量的检索特征。

工程上它足够务实:冻结主干、单卡 H100 即可训练和推理、视频只编码一次 KV cache 复用、多问题查询几乎零边际成本。对安防场景的"人车物检索"这类需求,这种"在现成 VLM 上加一个 token"的路线,比重新训练检索器或者搭 agentic pipeline 都便宜得多。

留给你的问题:如果 value 空间对检索这么有效,那对视频语义检索里的"筛查机制"——先粗筛再精排——是不是也可以把粗筛阶段直接换成 value 空间打分,而不是靠注意力或外部编码器?