多模态检索为何会「偏爱」文本?我们发现了 Chaos in the Text

为什么一段无关文本,能把真正包含答案的图片挤出 Top-K?我们系统研究了 mixed-modality retrieval 中一个长期被忽视的问题:Modality Preference(模态偏好),并提出 Trident,让文本、图像和图文融合证据在同一个排序空间中更公平地竞争。

在今天的多模态系统里,检索器已经可以同时处理文本、图片、图表、PPT、扫描文档等不同形式的信息。

于是,一个看起来很自然的假设是:

既然模型会搜文本,也会搜图片,那么把它们放在同一个知识库里一起搜,应该也没问题。

但我们的实验发现,事情并没有这么简单。

很多模型在 纯图片库 中表现很好,在 纯文本库 中也表现很好;可一旦文本和图片同时进入同一个候选库,检索性能却会显著下降。

更反直觉的是:

一段并不包含答案的文本,甚至可能排在真正包含答案的图片前面。

我们把这个现象称为:Chaos in the Text

论文:Chaos in the Text: Revealing the Modality Preference in Mixed-Modality Retrievers

*作者来自中国科学院大学、东北大学、清华大学和南京大学。论文、代码、模型以及训练/评测数据均已公开。

图 1|左:随着图像文档逐渐被文本表示替换,NDCG@10 呈现明显的 V 型变化;右:文本占据 Top-K,真正包含答案的图表被推到第 12 名。

单独都很强,为什么混在一起反而不会了?

我们首先做了一个很直接的实验。

从一个图像文档库出发,对于每份文档构造三种语义对应的表示:

Image View:原始图片;

Text View:图片内容的详细文本描述;

Fused View:原始图片 + 简短文本摘要。

然后保持文档身份和知识内容不变,只改变整个 corpus 中 Text / Image / Fused 三种形式的比例。

如果一个检索模型真正只根据「语义相关性」排序,那么同一份内容究竟以文字还是图片出现,理论上不应该让性能发生如此剧烈的变化。

然而,我们观察到了一条非常明显的 V 型曲线:

当数据库几乎全部由图片组成时,模型表现很好。

随着越来越多图片被语义对应的文本替代,性能开始快速下降;当文本和图片大量共存时,性能跌到谷底;而当数据库继续向纯文本靠近后,性能又重新回升。

换句话说:

模型不是不会搜图片,也不是不会搜文本。

真正的问题是:它并不擅长让文本和图片在同一个排行榜里公平竞争。

这一现象出现在不同架构和不同规模的多模态检索器中。

这件事对真实应用尤其重要。

现实世界的知识库几乎从来都不是整齐的单模态数据:PDF 里有正文和图表,网页里有文字和截图,企业知识库里可能同时存在 Markdown、PPT、扫描文档和图片,而 Multimodal RAG 更是天然需要让不同模态的证据共同竞争。

因此:

单模态检索表现强,并不等于 mixed-modality retrieval 也可靠。

到底是「候选变多」了,还是文本本身在抢排名?

为了进一步确认问题来自哪里,我们又做了一个更直接的实验。

从原始的图像检索库出发,我们分别加入大量:

无关图片(image distractors) 以及 无关文本(text distractors)

这些新增文档对 query 来说都不包含正确答案。

如果性能下降只是因为候选库变大,那么加入同样数量的无关文本和无关图片,影响应该大致相似。

但实验结果完全不是这样。

无关图片的影响相对有限,而无关文本会让检索性能快速下降。

在加入 50K 干扰项时,不同模型中,文本和图片干扰带来的 NDCG@10 差距达到 0.31–0.51。

图 2|蓝色为 Text-Doc distractors,橙色为 Image-Doc distractors。即使两类干扰项同样与 query 无关,文本带来的性能下降明显更严重。

这意味着:

问题并不只是「候选文档变多了」。

文本本身似乎拥有一种系统性的排名优势。

于是我们开始追问:

多模态检索模型真的只是在比较「谁和 query 更相关」吗?

还是说,除了语义相关性之外,文档属于什么模态本身也在影响最终得分?

真正的问题:Modality Preference

为了回答这个问题,我们让同一批 query 分别检索三个 语义对应、但模态不同 的 corpus:

Text、Image 和 Fused。

如果模型真正只关注语义,那么对于同一份正确内容:

正确文本、正确图片、正确图文组合应该拥有相近的竞争力。

但结果显示:

Text positive 的相似度系统性更高;Image positive 往往最低;Fused 通常处于两者之间。

也就是说,即便三者表达的是同一个语义内容,模型仍然会因为「模态不同」而给出不同的分数。

更重要的是,这并不是一个只存在于 embedding 几何空间里的现象。

它会真正改变最终排名。

图 3|左:相同语义内容以 Text / Image / Fused 形式出现时,模型给出的 similarity 明显不同。右:横轴为正确文档得分,纵轴为最强无关文本得分;位于 y=x 上方的点表示「错误文本 > 正确文档」。

在 Jina-CLIP-v2 上,94.6% 的 query 中,无关文本的得分高于相关图片。

换句话说:

模型明明面对着一张真正包含答案的图片,却可能更愿意相信一段「看起来像相关内容」的错误文本。

这就是我们所说的:

Modality Preference(模态偏好)

它与过去经常讨论的 Modality Gap 并不完全相同。

传统的 Modality Gap 更多关注文本 embedding 和图像 embedding 是否处在不同的几何区域。

但如果一个候选库里全部都是同一种模态,一个整体的 score offset 往往并不会影响同模态内部的排序。

而在 mixed-modality retrieval 中,Text、Image 和 Fused 文档必须进入 同一个 ranked list。

此时,只要不同模态之间存在系统性的 score bias,就可能直接改变 Top-K。

所以真正危险的并不是简单的「图文表示不完全重合」,而是:

模型不仅在判断「这个文档和问题有多相关」,还在隐式地受到「这个文档是什么模态」的影响。

怎么解决?我们的答案是 Trident 🔱

找到问题之后,一个很自然的想法是:

既然模型习惯把 Text、Image 和 Fused 当成三类不同的东西,那么训练时就明确告诉它:

它们是同一份证据的三种等价正样本视图。

因此,我们提出了 Trident:

它包含两个核心设计。

图 4|Trident:左侧为 Modality-Balanced Data Construction;右侧为 Multi-Positive View InfoNCE。三种 positive view 与 negatives 在同一个 shared softmax 中联合优化。

① Modality-Balanced Data Construction

对于同一份图像文档,我们同时构造三种 positive view:

Text + Image + Fused

其中:

原始图片作为 Image View;

使用 Qwen3-VL-235B 生成详细描述,作为 Text View;

将简短 summary 与原始图片组合,作为 Fused View。

这样,一个传统的单 positive 训练样本,就被扩展成了三个跨模态的 co-equal positives。

但这一步本身还不够。

因为如果 Text、Image 和 Fused 分别使用各自独立归一化的 InfoNCE,模型依然可能只学会:

「文本内部怎么排序」

以及

「图片内部怎么排序」

却没有真正解决:

文本分数和图片分数到底能不能直接比较。

② Multi-Positive View InfoNCE

Trident 的关键,是把三种 positive view 和所有 negatives 放到 同一个 shared softmax denominator 中。

训练目标为:

它还可以进一步精确分解成:

其中第一部分 Relevance Discrimination 的作用是:

让所有正确证据整体从 negatives 中获得更高的概率质量。

简单来说,就是:

正确的东西应该比错误的东西分数高。

第二部分 Positive-View Balance 的作用是:

避免 positive probability mass 全部集中到某一种模态上。

也就是说:

不能因为 Text 更容易匹配,就只依赖 Text,而忽略 Image 和 Fused。

因此,Trident 不只是「把三种模态都放进训练数据里」。

它真正做的是:

让不同模态第一次在同一个概率空间中正面竞争。

效果如何?最明显的变化:V 型曲线被填平了

图6|训练前(左),两种模型的检索性能随语料库模态比例变化明显,存在显著的性能低谷;Trident 训练后(右),性能整体提升且曲面趋于平坦,表明模型对不同模态组成的鲁棒性显著增强。

原本 mixed-modality corpus 中明显的性能低谷被显著削弱。

也就是说,无论知识库中 Text / Image / Fused 的比例怎样变化,模型的性能都更加稳定。

更重要的是,这并不是以牺牲原始单模态能力为代价换来的。

在六个 Visual Document Retrieval benchmark 上:

Qwen3-VL-Embedding-2B:Mix Avg NDCG@10 40.12 → 73.90(提升 +33.78)

Jina-CLIP-v2:Mix Avg NDCG@10 42.68 → 55.51(提升 +12.83)

而在原始单模态数据上:

Qwen3-VL-Embedding-2B:Origin Avg 77.59 → 80.51

这说明 Trident 并不是简单地「牺牲单模态性能,换取混合模态能力」。

相反,它同时提升了 mixed-modality retrieval 的鲁棒性,并保持甚至改善了原始单模态平均表现。

模型内部发生了什么变化?

除了最终检索效果,我们还进一步分析了训练前后的表征。

训练前,不同 modality pair 的余弦相似度均值差异明显。

例如:

Text–Text、Image–Image、Fused–Fused,以及 Text–Image、Text–Fused、Image–Fused,都表现出明显不同的中心位置。

这说明模型内部仍然很在意:

「你到底是文字,还是图片?」

经过 Trident 训练之后,这些分布开始明显靠拢。

图 5|训练前(上)不同 modality pair 的分布中心差异明显;Trident 训练后(下)六组分布显著对齐。

衡量六组 similarity center 差异的标准差:

Jina-CLIP-v2:0.092 → 0.011

Qwen3-VL-Embedding-2B:0.055 → 0.004

但这里还有一个很重要的结论:

Balance ≠ 强行让所有模态拥有完全相同的 similarity。

Text、Image 和 Fused 本身承载的信息并不完全相同。

真正重要的不是让它们的 cosine similarity 数值机械地变成一样,而是:

不要让任何一种模态拥有系统性的 ranking privilege。

为什么我们认为这个问题值得被关注?

过去几年,多模态检索模型越来越强。

从 CLIP、SigLIP,到 VLM-based embedding models,再到 Visual RAG 和 Multimodal RAG,我们通常会分别问:

文本检索强不强?

图片检索强不强?

但真实系统真正面对的问题其实是:

当文本、图片、图表、PPT、扫描页和图文页面全部混在一起时,它们还能不能被公平地放在同一张排行榜里?

我们的实验表明,答案并不是理所当然的「可以」。

一个模型可以拥有很强的 image retrieval capability,也可以拥有很强的 text retrieval capability,却仍然不一定是一个可靠的 mixed-modality retriever。

这也是 Chaos in the Text 想指出的问题:

多模态能力,不应该只意味着「每一种模态我都会」。

它还应该意味着:当不同模态真正同场竞争时,模型依然根据 relevance,而不是 modality 来排序。

🔱 Trident:让相关性重新成为排序的主角

一句话总结这项工作:

我们发现,现有多模态检索器会系统性地偏好文本,使无关文本在 mixed-modality corpus 中压过真正相关的视觉证据;Trident 通过 tri-view positive construction 和 shared Multi-Positive View InfoNCE,让不同模态在同一个概率空间中更公平地竞争。

最终得到的是:

更稳定的 mixed-modality retrieval

更弱的 modality preference

更强的 text-distractor robustness

无需以牺牲原始单模态平均性能为代价的整体提升

➤ Paper

🔗 https://arxiv.org/abs/2610.11816

➤ Project Page

🔗 https://chaos-in-texts.github.io/

➤ Code

🔗 https://github.com/OpenBMB/Trident

如果你也在关注 Multimodal RAG / VLM,欢迎关注我们的工作,也欢迎尝试 Trident。

Maybe the biggest problem in multimodal retrieval is not that models cannot understand different modalities, but that they do not treat them equally.