Elasticsearch评分

时间:2014-07-30 07:53:12

标签: elasticsearch cosine-similarity

我正在使用elasticsearch使用“更像这样”的查询来查找给定文档的类似文档。

是否有一种简单的方法可以将弹性搜索得分在0和1之间(使用余弦相似度)?

谢谢!

3 个答案:

答案 0 :(得分:1)

您可能需要查看Function Score functionality of Elasticsearch,更具体地说是script_scorefield_value_factor函数。这样您就可以从默认评分(_score)中获取分数,并以其他方式增强或替换它。这实际上取决于你想要什么样的提升或转型。默认评分模型还考虑了Vector model,但也考虑了其他事项。

答案 1 :(得分:0)

我认为不可能直接检索。

但也许这种解决方法有意义吗?

Elasticsearch始终会在max_score文档中带回hits

您可以将文档_score划分为max_score。具有最高价值的报告将得分为1,与给定的报告不同的文档将得分较少。

答案 2 :(得分:0)

Elasticsearch使用布尔模型查找匹配文档,并使用称为实用评分函数的公式来计算相关性。该公式借用了术语频率/逆文档频率和向量空间模型的概念,但增加了更现代的特征,如协调因子,字段长度规范化和术语或查询子句提升。