搜索相关性评分的原理与实践
在搜索领域,如何准确衡量文档与查询的相关性是一个核心问题。本文将介绍一些用于计算相关性评分的重要概念和模型,包括布尔模型、词频/逆文档频率(TF/IDF)、向量空间模型,以及Lucene的实用评分函数等,同时还会涉及到一些控制相关性的方法,如查询时提升和索引提升等。
布尔模型
布尔模型是一种简单而快速的匹配方法,它通过应用查询中表达的AND、OR和NOT条件来查找所有匹配的文档。例如,查询 full AND text AND search AND (elasticsearch OR lucene) 只会包含同时包含 full 、 text 和 search 这三个词,并且包含 elasticsearch 或 lucene 的文档。该模型主要用于排除那些不可能匹配查询的文档。
词频/逆文档频率(TF/IDF)
当我们得到匹配文档列表后,需要对这些文档按相关性进行排序。TF/IDF是一种常用的计算文档相关性的方法,它考虑了以下三个因素:
1. 词频(Term Frequency,TF) :指一个词在文档中出现的频率。词出现的次数越多,其权重越高。计算公式为: tf(t in d) = √frequency ,其中 t 表示词, d 表示文档。如果不关心词在字段中出现的频率,只关心词是否存在,可以在字段映射中禁用词频: <
超级会员免费看
订阅专栏 解锁全文
503

被折叠的 条评论
为什么被折叠?



