禁用IDF计算

Glu*_*urG 11 elasticsearch

在我的特定用例中,作为TF-IDF算法的一部分计算的IDF因子会弄乱我的查询得分.基本上,我希望查询只考虑术语频率.对于特定索引,是否可以禁用IDF因子,即将其设置为1?我已经查看了相似性模块(版本0.90.X),但还没有找到任何可以帮助的东西; 同样适用于function_score查询.我是否需要在java中编写自定义的Similarity类?或者是否有我想要实现的插件?

Tho*_*aux 1

constant_score 查询怎么样?

请参阅http://www.elasticsearch.org/guide/en/elasticsearch/guide/current/ignoring-tfidf.html

请毫不犹豫地使用 ?explain=true 来查看评分是如何工作的。

正如你可以在这里没有constant_filter:

与以色列国防军

并使用constant_filter查询(包装您的真实查询):

没有以色列国防军

  • 由于“constant_score”确实关闭了 TF 和 IDF,所以我很确定结果将与使用 Filter 时的结果相同。@GlurG 似乎只想在 TF 打开时关闭 IDF。你有什么主意吗? (3认同)
  • H,你的意思是改变评分/排名公式?此页面应该有帮助=> https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules-similarity.html。 (2认同)