Elasticsearch 相关度评分
Elasticsearch 相关度评分,内容来自 B 站中华石杉 Elasticsearch 顶尖高手系列课程核心知识篇,本文内容似乎有些过时
TF&IDF 算法介绍
relevance score 算法,简单来说,就是计算出一个索引中的文本与搜索文本之间的关联匹配程度
Elasticsearch 使用的是 term frequency/inverse document frequency 算法,简称为 TF/IDF 算法。
Term frequency:搜索文本中的各个词条在 field 文本中出现了多少次,出现次数越多,就越相关
搜索请求:hello world
Inverse document frequency:搜索文本中的各个词条在整个索引的所有文档中出现了多少次,出现的次数越多,就越不相关
搜索请求:hello world
比如说,在 index 中有 1 万条 document,hello 这个单词在所有的 document 中,一共出现了 1000 次;world 这个单词在所有的 document 中,一共出现了 100 次
那么 doc2 更相关
Field-length norm:field 长度越长,相关度越弱
搜索请求:hello world
hello world 在整个 index 中出现的次数是一样多的
doc1 更相关,因为 title field 更短
_score 是如何被计算出来的
分析一个 document 是如何被匹配上的
版权声明: 本文为 InfoQ 作者【escray】的原创文章。
原文链接:【http://xie.infoq.cn/article/834896ab4a61ab8a5c449a9e1】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论