http://lucene.apache.org/java/2_3_0/api/org/apache/lucene/misc/SweetSpotSimilarity.html
实现为:1 / sqrt(陡度*(abs(x-min)+ abs(x-max) - (max-min))+ 1)。
当最小值和最大值都为1且陡度为0.5时,这会降低到1 / sqrt(x)
任何人都可以为我解释这个公式吗?如何决定陡度以及究竟是指什么?
感谢任何帮助。
答案 0 :(得分:0)
使用DefaultSimilarity,字段数量越少,得分越高。
e.g。如果您有两个文档,索引字段值分别为“快速棕狐”和“棕色狐狸”,后者在查询“狐狸”时会得分更高。
SweetSpotSimilarity允许您根据min和max定义的范围定义字段长度的“最佳位置”。该范围内的场长将得到相等的分数,并且该范围之外的场长将得分较低,这取决于长度形成距离边界的距离。 “陡度”决定了分数随距离变化的速度有多快。