我正在使用Elasticsearch 5.3.1,我正在评估BM25和Classic TF / IDF。
我遇到了discount_overlaps
属性,这是可选的。
确定是否重叠令牌(具有0位置增量的标记) 计算规范时会被忽略。默认情况下这是真的,这意味着 计算规范时,重叠令牌不计算在内。
如果可能,有人可以通过示例解释上述内容。
答案 0 :(得分:2)
首先,标准计算为boost / √length
,此值存储在索引时。这会导致较短字段上的匹配得到更高的分数(因为10中的1通常比1000中的1更好)。
举个例子,让我们说我们的分析器上有一个同义词过滤器,它会在我们字段的索引形式中索引一堆同义词。然后我们索引这段文字:
该男子扔了一个飞盘
现在,当我们搜索"该家伙投了一张光盘"时,我们会得到一个匹配。
问题是,出于上述规范计算的目的,长度是多少?