news 2026/9/25 10:08:55

BM25, TF-IDF, Faiss-based methods

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
BM25, TF-IDF, Faiss-based methods

在深度学习(Deep Learning)和 BERT 大行其道之前,它们统治了信息检索(Information Retrieval, IR)领域几十年。

1. TF-IDF:统计学的直觉

全称:Term Frequency - Inverse Document Frequency(词频-逆文档频率)。

它的核心逻辑:怎么判断一个词重不重要?

假如你在查“TCU2 通信故障”。

  • TF (词频):如果一个文档里“TCU2”出现了 10 次,另一个只出现了 1 次,前者肯定更相关。——越多越好。

  • IDF (逆文档频率):如果“故障”这个词在每一篇日志里都出现,那它就是废话,对区分文档没有任何帮助。反之,“TCU2”如果只在 5% 的文档里出现,那它就是核心特征。——越稀有越重要。

计算方式:

系统会算出每个词的 $TF \times IDF$ 分数,生成一个稀疏向量。

  • 优点:极快,完全不需要训练,直接统计就有结果。

  • 本文中的致命伤(语义鸿沟):

    • 它只认字,不认意。

    • 如果用户查:“转换器异常”。

    • 文档里写的是:“变流器工作停止”。

    • 虽然在列车语境下这是同一个东西,但 TF-IDF 认为这是两个完全不同的词,分数可能为 0。这就是论文中提到的“Shallow bag-of-words similarity”(浅层词袋相似度)1。


2. BM25:工业界的“黄金标准”

全称:Best Matching 25(最佳匹配算法 25 版)。

它是 TF-IDF 的进化版

它是目前如果不使用深度学习,效果最好的检索算法,也是 Elasticsearch、Lucene 等搜索引擎的默认算法。它主要改进了 TF-IDF 的两个缺陷:

  1. 词频饱和(Term Frequency Saturation):

    • TF-IDF 的问题:“故障”出现 100 次的分数是出现 1 次的 100 倍。这不合理。

    • BM25 的改进:引入了饱和机制。出现 3 次和出现 100 次,得分差不多。它认为“有了就行,多了没用”。

  2. 文档长度归一化(Document Length Normalization):

    • 问题:长文档天然包含更多词,更容易被搜出来。

    • BM25 的改进:对长文档进行惩罚,对短文档进行补偿,保证公平性。

在本文中的角色

BM25 是传统方法的**“天花板”**。如果一个深度学习模型(比如 Naive RAG)跑出来比 BM25 还差,那这个深度学习模型就是失败的(通常意味着过拟合或者没训练好)。


3. Faiss-based methods:从“怎么算”到“怎么找”

全称:Facebook AI Similarity Search。

这里需要特别注意,Faiss 本身不是一个“模型”,而是一个“工具库”。它是由 Facebook (Meta) 开发的,专门用来在海量向量中快速找最近邻居(Nearest Neighbor Search)的工程神器。

为什么把它列在这里?

在论文的语境下,Faiss 代表的是**“非学习型的向量检索”**。

  • 通常搭配:当作者把 Faiss 和 TF-IDF/BM25 放在一起时,通常意味着这里的 Faiss 使用的是未经微调的简单向量(例如使用词向量的平均值,或者传统的 LSI/SVD 降维向量)。

  • 对比点:

    • TG-RL-RAG (本文方法):向量的分布是学出来的(通过 RL 调整 Agent 的策略)。

    • Faiss-based (基线):向量的分布是固定的(基于词频统计或静态 Embedding),Faiss 只是用来快速计算欧几里得距离或内积。


4. 深度解析:为什么这一组在实验中“全军覆没”?

请看论文中的实验结果(图 4 和图 5 的底部水平线,以及表 3):

  • Hit Rate 极低:BM25, TF-IDF, Faiss 的命中率都在0.4 ~ 0.5左右,远低于 TG-RL-RAG 的0.8 ~ 0.9。

  • 无增长:它们的曲线是水平的,因为它们不需要训练数据(Training Set),给再多数据它们也学不到新东西 2。

根本原因分析(Report Highlights):

作为研究生汇报,你可以这样总结这部分基线的失败原因:

  1. 缺乏语义理解(The Semantic Gap):

    • 故障描述通常非常灵活。比如“显示屏黑了”和“HMI无显示”,TF-IDF 和 BM25 无法建立联系,但深度学习模型(如 Naive RAG)可以通过训练学会它们是同义词。

  2. 无法处理复杂句法:

    • 故障查询通常包含因果逻辑(“A 导致 B”)。传统方法只看词是否出现,不看词的顺序。Faiss(基于简单向量时)也往往由词向量平均而来,丢失了语序信息。

  3. 零样本的局限性:

    • 这三种方法都是非参数化(Non-parametric)或非学习型的。它们无法像本文提出的 RL Agent 那样,通过与环境(Graph)的交互,根据反馈(Reward)来调整自己的检索策略。

总结

  • TF-IDF是基石(算词频)。

  • BM25是修正(加饱和度与长度惩罚),是传统检索的最强战力。

  • Faiss是工具(算距离),在这里代表非深度学习的向量检索。

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

MATLAB代码:参考《基于多目标算法的冷热电联供型综合能源系统运行优化》 本程序对惯性权重因...

MATLAB代码:参考《基于多目标算法的冷热电联供型综合能源系统运行优化》 本程序对惯性权重因子和学习因子进行改进 采用改进粒子群算法以运行成本和环境成本最低为目标实现了冷热电联供型综合能源系统优化运行 程序运行良好 模块化编程 注释清楚凌晨三点的实验室里&…

作者头像 李华
网站建设 2026/9/25 1:13:58

BGP实验

BGP实验报告,见word文档

作者头像 李华
网站建设 2026/9/25 1:02:25

在家开泰拉瑞亚私服,搭载cpolar让外地朋友也能玩!

文章目录前言1. 下载Terraria私服2. 本地运行Terraria 私服3. 本地Terraria私服连接4. Windwos安装Cpolar 工具5. 配置Terraria远程联机地址6. Terraria私服远程联机7. 固定远程联机地址8. 固定的联机地址测试前言 泰拉瑞亚本地私服是供玩家自建游戏服务器的工具,支…

作者头像 李华
网站建设 2026/9/25 1:13:41

数字化转型中的测试角色

在当今快速演进的数字化浪潮中,企业正加速推进数字化转型,以提升竞争力、优化运营效率和满足不断变化的用户需求。这一过程中,软件测试作为确保产品质量和稳定性的关键环节,其角色正经历深刻的重塑。传统的测试工作往往侧重于功能…

作者头像 李华
网站建设 2026/9/25 1:13:34

测试流程的标准化与灵活性:在结构与适应之间寻找最优解

在软件测试领域,测试流程的设计直接影响产品质量和团队效率。标准化提供了可重复性和可控性,而灵活性则适应了快速变化的需求和复杂场景。对于软件测试从业者而言,过度依赖标准化可能导致僵化,无法应对突发缺陷;而完全…

作者头像 李华
网站建设 2026/9/25 1:13:24

识人的艺术,科学的尺度:当员工背景调查遇上智能时代

招聘经理王琳最近松了口气。 曾经让她夜不能寐的新高管入职流程,现在变得从容不迫。那位从竞争对手公司挖来的销售总监,从背景核实到最终录用,只用了三天时间——而以往,这个过程至少需要两周。 变化的背后,是一个正在…

作者头像 李华