lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From arnon ma <>
Subject Score per position
Date Wed, 07 Dec 2011 12:26:17 GMT
We have an application where every term position in a document is associated with an "engine
A term query should then be scored according to the sum of "engine scores" of the term in
a document, rather than on the term frequency.
For example, term frequency of 5 with an average engine score of 100 should be equivalent
to term frequency of 1 with engine score 500.
I understood that if I keep the engine score per position in the payload, I will be able to
use scorePayload in combination of a summary version of PayloadFunction to get the sum of
engine scores of a term in a document, and so will be able to achieve my goal.
There are two issues with this solution:
1. Even the simplest term query should scan the positions file in order to get the payloads,
which could be a performance issue.
We would prefer to index the sum of engine scores in advance per document, in addition to
the term frequency. This is some sort of payload in the document level. Does Lucene support
that or have any other solution for this issue ?
2. The "engine score" of a phrase occurrence is defined as the multiplication of engine scores
of the terms that compose the phrase.
So in scorePayload I need the payloads of all the terms in the phrase in order to be able
to appropriately score the phrase occurrence.
As much as I understand, the current interface of scorePayload does not provide this information.
Is there another way this can be achieved in Lucene ?
Thanks in advance,
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message