elastic search搜索学习打分算法简单总结

elastic search搜索学习打分算法简单总结

之前也在es官网走马观花的看了一些es搜索方面的内容,发现自己之前对es的打分规则理解的很浅,最近又从阿里的《elastic stack实战手册》看了看,发现总算对es搜索的打分规则有了一些更深入的了解,在此做个简单的总结!

影响搜索结果得分的两个关键因素:tf(t in d)*idf(t)
1、词频TF:tf(t in d), text in docment,即搜索的当前词条在这个文档中出现的次数的平方根;
2、逆向文档频率 idf(t):  idf(t) = 1 + log ( numDocs / (docFreq + 1)) ,当前索引中的文档(docment)数量除以存在该词条(text)的文档的对数;
由此可知在其他变量(如权重值)均一致的情况下,词频越高,且包含该关键词的文档数越少,则得分越高;

例如:现在有一个文档数量为100000个mobile索引,包含关键词"苹果"的文档数量为1000个,其中有一个ID为300的文档中关键词"苹果"出现了4次,则当搜索关键词为"苹果"且索引为mobile时,文档ID为300的这个文档的得分则为2*(1/1000)2*n;
附:Lucene实用打分函数 链接:https://www.elastic.co/guide/cn/elasticsearch/guide/current/practical-scoring-function.html
参考链接:https://elasticstack.blog.csdn.net/article/details/125286477?spm=1001.2014.3001.5502

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值