了解 ElasticSearch 中的 Decay 函数及其参数

Understanding Decay function and its parameters in ElasticSearch

我正在阅读有关 ElasticSarch 中的衰减函数的内容,以推广最新的结果

如果我定义衰减函数如下:

"DECAY_FUNCTION": { 
"FIELD_NAME": { 
"origin": "2013-09-17", 
"scale": "10d", 
"offset": "5d", 
"decay" : 0.5 
 } 
}

Offset 、 Scale 区域内外的分数会受到怎样的影响?

根据这个参考query-dsl-function-score-query我会回答我的问题:

我们以这个坡度为例:

这里的原点是 age=40,我们有 offset=+-5 年。所以衰减函数将 return 值 1 inside offset [35-45].

Inside Scale 函数将 return 衰减值(在我们的示例中为 0.5)

Scale以外的区域(大于50小于35),衰减函数会进一步向0值减小。

PS

  • 比例参数只是控制函数接近 0 的速度
  • 衰减函数永远不会 return 为负值。它总是在 0 和 1 之间。
  • 有三种类型的衰减函数(高斯、指数和线性),正如我们在上面的斜率中注意到的,每种类型是如何控制的。