首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

触类旁通Elasticsearch:打分

一、ES打分机制 确定文档和查询有多么相关的过程被称为打分(scoring)。 1. TF-IDF Lucene及其扩展ES默认使用TF-IDF算法计算文档得分。...其它打分方法 ES支持的其它打分方法包括: Okapi BM25 随机性分歧(Divergence from randomness),即DFR相似度 基于信息的(Information...四、再打分 在下列情况下,打分可能会变成资源密集型的操作: 使用脚本的评分,运行了一个脚本来计算索引中每篇文档的得分。这类似于SQL查询中使用UDF,每行数据都要执行函数。...在这些情况下,可能希望减轻打分算法所产生的性能影响。为解决这个问题,ES有一个特性称为再打分。再打分(rescoring)是指初始的查询运行后,针对返回的结果集进行第二轮的得分计算。...下面是一个再打分的例子。 curl -XPOST "172.16.1.127:9200/get-together/_search?

2K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    ES 自定义打分

    score 自定义打分过程 为了行文方便,本文把 ES 对 query 匹配的文档进行打分得到的 score 记为 query_score ,而最终搜索结果的 score 记为 result_score...但是我们还有一个关键点没讲,即怎么设置自定义打分函数? function_score 打分函数 function_score 提供了以下几种打分的函数: •weight : 加权。...: •一个是 random_score 随机打分,并且 weight 是 23•另一个只有 weight 是 42 假设: •第一个函数随机打分得到了 0.1 ,再与 weight 相乘就是 2.3•第二个函数只有...需要注意的是:不论我们怎么自定义打分,都不会改变原始 query 的匹配行为,我们自定义打分,都是在原始 query 查询结束后,对每一个匹配的文档进行重新算分。...script_score script_score 自定义脚本打分,如果上面的打分函数都满足不了你,你还可以直接编写脚本打分

    2.2K31

    打分排序系统漫谈1 - 时间衰减

    打分排序系统的应用非常普遍,比如电影的评分,知乎帖子的热度,和新闻文章的排序。让我们从最简单直观的平均打分开始, 聊聊各种打分方法的利弊和使用场景。 最简单的打分方法当然是一段时间的点赞量综述。...但仍然有几个未解问题: 时间衰减过快,对于一些有长实效性的打分并不适用。能否在打分上加入指数? 如何考虑时间衰减和当前时段的关系。...能否对打分进行非线性压缩? 不同类型文章热度是否可比,例如有的文章质量高但是相对小众。能否做组内排序?或者用点赞率来衡量 同理也应该考虑到浏览量(PV)和点赞量的关系。...同时考虑点赞和拍砖,Reddit 的 Hot Formula采用了和Hacker News相似的打分方式,来推荐优质高热度的文章。并针对上述问题(1)和(3)给出了不同的处理。...如果觉得幂指数的表达形式不够直观,我们可以对等式左右取个对数,会发现对数打分的变化是对数时间的线性函数,可以用这个方式来判断幂指数打分是否适用,如下: \[ log(score_t) = log(score

    1.5K30
    领券