我们在前面的文章里讨论过稀疏嵌入的基本思路,其中词频(TF)方法有一个明显短板:当文档里的某个词反复出现时,TF分数会过度偏向高频词,反而淹没了真正关键的稀有术语。为了修补这个缺陷,研究者给出了逆文档频率(IDF)这个视角。
IDF的核心逻辑很简单——一个词在整个文档库里出现的频率越低,它的信息价值越高。IDF会计算词的“稀有度”:越是稀有的词,IDF分数就越高;如果某个词几乎在每篇文档里都能找到,那它的IDF分数就非常低。用IDF来查询时,高频词的检索结果往往质量平平,而用稀有词去搜,命中内容的精准度会明显提升。但这个方法也有直接的局限。
![]()
举个具体场景:假如你在搜索“Kubernetes”这个术语,它恰好在文档库中只出现在某一篇文档里。IDF机制会把这唯一命中的文档推给你,问题在于,这篇文档可能只是顺带提了一次Kubernetes,根本没有做深入介绍。于是返回的结果虽然精确,但在内容深度上可能并不实用。这正是IDF只关心词的存在与否,却忽略了词语在单篇文档内的重要性所导致的盲区。
于是自然催生了TF-IDF方案:把TF和IDF的分数直接相乘。这样一来,一个词既要对当前文档足够重要(TF高),又要在全局看来足够稀少(IDF高),才能在排序中得到更高的权重。TF-IDF比单纯的TF或IDF更能平衡局部与全局的信号。在此基础上,BM-25算法(Best Match 25)进一步优化了权重计算方式,其中“25”指的是排序时重点考虑前25个匹配词。实际应用表明,BM-25在大多数情况下能给出比传统TF-IDF更贴合需求的结果。
但归根结底,基于稀疏嵌入的方法做的是关键词匹配,很难独自撑起一个完整的RAG(检索增强生成)流程。真正发挥两者长处的做法,是将稀疏嵌入的关键词搜索与密集嵌入的语义相似度结合起来,这就是所谓的混合搜索。在实践中,密集嵌入部分可以使用句子转换器(sentence transformer)来捕捉语义层面的关联,而稀疏嵌入部分则交由BM-25算法负责精确的关键词命中。这种双路召回策略,正在让RAG系统的检索质量向前迈出一大步。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.