【发布时间】:2015-02-09 17:24:34
【问题描述】:
我有一个带有三个“应该”子句的“布尔”查询。如果某项匹配所有三个子句,则解释将分数显示为每个子句的分数之和。如果只匹配两个子句,则得分为 2/3 与两个子句之和的乘积。
我不明白这种行为。如果我只匹配三个中的两个,我自然会获得相对较低的分数(除非其中一个子句匹配更好)。如果这是预期的结果?
如果我愿意,有没有办法在没有这个“标准化”因素的情况下对分数求和?
【问题讨论】:
标签: elasticsearch
我有一个带有三个“应该”子句的“布尔”查询。如果某项匹配所有三个子句,则解释将分数显示为每个子句的分数之和。如果只匹配两个子句,则得分为 2/3 与两个子句之和的乘积。
我不明白这种行为。如果我只匹配三个中的两个,我自然会获得相对较低的分数(除非其中一个子句匹配更好)。如果这是预期的结果?
如果我愿意,有没有办法在没有这个“标准化”因素的情况下对分数求和?
【问题讨论】:
标签: elasticsearch
我找到了答案 - 这叫做查询协调 http://www.elasticsearch.org/guide/en/elasticsearch/guide/current/practical-scoring-function.html#coord
看来我可以设置 disable_coord 以忽略该补偿。
【讨论】: