---
title: "同一批问题、同一个文档库，只换检索器"
description: "在 NQ 上同问题、同文档库只换检索器，DPR 的命中率高于 BM25。"
---

## 这一页为什么在这里

揭示：在 Q08 定下的公平比较里，学出来的向量大幅超过 BM25。第 3 步 先给一个意外（1,000 个训练样本就够），再停在“先别急着说向量检索更好”，把学生引向 Q10 的边界。

## 上屏

- 第 1 步：表格，条件小字：2020 · DPR · Natural Questions 测试集。列：检索器｜前 20 段含答案｜前 100 段含答案。BM25 行：59.1%｜73.7%；DPR 行是“?”。
- 第 2 步：DPR 行填上 78.4%｜85.4%；59.1 → 78.4 用箭头标出。
- 第 3 步：两行：只用 1,000 个训练问答对，向量检索就已超过 BM25。只换一个部件，差别才算得到它头上。

## 讲

### 第 1 步 · 教师可说的话

先看字面检索基线

他们正是这么比的。BM25 在前 20 段里找到答案的比例是 59.1%。你猜学出来的向量能到多少？

#### 指图与比较

先看字面检索基线

### 第 2 步 · 教师可说的话

揭示向量检索成绩

78.4%。前 100 段也从 73.7% 到 85.4%。几十年的强基线，被拉开将近 20 个点。

#### 指图与比较

揭示向量检索成绩

### 第 3 步 · 教师可说的话

看样本效率并划定归因

更意外的是，只用 1,000 个训练样本，向量检索就已经超过 BM25。RAG 用的检索器正是它。但先别急着说“向量检索更好”，下一页换个地方再测一次。

#### 指图与比较

看样本效率并划定归因

### 本页衔接

先别把同分布胜出推广到所有领域；下一页换分布再测。

### 连续教师稿原文

他们正是这么比的。BM25 在前 20 段里找到答案的比例是 59.1%。你猜学出来的向量能到多少？

78.4%。前 100 段也从 73.7% 到 85.4%。几十年的强基线，被拉开将近 20 个点。

更意外的是，只用 1,000 个训练样本，向量检索就已经超过 BM25。RAG 用的检索器正是它。但先别急着说“向量检索更好”，下一页换个地方再测一次。

## 完整推理

**结果。** DPR 论文表 2：在 Natural Questions 测试集上，前 20 段含答案的比例 BM25 为 59.1%，DPR 为 78.4%；前 100 段为 73.7% 对 85.4%。几十年的强基线被拉开约 19 个百分点。

**样本效率。** §5.2 与图 1（NQ 开发集）：只用 1,000 个训练问答对训练的 DPR，前 20 段命中已超过 BM25。对 2020 年的人来说这是意外：以为学出来的检索器需要海量标注，其实少量就够。双编码器建在预训练语言模型（BERT）上，借了它已有的语言知识。

**为什么这个比较可信。** 问题、文档库、判据相同，只换检索器，分数差可以归到检索器上。这是方法线的第二步。

**它还没说明什么。** DPR 在 NQ 上训练、也在 NQ 上测，训练和测试来自同一个分布。换一个领域、不再训练，它还赢不赢？这是下一页。

**接上 RAG。** RAG 的检索器正是用 DPR 的双编码器初始化的（它在 TriviaQA 与 Natural Questions 上训练过），问题编码器在 RAG 训练中继续微调。

## 学生可能的回答与误区

- 第 1 步｜猜的数多半偏低（60–70%）。揭示后追问：差这么多，会不会是别的东西不同？这张表里只有检索器不同。
- 第 3 步｜“所以向量检索全面更好。”这是同一个分布里的结论；Q10 换了领域就不成立了。
- 第 3 步｜“1,000 个样本就够，说明任务很简单。”它说明双编码器借了预训练模型的语言知识，少量问答对就能调到可用；不说明开放域问答简单。

## 教学构造与出处

- 箭头和“只换一个部件”一句是课件的归纳。
- [DPR · 表 2、§5.2 与图 1](https://arxiv.org/abs/2004.04906)：arXiv 2004.04906v3；表 2 是 NQ 测试集的前 20／前 100 段检索准确率；样本效率来自 NQ 开发集（图 1）。来源支持。
- [RAG · §2.2 Retriever: DPR](https://arxiv.org/abs/2005.11401)：arXiv 2005.11401v4；检索器用 DPR 预训练的双编码器初始化。

## 动手

- LAB-A｜检索器开关：[Deepnote · A｜换索引：知识从哪来](https://deepnote.com/workspace/Coding-with-AI-5ba66b0a-4283-4f5a-ae06-3f68d3201e99/project/Fall-26-Lecture-08-b602cd7f-d74a-4241-88c0-43f23fcc67bb/notebook/LAB-A-61eab12c6f8441d49ae6606c943c8e9b)。同一个 40 段的教学书架、同一批题，只换检索器：字面（TF-IDF）与小型向量模型（MiniLM），比较前 k 段里有没有支持段。
- 先写下：同义改写的题，哪个检索器更容易取到？
- 课前实测（教学用小实验，不是 DPR 复现）：同义改写的 10 题，取 3 段时向量 10/10、字面 2/10；取 1 段时向量 1/10、字面 0/10。
- 再只改一个条件：取回段数在 1 和 3 之间切换，看向量检索的优势还剩多少。

[在课堂中打开](/slides/dpr-vs-bm25)
