← 返回 2026-07-31

ReToken:用一个可学习令牌改进视觉语言模型的视觉检索 ReToken: One Token to Improve Vision-Language Models for Visual Retrieval

Yao Xiao, Reuben Tan, Zhen Zhu, Yuqun Wu, Jianfeng Gao, Derek Hoiem 📅 2026-07-30 👍 8 2026-08-05 19:06
值空间检索 可学习令牌 注意力机制 视觉语言模型 视频理解 长上下文检索

训练单个可学习令牌在值空间检索,让VLM精准定位长视觉上下文中的相关帧。

前置知识

视觉语言模型 (VLM)

视觉语言模型(如 Qwen3VL、InternVL3.5、LLaVA)将视觉编码器与大型语言模型对齐,能同时理解图像/视频和文本,并自回归地生成回答。其内部仍是 decoder-only Transformer,注意力层对图像 token 和文本 token 一视同仁地进行计算。

本文所有改进都建立在冻结的 VLM 之上,理解 VLM 如何把图像变成 token 序列、如何在层间累积 KV 缓存,是读懂检索发生在哪个特征空间的前提。

注意力的 Query-Key-Value 机制

Transformer 注意力为每个 token 计算查询向量 $q$、键向量 $k$ 和值向量 $v$。注意力权重由 $q$ 与 $k$ 的内积决定(决定内容如何被聚合),而被聚合的内容则来自 $v$(决定实际传播的信息)。$v$ 携带 token 对所有注意到它的 token 的内容贡献。

本文的核心诊断正是区分这两个空间:发现用 $k$(query-key 空间)做视觉检索不可靠,而用 $v$(值空间)做检索信号要强得多。不理解 Q/K/V 就无法理解这一关键洞察。

KV 缓存

自回归模型在生成时把每层每个 token 的键 $k$ 和值 $v$ 投影缓存下来,避免重复计算。长视频会把所有帧的 KV 缓存累积起来,规模可达数十万 token,是显存瓶颈所在。

ReToken 的推理流程正是先把视频编码一次、写入持久 KV 缓存,再在缓存上做检索并只加载相关帧的 KV 来回答,理解 KV 缓存才能理解其两遍推理与显存效率。

可学习令牌 / 软提示

在输入序列中插入若干可训练的连续嵌入向量(如 BLIP-2 的 Q-Former 查询、Flamingo 的 Perceiver Resampler),通过反向传播学习它们如何聚合或条件化视觉信息,不改变离散词表。

ReToken 本质上是一个被显式当作检索目标来训练的可学习令牌;要理解它的轻量性和与 Q-Former 等方法的本质区别,需要先熟悉可学习令牌这一范式。

类平衡二元交叉熵

当正负样本严重不均衡时(如少数相关帧 vs 大量干扰帧),普通 BCE 会被负样本主导。类平衡 BCE 把正、负项分别归一化后再相加:$\mathcal{L} = -\frac{1}{|F^+|}\sum\log\sigma(\tau s_f) - \frac{1}{|F^-|}\sum\log(1-\sigma(\tau s_f))$。

ReToken 用类平衡 BCE 监督检索分数对齐真实帧相关性标签,这是它能把极少数相关帧学出来的关键,理解该损失才能看懂训练目标。

研究动机

长视觉上下文——大量图像集合或小时级视频——如今已落入 VLM 的输入范围,但带来两个难题。其一,当只有一小部分图像/帧与问题相关时,VLM 难以从大量干扰中锁定答案,性能随干扰数量增长而急剧下降。其二,一次性把全部 token 灌入模型,在 GPU 显存约束下计算不可行。于是处理长视觉输入最终归结为一个检索问题:选出能让模型给出正确答案的少量帧或 token。作者诊断后发现,直接把模型自身的注意力分数当作检索信号这条路对 VLM 是失效的:文本与视觉特征之间的注意力与相关性只是弱相关(见 Fig. 1a),基于注意力的检索器(ReKV)在 QAEgo4DTest-MC 上跨层平均 recall@1 仅有 5.1%(Fig. 1b)。原因有二:注意力本来是为下一个 token 预测而非检索训练的;而且 VLM 训练数据里输入图像/视频几乎总是与问题完全相关,模型从未被迫在视觉输入之间做选择。

本文的目标是在不破坏预训练 VLM 能力的前提下,引入一个极轻量、可学习的检索目标,使模型能在自身特征空间中精准识别与问题相关的视觉帧,从而把动辄数十万 token 的长视觉上下文压缩到既放得进显存、又对答案有信息量的子集。更具体地,本文要同时达成三件事:第一,揭示并验证一个被忽视的信号来源——在值(value)空间而非查询-键(query-key)空间计算检索分数能提供强得多的相关性线索;第二,用单个数据学到的令牌替代手工的、对措辞敏感的“问题平均查询”;第三,证明仅用多图像问答数据训练出的检索能力,能零样本迁移到小时级长视频理解。

与已有工作不同的是,以往视觉检索要么走外部检索器路线(如 CLIP/SigLIP2/E5-V,先选图再让 VLM 重新编码,存在重编码开销且与 VLM 特征解耦),要么走“模型自身注意力即检索信号”路线(如 ReKV、InfLLM、EM-LLM 直接复用 NLP 中的 query-to-key 注意力)。本文的独特切入是一次精巧的诊断实验:在两图设置下,用精确的目标短语去匹配平均视觉值投影 $\bar{v}^\top\bar{v}_f$,比匹配键投影 $\bar{q}^\top\bar{k}_f$ 把 recall@1 从 65.7 提到 78.0(Qwen3VL),从 78.8 提到 83.8(InternVL3.5)。这揭示出值空间携带更强、更对齐文本的信号——但简单地平均所有问题 token 会引入噪声抹掉这一优势。于是作者没有手工选短语,而是训练一个令牌去学这个“精确查询”,并用显式检索损失监督,填补了“值空间更强但需精确查询”与“自动化学习查询”之间的空白。

核心方法

直觉很朴素:既然值空间携带更强信号、却需要一个精确而非含噪的查询,那与其手工挑“目标短语”,不如让数据学一个。技术路线上,作者在问题末尾追加单个可学习嵌入 $X_r \in \mathbb{R}^d$ 作为显式检索目标。默认冻结整个 VLM,只训练这一个令牌和一个 $d\times d$ 的投影矩阵 $W_r$,新增参数极少。前向时,$X_r$ 经 VLM 最后一层 $L_N$ 后的输出经 $W_r$ 投影,与每一帧在该层均值化的值向量 $\bar{v}^{(N)}_f$ 做余弦相似度,得到该帧的检索分数 $s^{(N)}_f$。这些分数用类平衡二元交叉熵对真实帧相关性标签 $y_f\in\{0,1\}$ 监督。推理采用两遍 retrieve-then-answer 流水线:先编码视频一次写入持久 KV 缓存,第一遍算出最后一层的检索集合 $\mathcal{S}^{(N)}_K$ 并广播到所有层,第二遍只载入选中帧的视觉 KV 生成答案。

核心创新是把“在值空间用一个可学习检索令牌做视觉检索”这一组合做对、做轻。与 Q-Former、Perceiver Resampler 这类可学习令牌方法有三条本质区别:其一,机制上 Q-Former 用静态、与查询无关的输入条件把视觉特征压缩成 32–64 个 token 直接参与生成,而 ReToken 是动态生成的——先用占位符跑一遍得到一个输出 token,再用它去从已填充的 KV 缓存里检索相关帧;其二,监督上 Q-Former 用对齐/生成损失训练为压缩器,ReToken 用直接对最后一层值向量打分的显式检索损失监督;其三,容量上只需 1 个 token 而非 32–64 个。更深层的贡献是诊断性的:首次系统证明注意力(query-key)分数对预训练 VLM 的视觉检索不可靠(5.1% recall@1),而值空间才是携带强文本对齐信号的地方。设计上还引入了非对称检索预算——检索遍每早层可注意 $K_1=256$ 帧,而回答遍只用 $K$ 帧,让排序阶段见到更多上下文再做精排。

方法步骤详情

训练:把 $X_r$ 追加到问题,冻结 VLM 前向得到其最后一层隐状态,经 $W_r$ 投影;同时算每帧均值值向量 $\bar{v}^{(N)}_f=\frac{1}{|\mathbf{I}_v^{(f)}|}\sum v_i^{(N)}$;二者余弦相似度得 $s^{(N)}_f$;用类平衡 BCE 监督 $\mathcal{L}_{ret}=\frac{1}{|\mathcal{F}^+|}\sum -\log\sigma(\tau s_f)+\frac{1}{|\mathcal{F}^-|}\sum -\log(1-\sigma(\tau s_f))$,$\tau$ 为可学习缩放。Qwen3VL-8B 用 batch 64、学习率 $3\times10^{-4}$ 训练 3 epoch(单 H100),InternVL3.5 仅 1 epoch;部分微调变体微调前 1–3 层、学习率 $2\times10^{-5}$,额外加生成损失 $\mathcal{L}=\mathcal{L}_{ret}+\lambda\mathcal{L}_{gen}$。推理两遍:先编码视频一次写持久 KV(长视频以 chunk=128 帧、滑窗 $l_m=30000$ token 分块);检索遍 $X_r$ 前向,短视频在 $L_N$ 算 $\mathcal{S}^{(N)}_K$,长视频在 $l<N$ 层先用该层值投影投影 $X_r^{(l)}$ 并与帧均值值向量打分、限制注意 top-$K_1=256$ 帧,再在 $L_N$ 算 $\mathcal{S}^{(N)}_K$;回答遍每层只载入选中帧的 KV、按时间重排后生成。

技术新颖性

新颖性体现在四个层面。第一,诊断性发现:系统量化了注意力对视觉检索的失效(5.1% recall@1),并用对照实验证明值空间显著优于 query-key 空间(精确短语下值-值匹配 78.0% vs 65.7%),并从“值携带被聚合的实际内容、键只决定如何聚合”的角度给出机理性解释,呼应了图像分割与 TextRegion 等工作里“值特征更富语义”的观察。第二,方法极简:整个方案只新增一个令牌加一个投影矩阵,VLM 默认冻结,训练和长视频推理都能塞进单张 H100,与动辄训练整套检索器的方案形成对比。第三,推理设计上有三处非显然之处:因 $X_r$ 只在 $L_N$ 监督故采用两遍推理并把最后一层检索集合广播到所有层(两遍 72.0 vs 单遍 50.4);用非对称预算 $K_1=256$ vs $K$ 让排序更准;视频只编码一次、多问共享 KV 缓存。第四,泛化性惊喜:仅用多图像 QA 训练就零样本迁移到小时级长视频(LVBench +8.0),暗示视觉检索能力可跨图像-视频迁移。

检索示例:问题句子 vs 目标短语
Figure 2: 检索示例:问题句子 vs 目标短语
训练流水线
Figure 3: 训练流水线
推理流水线
Figure 4: 推理流水线

实验结果

检索质量(Table 2,Visual Haystacks,K=1,冻结 Qwen3VL-8B):C=2 时 ReToken recall@1 88.5% 远超 ReKV 63.3%、SigLIP2 76.4%;C=50 拉到 64.7% vs ReKV 1.8% vs SigLIP2 20.8%,准确率 72.0% 逼近 GT Cache oracle 80.7%。准确率(Table 4)随上下文增大而放大:Qwen3VL-8B 在 C=50 +13.4(58.6→72.0)、C=100 +12.0;InternVL3.5-8B C=50 +12.4 但 C=100 仅 +4.4(归因 1-epoch)。Fig. 5 显示 ReToken 小 K 精确、ReKV 需大 K 召回,呈交叉。视频迁移(Table 5/6):QAEgo4DTest-MC K=1 +6.8(42.8→49.6);Video-MME Short +0.0、Medium +2.6、Long +3.4;LVBench 零样本 +8.0(40.6→48.6)。消融:值优于键(Table 7,recall 64.7 vs 59.4);两遍对 ReToken 关键(Table 9,72.0 vs 50.4)。效率(Table 10):编码 14.7s/视频一次性,ReToken 每问检索多约 0.4s。误差(Table 11):关键信息检索 +15.4、实体识别 +10.5 最强,摘要 -5.2。

值×值更 informative,但对输入敏感(2 图检索 1 图,按检索分数)
Table 1: 值×值更 informative,但对输入敏感(2 图检索 1 图,按检索分数)
检索策略对比(Visual Haystacks,K=1)
Table 2: 检索策略对比(Visual Haystacks,K=1)
在检索数据上部分微调产生更干净的 KV 缓存
Table 3: 在检索数据上部分微调产生更干净的 KV 缓存
ReToken 优势随上下文增大而扩大(冻结 VLM,>20% 相对增益 at C=50)
Table 4: ReToken 优势随上下文增大而扩大(冻结 VLM,>20% 相对增益 at C=50)
QAEgo4DTest-MC 上的零样本性能
Table 5: QAEgo4DTest-MC 上的零样本性能
ReToken 对长视频帮助更大(即使只用图像训练,冻结 VLM)
Table 6: ReToken 对长视频帮助更大(即使只用图像训练,冻结 VLM)
键 vs 值(消融)
Table 7: 键 vs 值(消融)
微调早层可提升图像任务但降低视频任务
Table 8: 微调早层可提升图像任务但降低视频任务
两遍推理(消融)
Table 9: 两遍推理(消融)
长视频问答的运行时 vs 质量(QAEgo4DTest-MC,单 H100)
Table 10: 长视频问答的运行时 vs 质量(QAEgo4DTest-MC,单 H100)
ReToken 在证据局部化且可命名时帮助最大,在散布全视频时反而变差(LVBench 分类型准确率,K=100)
Table 11: ReToken 在证据局部化且可命名时帮助最大,在散布全视频时反而变差(LVBench 分类型准确率,K=100)
准确率 vs 检索图像数 K
Figure 5: 准确率 vs 检索图像数 K
查看结构化数据
任务指标本文基线提升
Visual Haystacks 准确率 (C=50, K=1) Accuracy (%) 72.0 (+RETOKEN) 58.6 (Qwen3VL-8B) +13.4 绝对,>20% 相对
Visual Haystacks 检索召回 (C=50, K=1) Recall@1 (%) 64.7 (RETOKEN) 1.8 (ReKV) / 20.8 (SigLIP2) +62.9 相对 ReKV
Visual Haystacks 准确率 (InternVL3.5, C=50) Accuracy (%) 69.7 (+RETOKEN) 57.3 (InternVL3.5-8B) +12.4
QAEgo4DTest-MC 长视频问答 (K=1) QA Accuracy (%) 49.6 (RETOKEN) 42.8 (Uniformly) +6.8
LVBench 超长视频理解 (零样本迁移) Accuracy (%) 48.6 (+RETOKEN) 40.6 (Qwen3VL-8B) +8.0
Video-MME Long (30–60 min) Accuracy (%) 67.1 (+RETOKEN) 65.1 (Qwen3VL-8B) +2.0

局限与改进

作者坦承的局限主要有两点:ReToken 需要两遍前向,且检索遍在早层注意更多视觉上下文,会比标准推理多占用一些显存和响应时间;训练数据仅限多图像问答,没有用视频数据,因此 ReToken 按帧独立打分、难以捕捉跨帧的时序结构。结合实验我进一步观察到几点:Table 11 显示在证据散布全视频的任务上(摘要 -5.2)方法反而变差,且对“可命名实体/局部化信息”依赖很强,说明检索粒度(帧级均值池化)会稀释只占少数 token 的证据;InternVL3.5 在 C=100 仅 +4.4,作者虽归因于 1-epoch 训练预算,但也暗示方法对每图 token 数较多的模型未必鲁棒;早层检索预算 $K_1=256$ 是经验取值,论文未充分探索它对不同视频长度/帧率的最优设置;两遍推理的固定开销在“每视频只问一两个问题”的场景下,相对 14.7s 的编码成本并不划算,更适合多问共享缓存的场景。

独立分析的弱点

第一,帧级均值池化稀释证据——ReToken 用整帧平均 $\bar{v}^{(N)}_f$ 打分,少量真正相关的 token 会被同帧其余内容淹没,这是摘要类任务变差的根因;改进方向是 token 级检索分数或可学习的帧内池化。第二,单帧独立打分无法建模跨帧组合信息,导致时序定位 (+3.6) 与事件理解 (+1.9) 收益有限;改进方向是检索“连续帧集合”,让信息来自帧间时序组合。第三,对“时序位移查询”失效——如“我进房间前发生了什么”会被内容匹配定位到所描述的事件本身而非其前序帧;改进方向是引入时序位移感知的打分机制。第四,早层 $K_1=256$ 与回答 $K$ 的非对称预算是经验常数;改进方向是按视频长度/查询难度自适应。第五,强依赖带相关性标签的训练数据(MIRAGE),难以低成本扩展到新域;改进方向是弱监督或自监督预训练。第六,两遍前向的固定开销对单问场景不友好;改进方向是流式编码与缓存复用的进一步工程化。

未来方向

作者明确提出三个方向:(1) 把检索目标从单帧扩展到连续帧集合,使其信息来自时序组合而非任何单帧;(2) 设计对时序位移敏感的打分机制,以回答“事件之前/之后”这类查询;(3) 在 token 级而非帧级计算检索分数,恢复被帧级均值池化稀释的稀疏证据。基于本文成果可进一步延伸:把“值空间检索”这一洞察迁移到纯文本长上下文 LLM,验证值空间优势是否跨模态成立;用视频数据训练 ReToken 以显式建模时序结构;探索多 ReToken 令牌用于多跳检索(论文 Supp C.1 已 ablate 单 token 足够,但多 token 可能服务于多子问题);将 ReToken 与 token 压缩类方法(Video-XL)结合,兼顾压缩与检索;以及在 KV 缓存上直接检索给出理论保证,研究为什么 $K_1=256$ 这样的早层预算有效。

复现评估

复现友好度较高。代码已开源(https://github.com/avaxiao/ReToken)。训练用公开的 MIRAGE 微调集(RetVQA/SlideVQA/WebQA + 由 LLaVA Visual Instruct 150K 聚类与干扰物采样合成,细节见 Supp B.1),评测基准 Visual Haystacks、QAEgo4DTest-MC、LVBench、Video-MME 均公开。训练成本低:冻结设置下 Qwen3VL-8B 单 H100 训练 3 epoch,部分微调约 4 小时,关键超参(batch 64、学习率 $3\times10^{-4}$ 冻结 / $2\times10^{-5}$ 微调)明确给出;长视频 chunk=128 帧、滑窗 $l_m=30000$ token 也写明。主要门槛:需自行准备 MIRAGE 合成流程、整合各基准评测脚本,工作量中等;复现 InternVL3.5 这类每图 token 更多的 backbone 需更大显存;两遍推理与非对称预算的工程实现需熟悉 VLM 前向与 KV 缓存管理。