向量嵌入已经彻底改变了信息检索领域。从驱动 Google 搜索到在亚马逊上精准推荐商品,密集向量表示已成为现代搜索系统的核心。我们不断要求它们处理越来越复杂的任务——遵循复杂指令、多模态搜索、代码推理——并一直假设,只要模型更大、数据更好,单个嵌入向量最终就能表示任何查询,并按照任何相关性标准检索文档。

但是,如果单个向量所能承载的能力存在根本性的数学限制呢?如果无论模型规模和训练质量多高,对某些查询而言,总会有一些相关文档组合它根本无法检索出来呢?

来自 Google DeepMind 和约翰斯·霍普金斯大学研究人员的最新论文 《论基于嵌入的检索的理论局限性》(On the Theoretical Limitations of Embedding-Based Retrieval) 正是探讨这一问题。它在神经检索的实践世界与通信复杂度理论的抽象领域之间架起桥梁。作者证明,嵌入向量的维度对其可表示的 top-k 文档集合施加了硬性上限,并通过实证测试验证了这一结论。为了更直观地说明,他们构建了一个名为 LIMIT 的数据集,利用该限制成功“攻破”了当前最先进的模型。

在本文中,我们将解析该理论、回顾实验过程,并探讨这些发现对检索未来的意义。


通用嵌入的崛起

几十年来,信息检索一直由稀疏方法主导,例如 BM25,它根据词频将文档表示为高维稀疏向量。虽然这些方法行之有效,但在语义理解方面存在缺陷——难以处理同义词、复述以及概念性查询。

密集检索改变了这一局面。神经网络现在将查询和文档映射到一个共享的低维空间 (如 768 或 4096 维) ,在该空间中,语义相似性与几何邻近性一致。例如,当你搜索“永恒之城有什么可看的”,你的查询向量应该会落在“罗马地标”向量附近。

密集检索已被证明非常强大。但新的基准已将这些模型推向了远超关键词匹配的领域,进入了指令遵循与推理任务,例如:

  • 查询中的逻辑运算: “瓜德罗普岛的蛾类或昆虫或节肢动物”
  • 基于推理的相关性: “查找其他使用动态规划的 Leetcode 问题”

这些任务要求模型能够动态地将以往不相关的文档组合在一起——极大增加了需表示的“相关集”数量。隐含的挑战是: 处理所有可能的任务

论文提出的问题是:** 这真的可能吗?**


理论极限: 几何与检索的交汇点

核心洞见将检索与学习理论中的一个概念联系起来:** 符号秩 (sign rank)** 。

形式化检索

考虑一个包含 m 个查询和 n 个文档的检索任务。我们用一个二元矩阵表示真实相关性:

\[ A \in \{0, 1\}^{m \times n} \]

其中,如果文档 j 与查询 i 相关,则 \(A_{ij} = 1\)。这通常称为 qrels 矩阵。

嵌入模型会生成:

  • 查询向量 \(\mathbf{u}_i \in \mathbb{R}^d\)
  • 文档向量 \(\mathbf{v}_j \in \mathbb{R}^d\)

得分通常通过点积计算: \(s_{ij} = \mathbf{u}_i^T \mathbf{v}_j\)。对于每个查询,相关文档的得分应高于不相关文档。

将所有查询和文档向量堆叠成矩阵 \(U\) 和 \(V\),得分矩阵为:

\[ B = U^T V \]

\(B\) 的秩最多为 \(d\),即嵌入维度。问题变成:

最小的 \(d\) 是多少,才能保证存在一个秩为 \(d\) 的得分矩阵 \(B\),为每个查询正确排序所有文档?

作者将此称为 \(A\) 的**逐行保序秩 **(row-wise order-preserving rank) ,记作 \(\operatorname{rank}_{\mathrm{rop}} A\)。

引入符号秩

一个矩阵 \(M \in \{-1, +1\}^{m \times n}\) 的符号秩是与 \(M\) 符号模式一致的实数矩阵 \(B\) 的最小秩。

将二元相关矩阵 \(A\) 转换为 \((2A - \mathbf{1}_{m \times n})\),相关文档记为 +1,不相关记为 -1。

关键理论结果 (命题 2) 为:

\[ \operatorname{rank}_{\pm}(2A - \mathbf{1}) - 1 \le \operatorname{rank}_{\mathrm{rop}} A \le \operatorname{rank}_{\pm}(2A - \mathbf{1}) \]

通俗来说:

  • 完美解决某个检索任务所需的最小嵌入维度,几乎等于其转换后相关矩阵的符号秩。

启示

  1. 困难任务不可避免。 存在符号秩任意高的矩阵。对于任意固定 \(d\),总会有任务无法完美解决。
  2. 任务难度可度量。 检索任务的表示复杂度由其 qrel 矩阵的符号秩刻画。

理论测试: 最佳情况优化

接下来作者追问: 这种限制在实践中会出现吗?

自由嵌入优化

他们绕过了自然语言。在自由嵌入实验中,查询和文档直接表示为可训练向量,并在测试集上用 InfoNCE 损失优化。无语言约束,无需泛化。

目标是: 对于固定 \(d\) 和 top-k = 2,找到临界 n 值 (critical-n) ——即在所有 \(\binom{n}{k}\) 相关组合无法再表示前,文档数量 \(n\) 的最大值。

嵌入维度与临界 n 值的关系,呈多项式拟合。

图 2 | 临界 n 值随嵌入维度 \(d\) 呈多项式增长。

结果显示,\(d\) 与可表示的最大 \(n\) 存在清晰的立方关系。即便在这种理想化环境下,现实世界规模的语料库也远超可行范围。当 \(d=1024\) 时,临界 n ≈ 400 万;当 \(d=4096\) 时,≈ 2.5 亿。互联网级 (数十亿文档) 超出极限。


LIMIT: 为“攻破”模型而生的数据集

在抽象层面验证理论后,作者用一个具有最大化组合复杂度的自然语言数据集测试真实模型。

将抽象的相关性组合映射为简单的自然语言陈述的过程。

图 1 | LIMIT 数据集创建过程。将 N 个文档的所有相关组合映射为简单的“likes”句子。

构建过程

  1. 密集组合: 从 46 个“核心”文档开始,生成所有 \(\binom{46}{2} = 1035\) 个查询,每个查询对应唯一的一对文档。
  2. 自然语言映射: 查询为“谁喜欢 X?”,文档如“Jon Durben 喜欢短尾矮袋鼠和苹果。”
  3. 现实语料库: 将 46 个核心文档嵌入到一个含 5 万文档的大集合中,同时制作仅包含这 46 个相关文档的“小型”版本。

语言上极其简单,但组合复杂度极高


结果: 最先进模型遭遇挑战

多个模型在完整 LIMIT 数据集上的 Recall@2、Recall@10、Recall@100。

图 3 | 完整 LIMIT 数据集上的结果。即使顶级密集模型,Recall@100 也难超 20%。

发现:

  • 维度重要: 更高 \(d\) 提升各模型召回率——符合理论预测。
  • 替代架构更优: 稀疏 BM25 与多向量 GTE-ModernColBERT 明显优于单向量密集模型。

即便在小型版本上:

在小型 LIMIT 数据集上的 Recall@2、Recall@10、Recall@20。

图 4 | LIMIT-small (N=46) 结果。无模型达成完美召回。


消融研究: 探明原因

领域偏移? 在 LIMIT 训练数据上微调几乎无效;在测试集上过拟合则能解决任务——证明限制源于表示能力,而非未见查询类型。

在 LIMIT 数据集上,训练集微调与测试集微调的性能对比。

Qrel 模式? 将相关模式改为 random (随机) 、cycle (循环) 或 disjoint (不相交) 大幅降低难度,原始 dense (密集) 模式仍最难。

在密集 qrel 模式与其他模式上的性能下降对比。

与 BEIR 相关性? 毫无关联。LIMIT 测量的是另一种独立能力。

散点图显示 BEIR 和 LIMIT 分数之间没有相关性。


对检索的意义

关键结论:

  1. 根本性限制: 对固定嵌入维度,部分任务对单向量模型不可解。
  2. 组合复杂性杀伤性能: 符号秩越高,任务越难。
  3. LIMIT 暴露脆弱性: 即使简单任务,若相关性密集交织,也能击败顶尖模型。

密集检索仍有价值——很多实际场景不需覆盖所有组合。但若追求通用、可执行指令的检索 (“任意查询、任意相关性”) ,单向量嵌入可能会撞上不可逾越的壁垒。


前进之路

多向量模型: 天生更具表达力,LIMIT 表现突出,但在指令遵循任务中仍待探索。

稀疏模型: 巨大维度免受几何限制,但在缺乏词汇重叠时,难应用于推理任务。

交叉编码器: 不适用于首阶段检索,但如 Gemini-2.5-Pro 等重排序器可轻松解决 LIMIT-small。


密集检索并未终结——只是存在边界。构建下一代检索智能体,前景或在混合方法: 既保留密集检索效率,又融入多向量及稀疏方法的表达能力。

理解并尊重这些理论限制,将帮助我们在组合复杂性面前减少失败,在关键时刻更多成功。