Hello, You are correct that the contribution would be additive in that case. We don't provide an easy way to make the contribution multiplicative.
There is some debate about what is the best way to combine BM25 scores with query-independent features, though in the discussions I've seen contributions were summed up and the debate was more about whether they should be normalized or not. How much recency impacts ranking indeed depends on the number of terms and how frequent these terms are. One way that I'm interpreting the fact that not everyone recommends normalizing scores is that this way the query score dominates when the query is looking for something very specific, because it includes many terms or because it uses very specific terms - which may be a feature. This approach also works well for Lucene since dynamic pruning via Block-Max WAND keeps working when query-independent features are incorporated into the final score, which helps figure out the top hits without having to collect all matches. On Thu, Sep 16, 2021 at 5:40 PM Nicolás Lichtmaier <nicol...@wolfram.com.invalid> wrote: > On March I've asked a question here that go no answers at all. As it > still something that I'd very much like to know I'll ask again. > > To implement "recency" into a search you would add a boolean clause with > a LongPoint.newDistanceFeatureQuery(), right? But that's additive, > meaning that this recency will impact different for searches with > different number of terms, right? With more terms the recency component > contribution to score will be more and more "diluted". However... I only > see examples using this way of doing, and I would need to do something > weird to implement a multiplicative change of the score... Am I missing > something? > > Thanks! > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org > For additional commands, e-mail: java-user-h...@lucene.apache.org > > -- Adrien