【问题标题】:Term frequency scoring in lucene 5.3lucene 5.3 中的词频评分
【发布时间】:2015-09-03 08:44:49
【问题描述】:

我只想使用术语频率来对 Apache Lucene 5.3 中的结果进行排名。我尝试覆盖 DefaultSimilarity 类,但它似乎在 Lucene 5.3 中不起作用。我正在使用以下代码:

import org.apache.lucene.search.similarities.DefaultSimilarity;

public class TfSimilarity extends DefaultSimilarity {
    public TfSimilarity(){}
    public float idf(int docFreq, int numDocs) {
      return(float)1.0;
    }
    public float coord(int overlap, int maxOverlap) {
      return 1.0f;
    }
    public float lengthNorm(String fieldName, int numTerms) {
      return (float) numTerms;
    }

}

而且,程序似乎没有进入上面的idf函数内部。

【问题讨论】:

    标签: java lucene


    【解决方案1】:

    您没有正确覆盖the method。应该是:

    @Override
    public float idf(long docFreq, long numDocs){}
    

    您应该使用带注释的@Override 以确保您已正确获得方法定义。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-18
      • 1970-01-01
      • 2010-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-04
      • 2010-09-05
      相关资源
      最近更新 更多