You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Dariusz Wojtas <dw...@gmail.com> on 2017/09/20 19:38:43 UTC

Rescoring from 0 - full

Hi,
When I use boosting fuctionality, it is always about adding or
multiplicating the score calculated in the 'q' param.
I mau use function queries inside 'q', but this may hit performance on
calling multiple nested functions.
I thaught that 'rerank' could help, but it is still about changing the
original score, not full calculation.

How can take full control on score in rerank? Is it possible?

Best regards,
Dariusz Wojtas

Re: Rescoring from 0 - full

Posted by Emir Arnautović <em...@sematext.com>.
Hi Dariusz,
You could use fq for filtering (can disable caching to avoid polluting filter cache) and q=*:*. That way you’ll get score=1 for all doc and can rerank. The issue with this approach is that you rerank top N and without score they wouldn’t be ordered so it is no-go.
What you could do (did not try) in rescoring divide by score (not sure if can access calculated but could calculate) to eliminate score.

HTH,
Emir

> On 20 Sep 2017, at 21:38, Dariusz Wojtas <dw...@gmail.com> wrote:
> 
> Hi,
> When I use boosting fuctionality, it is always about adding or
> multiplicating the score calculated in the 'q' param.
> I mau use function queries inside 'q', but this may hit performance on
> calling multiple nested functions.
> I thaught that 'rerank' could help, but it is still about changing the
> original score, not full calculation.
> 
> How can take full control on score in rerank? Is it possible?
> 
> Best regards,
> Dariusz Wojtas


Re: Rescoring from 0 - full

Posted by "alessandro.benedetti" <a....@sease.io>.
The weights you express could flag a probabilistic view or your final score.
The model you quoted will calculate the final score as :
0.9*scorePersonalId +0.1* originalScore

The final score will NOT necessarily be  0<finalScore<1 .

If that was not the case, I see little benefit in having the weights in a
model to be passed at query time.
The entire of LTR sense is to calculate those weights to optimise your
ranking function, sure you can have multiple models, trained on different
datasets, but each model will be the fixed ( and described by the json).

If you want to play with weights you can potentially take a look to the ^=
boost operator (which builds constant score queries) in cooperation with
dismax/edismax[1] qf and different boosts.


[1]
https://lucene.apache.org/solr/guide/6_6/the-dismax-query-parser.html#the-dismax-query-parser





-----
---------------
Alessandro Benedetti
Search Consultant, R&D Software Engineer, Director
Sease Ltd. - www.sease.io
--
Sent from: http://lucene.472066.n3.nabble.com/Solr-User-f472068.html