返回 AI 应用工程 思维导图
中文·English
🤖 AI 应用工程ID: bm25-sparse-search

BM25 词频拟合稀疏检索

BM25 Sparse Retrieval
🎯核心定义
BM25 (Best Matching 25) 是一种经典的基于概率信息检索 (Probabilistic IR) 框架的高阶词频统计稀疏检索算法;其相关度得分公式为 Score(D,Q)=i=1nIDF(qi)f(qi,D)(k1+1)f(qi,D)+k1(1b+bDavgdl)\text{Score}(D, Q) = \sum_{i=1}^n \text{IDF}(q_i) \cdot \frac{f(q_i, D) \cdot (k_1 + 1)}{f(q_i, D) + k_1 \cdot (1 - b + b \cdot \frac{|D|}{\text{avgdl}})};其中 k1k_1(通常取 1.2~2.0)控制词频饱和度上界,bb(通常取 0.75)控制文档长度惩罚力度,IDF(qi)\text{IDF}(q_i) 衡量关键词的全局罕见程度。
💡使用场景
混合检索 (Hybrid Search) 的稀疏关键词召回路、特定专有名词/型号代码/SKU 编号精准匹配以及 Elasticsearch/Tantivy 索引。
解决的核心痛点
稠密向量检索 (Dense Embedding) 极度容易在特定生僻字符、产品货号、错误拼写或高精度专有名词上发生“语义平滑”,导致漏召回包含完全相同关键词的关键文档;BM25 提供了无可替代的确定性精确关键词命中保证。
🎯5 个高频面试考点 (Exam Points)
1
推导 BM25 得分公式中参数 k1k_1(词频饱和曲线)与参数 bb(文档长度惩罚)的物理含义与数学极限制约?
2
为什么在短文本或者极长文档检索中,需要针对性微调 k1k_1bb 的取值?
3
中文分词(如 Jieba, IK-Analyzer, Pku-Segmenter)的分词质量对 BM25 倒排索引建立与检索命中率的影响?
4
对比 BM25 与神经稀疏检索 (Neural Sparse Retrieval, 如 SPLADE / BGE-M3 Sparse) 在词汇扩展与泛化能力上的演进?
5
在大规模并发场景下,如何基于 WAND (Weak AND) 算法实现 BM25 Top-K 检索的高速剪枝跳跃?
📖 关联深度指南:📄 naive-and-advanced-rag
更新于 2026-08-14
🎯
检验攻克程度:针对「BM25 词频拟合稀疏检索」专属刷题排雷
做单选排雷题、推导选项机制,答错自动收录进专属错题本。
🚀 开始本考点专项刷题
上一个知识点HyDE 假设性文档嵌入下一个知识点Dense 双塔向量嵌入检索

🔗 更多 AI 应用工程 知识点卡片

向量距离度量与 L2 归一化SQ8/SQ4 标量量化PQ 乘积量化与码本聚类ADC 非对称距离计算