← 返回题库
第 174 题 · RAG · 简单

稀疏检索和稠密向量检索有什么区别?

核心必会 这代表什么?
✓ 资料核验 来源说明:公开真实面试题整理;答案依据原论文原创整理
BM25Dense RetrievalEmbedding
评论与补充 ↓
口述训练

先用自己的话答,再看参考说法

60 秒是练习上限,不是必须凑满。原理题讲清因果,设计题讲清约束,项目题只讲真实证据。

别照着背。参考说法只用于对照;直接回答问题,简单题说清楚就收尾。项目题只用自己的经历和数字。

面试时怎么答

用“词面匹配”和“语义匹配”对照最自然。稀疏检索保留词项维度,BM25 对精确名词和编号稳健、可解释;稠密检索把文本映射到连续向量,能找同义表达,但依赖训练域且可能漏掉关键字面条件。

被问生产选型时,不要强行二选一。说明混合召回通常更稳,再按查询类型、语料语言和延迟预算决定权重。

可以这样答:

稀疏检索以词项匹配为核心,BM25 对产品编号、专有名词和关键词约束很敏感,索引可解释且容易更新;稠密检索使用语义向量,能覆盖同义改写和没有共同词的相关文本,但效果受 Embedding 训练域影响。两者错误往往互补,所以实际常做双路召回再融合重排。选型应按查询类型比较 Recall、排序质量、索引成本和尾延迟。

核心回答

BM25 等稀疏检索依赖词项匹配,擅长产品编号、人名、缩写和罕见关键词;稠密检索把查询与文档编码成向量,擅长找到措辞不同但语义相近的内容。稀疏检索不需要训练领域向量模型且结果较容易解释,稠密检索能跨越字面差异但受 Embedding 模型、领域分布和近似索引影响。两者不存在无条件的优胜者。

展开说明

  • 稀疏检索:利用倒排索引。BM25 综合词频、逆文档频率和文档长度归一化计算相关度,精确词项对结果影响明显。
  • 稠密检索:双编码器分别编码 Query 和 Passage,再按点积、余弦相似度或其他与训练方式匹配的度量搜索近邻。
  • 典型失败:BM25 可能漏掉同义改写;向量检索可能把主题相似但不能回答问题的片段排得很高,并遗漏编号或拼写敏感实体。

向量相似度不是事实正确率,也不能直接与 BM25 原始分数比较。是否归一化向量、使用何种距离,应与 Embedding 模型说明和索引配置保持一致。

工程实践

分别建立 BM25-only 与 Dense-only 基线,按实体查询、自然语言改写、长问题和领域术语切片评估。记录每路候选及命中原因,再决定使用查询路由还是混合检索;不要因为平均分提升就删除在关键 SKU、法规编号等场景更可靠的关键词通道。

常见追问

  1. 为什么向量相似度高不代表文档能回答问题? 相似度可能只反映主题接近,文档仍缺少问题要求的实体、时间或因果证据;检索还需可回答性和来源约束。
  2. BM25 为什么适合专有名词和编号查询? 稀有词的 IDF 权重大,精确词项匹配不会被语义编码平滑掉,因此错误码、产品号和人名常更容易命中。
  3. 点积与余弦相似度在归一化后是什么关系? 若查询和文档向量都做 L2 归一化,点积就等于余弦相似度;未归一化时点积还受模长影响。

一句话复习

稀疏检索保留字面精确性,稠密检索提供语义泛化,选择取决于查询和语料分布。

参考资料

无需账号 · 原地交流

评论与补充

评论会直接显示在这道题下面。可以写自己的答法、继续追问或指出错误,不需要 GitHub 账号,也不会跳转到 Issue;内容会公开,请勿填写个人隐私、公司机密或受保密约束的材料。

正在加载评论…