news 2026/4/18 8:30:17

一篇文章讲明白tf-idf,BM25

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
一篇文章讲明白tf-idf,BM25

第一章基础概念

1.1TF-IDF 核心概念

TF-IDF 是文本向量化工具,核心目标是「把文本转化为可量化的关键词权重向量」,而非直接计算相似度:

  • TF(词频):一个词在某篇文档中出现的次数,反映该词在文档内的重要性;

  • IDF(逆文档频率):一个词在整个文档库中出现的文档数越少,IDF 越高,反映该词的 “区分度”(比如 “RAG” 比 “的” 区分度高);

  • 核心逻辑:TF × IDF = 词的最终权重 → 每篇文本转化为 “词 - 权重” 的向量(比如「大模型:0.8,RAG:0.9」);

  • 关键特点:仅做 “文本→向量” 的转换,相似度需后续用余弦相似度等工具计算;无词频饱和(高频词权重易失真)、无文档长度归一化(长文档易占优)

1.2BM25核心概念

BM25 是检索场景专用的相似度评分算法,核心目标是「直接计算查询与文档的相关性分数」,专为 RAG 等检索场景设计:

  • 核心逻辑:对查询中的每个关键词,计算其在文档中的 “贡献分”(融合 TF、IDF,新增「词频饱和度」「文档长度归一化」)→ 所有关键词贡献分求和 = 最终相似度评分;

  • 关键优化(对比 TF-IDF)

    1. 词频饱和:高频词的权重增长会放缓(比如 “RAG” 出现 10 次≠权重涨 10 倍),避免刷屏;

    2. 长度归一化:显式修正文档长度影响(长 / 短文档公平对比);

  • 关键特点:无需向量转换,直接输出相似度分数;是 RAG 中文本召回的首选,效果远优于 TF-IDF。

第二章tf-idf计算

2.1计算方法

TF-IDF 的计算流程核心是「先分词预处理,再逐词算 TF/IDF,最后合成向量」,全程围绕 “把文本转化为关键词权重向量” 展开

总流程(5 步):预处理 → 算 TF → 算 IDF → 算 TF-IDF 权重 → 生成文本向量

2.2计算实例

第三章bm25计算

3.1计算方法

通过上述计算公式,可以得到每个词的在每个文档中的相似度,把query中每个词的相似度加起来就是query和每个文档的相似度

第四章总结

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 7:57:02

Jupyter Notebook直连远程GPU服务器:Miniconda镜像配置详解

Jupyter Notebook直连远程GPU服务器:Miniconda镜像配置详解 在深度学习项目开发中,一个常见的场景是:你在自己的笔记本上写代码,模型却跑不动——显存爆了、训练太慢、CUDA版本不兼容。于是你转向云上的A100服务器,却发…

作者头像 李华
网站建设 2026/4/17 22:51:55

CondaError频繁出现?掌握这几点彻底告别环境激活问题

CondaError频繁出现?掌握这几点彻底告别环境激活问题 在搭建Python开发环境时,你是否曾被 CondaError: unable to activate environment 这类错误反复折磨?明明昨天还能正常工作的命令,今天一登服务器却提示“conda: command not…

作者头像 李华
网站建设 2026/3/29 7:35:39

端到端(End-to-End)十年演进(2015–2025)

端到端(End-to-End)十年演进(2015–2025) 一句话总论: 2015年端到端还是“实验室概念小样本图像分类”的学术玩具,2025年已进化成“VLA大模型统一感知-意图-规划-控制零中间模块全场景L4–L5智驾/具身智能”…

作者头像 李华
网站建设 2026/4/3 17:25:51

感知算法十年演进(2015–2025)

感知算法十年演进(2015–2025) 一句话总论: 2015年感知算法还是“2D摄像头激光SLAM手工特征”的规则时代,2025年已进化成“多模态VLA大模型事件相机4D重建量子辅助鲁棒”的端到端具身感知,中国从跟随者跃升全球领跑者&…

作者头像 李华
网站建设 2026/4/18 6:10:31

Anaconda下载太慢?切换清华镜像源提升Miniconda安装效率

切换清华镜像源:解决 Miniconda 下载慢的终极方案 在数据科学和AI开发中,你是否经历过这样的场景?运行 conda install pytorch 后盯着终端发呆,下载速度卡在几KB每秒,半小时还没装完一个包。更糟的是,中途还…

作者头像 李华
网站建设 2026/4/18 6:25:11

心电图缺失值KNN插补参数错,误报高补调参才稳住

📝 博客主页:jaxzheng的CSDN主页 医疗数据科学:从数据到精准医疗的革命目录医疗数据科学:从数据到精准医疗的革命 引言:数据驱动的医疗新纪元 数据收集与预处理:高质量洞见的基石 机器学习在疾病预测与诊断…

作者头像 李华