hi,

thank you for your help.


On 1/27/06, Chris Lamprecht <[EMAIL PROTECTED]> wrote:
>
> It takes the highest scoring document, if greater than 1.0, and
> divides every hit's score by this number, leaving them all <= 1.0.
> Actually, I just looked at the code, and it actually does this by
> taking 1/maxScore and then multiplying this by each score (equivalent
> results in the end, maybe more efficient(?)).  See the method
> getMoreDocs() in Hits.java (org.apache.lucene.search.Hits):
>
> [...]
>    float scoreNorm = 1.0f;
>
>    if (length > 0 && topDocs.getMaxScore() > 1.0f) {
>      scoreNorm = 1.0f / topDocs.getMaxScore();
>    }
>
>    int end = scoreDocs.length < length ? scoreDocs.length : length;
>    for (int i = hitDocs.size(); i < end; i++) {
>      hitDocs.addElement(new HitDoc(scoreDocs[i].score * scoreNorm,
>                                    scoreDocs[i].doc));
>    }
>
>
>
> On 1/27/06, xing jiang <[EMAIL PROTECTED]> wrote:
> > Hi,
> >
> > I want to know how the lucene normalizes the score. I see hits class has
> > this function to get each document's score. But i dont know how lucene
> > calculates the normalized score and in the "Lucene in action", it only
> said
> > normalized score of the nth top scoring docuemnts.
> > --
> > Regards
> >
> > Jiang Xing
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


--
Regards

Jiang Xing

Reply via email to