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 Xiao <sh...@gmail.com> on 2012/02/27 04:59:54 UTC

Customizing Solr score with DixMax query

In my application logic, I want to implement the ranking (scoring) logic as
follows: 

score = "Solr relecency score" * a_special_field_value.

I tried to use DixMax to do this. My query statement is q={!type=dixmax
qf='title content' bf=field1}data. However, when I open the debugquery
option, I find that what Solr does is just a "sum of" of the two scores,
i.e., the TF-IDF score and FunctionQuery score. But what I want is to
multiple the two together. How can I implement the multiplication operation?

I also tried using boosted query. I issue a query like q={!boost
b=field1}data. In this case, Solr does return a score which is a production
of two scores. However, by using boosted query, I lost the power of dismax
query which can search across multiple fields.

--
View this message in context: http://lucene.472066.n3.nabble.com/Customizing-Solr-score-with-DixMax-query-tp3779591p3779591.html
Sent from the Solr - User mailing list archive at Nabble.com.

Re: Customizing Solr score with DixMax query

Posted by Xiao <sh...@gmail.com>.
Yes! Thank you! I also get this in this morning from Sematext Blog.

Edismax
" Supports the “boost” parameter.. like the dismax bf param, but multiplies
the function query instead of adding it in" 

http://blog.sematext.com/2010/01/20/solr-digest-january-2010/

--
View this message in context: http://lucene.472066.n3.nabble.com/Customizing-Solr-score-with-DixMax-query-tp3779591p3781200.html
Sent from the Solr - User mailing list archive at Nabble.com.

Re: Customizing Solr score with DixMax query

Posted by Ahmet Arslan <io...@yahoo.com>.

--- On Mon, 2/27/12, Xiao <sh...@gmail.com> wrote:

> From: Xiao <sh...@gmail.com>
> Subject: Customizing Solr score with DixMax query
> To: solr-user@lucene.apache.org
> Date: Monday, February 27, 2012, 5:59 AM
> In my application logic, I want to
> implement the ranking (scoring) logic as
> follows: 
> 
> score = "Solr relecency score" * a_special_field_value.
> 
> I tried to use DixMax to do this. My query statement is
> q={!type=dixmax
> qf='title content' bf=field1}data. However, when I open the
> debugquery
> option, I find that what Solr does is just a "sum of" of the
> two scores,
> i.e., the TF-IDF score and FunctionQuery score. But what I
> want is to
> multiple the two together. How can I implement the
> multiplication operation?

edismax has a boost parameter for this.
q={!type=edixmax qf='title content' boost=field1}data