Hi, I have the same question related to LMJelinekMercerSimiliarity class.
protected float score(BasicStats stats, float freq, float docLen) { return stats.getTotalBoost() * (float)Math.log(1 + ((1 - lambda) * freq / docLen) / (lambda * ((LMStats)stats).getCollectionProbability())); } score = Math.log( (1 - lambda) * freq / docLen * + *lambda * ((LMStats)stats).getCollectionProbability()) ) I am also getting much worse results by updating the code like above. Why is it calculated this way? Thanks in advance, Best regards, ZP P.S: Instead of creating a new question, I used your question because I believe that the reason should be the same. -- View this message in context: http://lucene.472066.n3.nabble.com/Scoring-function-in-LMDirichletSimilarity-Class-tp4052488p4053267.html Sent from the Lucene - Java Users mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org For additional commands, e-mail: java-user-h...@lucene.apache.org