field_value_factor 使用这个值来修改 _score,如将流行度或评分作为考虑因素。 random_score 为每个用户都使用一个不同的随机分数来对结果排序,但对某一具体用户来说,看到的顺序始终是一致的。 Decay functions — linear, exp, gauss 以某个字段的值为标准,距离某个值越近得分越高。 script_score 如果需求超出...
原始查询条件:query部分,基于这个条件搜索文档,并且基于BM25算法给文档打分,原始算分(query score) 过滤条件:filter部分,符合该条件的文档才会重新算分 算分函数:符合filter条件的文档要根据这个函数做运算,得到的函数算分(function score),有四种函数 weight:函数结果是常量 field_value_factor:以文档中的某个字段...
4.field_value_factor影响因子形式 { "query": { "function_score": { "query": { "match": {"province": "湖北省"} }, //4.field_value_factor函数允许您使用文档中的字段(数值型)来影响分数。 //它类似于使用script_score函数,但是它避免了编写脚本的开销。 "field_value_factor": { "field": "...
{"query": {"function_score": {"query": { "match": { "message": "elasticsearch" } },"field_value_factor": {"field": "likes","factor": 1.2,"missing": 1,"modifier": "log1p"}}} 说明: •field: 参与计算的字段。•factor: 乘积因子,默认为 1 ,将会与field的字段值相乘。•missing...
② field_value_factor 通过文档中某个字段的值计算出一个分数且使用该值修改 _score,具有以下属性: ③ random_score 为每个用户都使用一个随机评分对结果排序,可以实现对于用户的个性化推荐。 ④ 衰减函数 提供一个更复杂的公式,描述了这样一种情况:对于一个字段,它有一个理想值,而字段实际的值越偏离这个理想值...
new_score = old_score * log(1 + factor * number_of_votes) 当factor大于1时,会增加其影响力,而小于1的factor则相应减小了其影响力,如下图所示: boost_mode 将全文搜索的相关度分值乘以field_value_factor函数的结果,对最终分值的影响可能太大了。通过boost_mode参数,我们可以控制函数的结果应该如何与_score...
field_value_factor 字段值因子评分 decay functions: gauss, linear, exp 衰减函数 说明: decay functions衰减函数太过复杂,这里暂时不作介绍。 1、script脚本评分 script_score 函数允许您包装另一个查询并选择性地使用脚本表达式从文档中的其他数字字段值派生的计算自定义它的评分。 这是一个简单的示例: GET /_...
field_value_factor field_value_factor使用字段的数值参与计算分数。 例如使用likes点赞数字段进行综合搜索: 代码语言:javascript 复制 {"query":{"function_score":{"query":{"match":{"message":"elasticsearch"}},"field_value_factor":{"field":"likes","factor":1.2,"missing":1,"modifier":"log1p"}...
"field_value_factor": { "field": "iCommentCount", "modifier": "ln2p", "factor": 0.05, "missing": 0 } } ] } } } 2. 返回高亮词结果,给前端进行搜索关键词的高亮展示 这里主要利用了es的highlight,在搜索语句中添加hight设置,在返回的结果中对于和查询关键词相符的位置直接被特殊的颜色标记,无...
支持的 function 类型有:script_score、weight、random_score、field_value_factor、decay_functions。不同的 function 类型计算得分的方式不一样,对于 decay_function,又包含几种 score 函数,比如 guass、exp、linear 函数。 { "query": { "function_score": { "query": { "match_all": {} }, "boost": ...