lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chris Hostetter <hossman_luc...@fucit.org>
Subject Re: Why does index boosting a field to 2.0f on a document have such a dramatic effect
Date Thu, 04 Apr 2013 22:26:52 GMT

: At index time I boost the alias field of a small set of documents, setting the
: boost to 2.0f, which I thought meant equivalent to doubling the score this doc
: would get over another doc, everything else being equal.

1) you haven't shown us enough details to be certian, but based on the 
code you've provied it looks like you are adding a boost for *each* field 
instance named "alias" if the value of artistGuid is in your 
artistGuIdSet...

:         if(artistGuIdSet.contains(artistGuid)) {
:             for(IndexableField indexablefield:doc.getFields())
:             {
: if(indexablefield.name().equals(ArtistIndexField.ALIAS.getName()))
:                 {
:                     Field field = (Field)indexablefield;
:                     field.setBoost(ARTIST_DOC_BOOST);

...so a doc with N values in the "alias" field is going to get a field 
boost of N*2.

2) Looking at the URL you mentioned

: http://search.musicbrainz.org/?type=artist&query=Jean&explain=true

...the debug explanation currently produced by that URL says...

6.4894321E10 = (MATCH) weight(alias:jean in 7610) [MusicbrainzSimilarity], result of:
   ...
   7.5161928E9 = fieldNorm(doc=7610)

ou need to look at your "MusicbrainzSimilarity" class and it's fieldNorm 
method to determine for certain why it's producing such large values.  we 
have no idea how that's implemented.


-Hoss

---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


Mime
View raw message