增加高斯函数评分

时间:2019-03-22 21:24:39

标签: elasticsearch

elasticsearch docs巧妙地描述了如何创建具有高斯衰减曲线的查询。例如,按价格排序的最小尺寸物业评分系统:

{
  "query": {
    "function_score": {
      "query": {
        "bool": {
          "must": [
            {"range": {"total_square_foot": {"gte": "600"}}}
          ]
        }
      },
      "functions": [
        {"filter" : {"match": {"pets_allowed" : true}}, "weight": 1},
        {"gauss": {"price": {"origin": "0", "offset": "100000", "scale": "50000", "decay" : 0.4}}, "weight": 2}
      ],
      "score_mode": "sum"
    }
  }
}

现在,我想向函数的线性组合中添加total_square_foot的高斯梯度,但是随着高斯函数的增加,因为更好的空间(即score(x0=0, x1=1000) ~= (0, 1)

是否可以使用内置函数,还是必须使用自定义函数并手动计算参数?

0 个答案:

没有答案