本文介绍的研究来自小米大模型 Plus 团队、西安交通大学与中关村学院团队,在 ECCV 2026 上合作提出的 ELVA,一种面向通用多模态检索的排序驱动强化学习框架。

论文标题:ELVA: Exploring Ranking-Driven Universal Multimodal Retrieval
论文链接:https://arxiv.org/pdf/2606.20280
项目链接:https://lyh200095.github.io/ELVA_projectpage/
该工作系统讨论了对比学习在复杂检索查询中存在的“粒度盲区”(grain blindness),并尝试用可验证奖励,让模型在不依赖人工排序标签和奖励模型的情况下,学会更细致地组织候选样本。
假设用户发来一张“小火龙喷火”的图片,希望找到一张内容相似的图。检索模型可能很快抓住“小火龙”这个主体,却忽略“正在喷火”这一动作。于是,它返回的图片里确实有小火龙,但动作、状态甚至场景都不对。
模型看到了最显眼的部分,却漏掉了决定检索结果是否真正匹配的细节。
这并不只是一个偶然错误。在文本搜图、以图搜图、图文组合检索等任务中,查询往往同时包含实体、属性、动作和关系等多层语义。只捕捉其中最强的一项,模型就可能得到一个“看起来相关、实际上不对”的答案。
ELVA 将这种现象概括为“粒度盲区”:当查询包含多个语义粒度时,模型倾向于依赖最容易区分样本的主导信息,而忽略其他同样关键的细粒度信息。
从结果来看,ELVA-7B 在通用多模态检索基准 M-BEIR 上高于同规模 LamRA-Ret-7B;在团队新构建的多粒度检索基准 MRBench 上,取得了13.1%的提升。
多模态检索的“粒度盲区”从何而来?
近年来,通用多模态检索(Universal Multimodal Retrieval,UMR)试图用一套统一模型处理多种检索形式:查询可以是文字、图片或图文组合,候选也可以来自不同模态。
多模态大模型具备较强的视觉语言理解能力,但它们原本主要通过生成目标进行训练。为了把这种能力转化为检索所需的向量表示,现有方法通常会引入对比学习:拉近查询与正样本的距离,同时推远查询与负样本的距离。「问题也恰恰出在这里」。
对比学习通常把样本简化为“正”与“负”两类,以“小火龙喷火”为例:一张“小火龙但没有喷火”的图片,与一张完全无关的风景图,显然不应该被同等对待。前者保留了实体信息,却缺少动作信息;后者可能连主体都不同。只有区分这两类负样本,模型才有机会理解“喷火”这一语义粒度为什么重要。
从优化角度看,如果“小火龙”这一主导特征已经足以区分正负样本,对比损失就可能很快下降;“喷火”等次级特征随之失去足够的梯度信号。将这一过程与 Gradient Starvation 联系起来:强语义粒度先完成了任务,弱一些但关键的粒度则在表示空间中被“饿死”。
为了更严格地描述这一现象,论文首先给出了“粒度”的定义:一个粒度 g 是多模态查询中不可再分的最小原子语义单元,例如实体、属性或动作。一个查询则可以表示为多个相互依赖的粒度集合:
例如,在“红色连衣裙”中,“红色”是属性粒度,“连衣裙”是实体粒度,两者需要组合起来才能表达完整的检索意图。
在此基础上,论文将“粒度盲区”正式定义为一种表示坍缩:从查询 q 中移除某个粒度 g_k 后,如果完整查询与删减查询在表示空间中的距离仍小于判别阈值 \delta,即
就说明模型没有在向量表示中保留 g_k 所对应的判别信息。
通俗地说,如果从“小火龙喷火”中删掉“喷火”,模型给出的向量几乎没有变化,那么它虽然读到了这两个词,却没有真正把“喷火”编码进检索表示。这正是粒度盲区:模型并非完全不理解查询,而是对其中某些足以改变正确答案的细节“不敏感”。

图1:传统对比学习主要区分正负样本,容易遗漏查询中的部分粒度;ELVA 通过候选排序学习更完整的细粒度信息。
ELVA:从“区分正负”走向“理解次序”
ELVA 的核心观点很直接:对于检索任务,只知道“谁对、谁错”还不够,模型还需要理解“谁更接近正确答案,以及为什么更接近”。
为此,ELVA 在预训练和指令微调之后加入第三阶段,基于可验证奖励的强化学习。与依赖人工偏好或额外奖励模型的方案不同,ELVA 将检索中可直接计算的相似度与排序关系转化为规则奖励,让模型在没有显式负样本排序标签的情况下自行探索更合理的候选层级。
ELVA 设计了两个互补的奖励函数,用两类可验证奖励同时管住“距离”和“次序”。
- Margin Reward 负责拉开正样本与最难负样本之间的相似度间隔,确保正确结果比错误结果更接近查询。它解决的是最基本的检索边界问题:正样本必须排在负样本之前,而且两者不能只差一点点。
- Ranking Reward 则进一步建模整个候选列表。它不仅鼓励正样本获得更高相似度、排在更靠前的位置,还会根据负样本与正样本的相关程度组织负样本之间的顺序。越接近正确答案的负样本,越应该排在其他负样本之前。
这种设计的意义在于,不同负样本会暴露查询中的不同语义粒度。模型不再把所有错误答案一股脑推远,而是在学习排序的过程中理解:有的候选主体正确但动作错误,有的属性相同但实体不同,还有的则完全无关。
同时,论文对排序奖励进行了连续化设计。相较于只有名次变化时才跳变的离散奖励,连续反馈能为强化学习提供更平滑的优化信号。

图2:ELVA 的三阶段训练框架。前两阶段获得基础检索模型,第三阶段通过 Margin Reward 与 Ranking Reward 进行排序驱动的强化学习。
MRBench:专门测试模型会不会漏掉查询细节
现有通用多模态检索基准覆盖了多种任务与模态,但很难单独衡量模型是否真正保留了查询中的多层语义。
为此,研究团队基于 M-BEIR 构建了 MRBench(Multi-gRain Benchmark)。该基准专门筛选同时包含两个及以上粒度属性的查询,例如“积雪的山峰”和“树木”需要同时出现,少掉任何一项都不能算准确匹配。
MRBench 的构建先由 Qwen2.5-VL-7B 自动识别多粒度查询,再通过人工抽样检查保证数据质量。最终基准包含 1000 个查询,覆盖 3 个数据集和 4 类检索任务。
相比只测试主体或单一属性,MRBench 更接近真实检索中的复杂意图:用户要找的通常不是“一匹马”,而是“换成一匹更大的马,同时把骑手改成穿黑色西装的男性”。
实验结果:标准任务、复杂查询与未知场景均有提升
实验首先在 M-BEIR 上评估 ELVA 的通用检索能力。该基准包含 16 个子任务,覆盖 8 种查询与候选模态组合。
ELVA-7B 的平均分达到 58.7,在论文所比较的方法中位列第一;同规模的 LamRA-Ret-7B 为 56.6。值得注意的是,轻量的 ELVA-2B 也取得 53.8 的平均分,并在多数子任务上超过 MM-Embed-7B 等更大模型。

图 3:ELVA 在 M-BEIR 上的结果。ELVA-7B 在多种查询与候选模态组合上取得领先表现。
在更聚焦多粒度查询的 MRBench 上,ELVA 的优势进一步扩大:相比 LamRA-Ret-7B,平均分从 38.1 提升至 43.2,论文报告相对提升 13.1%。其中,在图文组合到图像的 CIRR 子任务上,Recall@5 从 25.7 提升到 32.5。
定性结果也展示了类似现象。当用户要求在参考图基础上“换成一匹更大的马,并让男性穿黑色西装”时,基线模型容易只满足其中一部分修改;ELVA 则更有可能同时保留多个约束。

图 4:ELVA 在 MRbench 上的结果对比。

图 5:不同检索任务上的定性结果。绿色框为正确答案,ELVA 对多项查询条件的保留更完整。
在未见数据集实验中,ELVA 覆盖文本搜图、图片搜文、图文组合检索、对话检索和图文匹配等设置,并在论文所列的 10个评测设置上均取得最佳结果。

图 6:ELVA 在未见数据集上的结果对比。
排序奖励真的缓解了粒度盲区吗?
论文直接测量了完整查询与“删除一个语义粒度后的查询”之间的表示距离。 在 100 条 MRBench 查询上,基线模型的平均余弦距离仅为 0.07,说明删掉一个短语后,模型表示几乎没有明显变化;ELVA 将这一距离提高到 0.15,表明模型对被删除的动作、属性等信息更加敏感。
t-SNE 可视化给出了更直观的例子。面对“站立的狗”这一查询,基线模型容易把正确样本与“躺着的狗”“站立的猫”等难负样本混在一起;ELVA 则能形成更清晰的表示边界。

图 7:基线模型与 ELVA 的表示空间分布。ELVA 能更清晰地区分只匹配部分语义粒度的难负样本。
从更大的视角看:检索模型需要学习“错误之间的差别”
ELVA 重新审视了一个长期被默认的训练设定:在检索任务里,把样本分成正例和负例,是否已经足够?对于简单查询,二元区分或许可以完成任务;
但当查询同时包含实体、属性、动作和关系时,“负样本”并不是铁板一块。一个候选可能只错了动作,另一个可能连主体都不同。它们与正确答案之间不同程度、不同维度的差异,恰恰提供了学习细粒度语义的信号。
对复杂多模态检索来说,真正重要的也许不只是认出用户在找“什么”,还要完整理解用户要求它“是什么样、正在做什么,以及与其他内容有什么关系”。
而这一次,模型需要学会的不是简单的对与错,而是错误之间的差别。