-
相关性算分
相关性算分是指文档与查询语句间的相关度(relevance),通过倒排索引可以获取与查询语句相匹配的文档列表,那么如何将最符合用户查询需求的文档放到最前列呢? 本质是一个排序问题,排序的依据是相关性算分。
相关性算分的几个重要概念如下:
- Term Frequency(TF)词频,即单词在该文档中出现的次数。词频越高,相关度越高。
- Document Frequency(DF)文档频率,即单词出现的文档次数。
- Inverse Document Frequency (IDF)逆向文档频率,与文档频率相反,简单理解为 1/DF。即单词出现的文档数越少,相关度越高。
- Field-length Norm 文档越短,相关性越高。 -
算分模型
ES目前主要有两个相关性算分模型,如下:
- TF/IDF模型
- BM25模型,5.X后的默认模型
TF/IDF模型是Lucene的经典模型,其计算公式如下:TF/IDF模型
可以通过explain参数来查看具体的计算方法,但要注意:
- es的算分是按照 shard 进行的,即 shard 的分数计算是相互独立的,所以在使用explain 的时候注意分片数
- 可以通过设置索引的分片数为1来避免这个问题image.png
BM25模型中BM值Best Match ,25指迭代25次才计算方法,是针对TF/IDF的一个优化,其计算公式如下:BM25模型
Elasticsearch之相关性算分
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 简介 在Elasticsearch中,相关性算分描述了一个文档和查询语句的匹配程度。Elasticsearch会对...
- 相关性和相关性算分 相关性:Relevance搜索的相关性算分,描述了一个文档和查询语句匹配的程度。ES会对每个匹...
- 相关性和相关性算分 搜索的相关性算分,描述了一个文档和查询语句匹配的程度。 ES会对每个匹配查询条件的结果进行算分...
- 相关性和相关性算分 相关性 -relevance搜索的相关性算分,描述了一个文档和查询语句匹配的程序。es会对每个...
- 记录一下,elasticsearch/lucene关于文档与query之间相关性的计算方式,目录如下, Lucen...