Hi! On Wed, Sep 20, 2006 at 03:40:03PM +1000, Neville Burnell wrote: > Hi, > > I'm confused about managing field boosting ... > > I have set the :boost for the :name field in my docs to 10, via :boost > => 10 > > Then I performed a search for 'keith' over all fields via with > *:(keith*), expecting a doc with Keith in the :name field to come out on > top. But another doc with Keith mentioned in other fields (:comments, > :address) scored higher. > > I viewed the explanation from the searcher, but it wasn't clear to me > why the boost wasn't pushing the :name = Keith document to the top.
as you can see from the explanation, the score for both fields that matched the query got summed up (8... = sum of:), if 'keith' only had shown up in one field, the other document would have had the higher score. I don't know of any methodology to determine the proper boost setting for a field, imho it's just a question of experimenting with queries and the results you expect. If you always want to have matches in the name ranked on the top, regardless of how many times a term is mentioned in other parts of your document, set the boost to 100 ;-) I don't know what the coord value is, though, maybe someone else can step in here ? Jens > PS, the two explains are: > > Doc1: > 0.3352959 = product of: > 8.047102 = sum of: > 4.011141 = weight(comments:<keith|[EMAIL PROTECTED]|keithex> in > 4697), product of: > 0.5685414 = > query_weight(comments:<keith|[EMAIL PROTECTED]|keithex>), product of: > 28.22057 = idf(comments:<(keithex=1) + ([EMAIL PROTECTED]) + > (keith=115) = 117>) > 0.02014635 = query_norm > 7.055143 = field_weight(comments:<keith|[EMAIL PROTECTED]|keithex> > in 4697), product of: > 1.0 = The sum of: > 1.0 = tf(term_freq(comments:keithex)=1)^1.0 > 28.22057 = idf(comments:<(keithex=1) + ([EMAIL PROTECTED]) + > (keith=115) = 117>) > 0.25 = field_norm(field=comments, doc=4697) > 4.03596 = weight(address:<keith|keithex> in 4697), product of: > 0.4032613 = query_weight(address:<keith|keithex>), product of: > 20.0166 = idf(address:<(keithex=1) + (keith=8) = 9>) > 0.02014635 = query_norm > 10.0083 = field_weight(address:<keith|keithex> in 4697), product > of: > 1.0 = The sum of: > 1.0 = tf(term_freq(address:keithex)=1)^1.0 > 20.0166 = idf(address:<(keithex=1) + (keith=8) = 9>) > 0.5 = field_norm(field=address, doc=4697) > 0.04166667 = coord(2/48) > > > Doc2: > 0.2977623 = product of: > 14.29259 = weight(name:<keith> in 31416), product of: > 0.2028171 = query_weight(name:<keith>), product of: > 10.06719 = idf(name:<(keith=3) = 3>) > 0.02014635 = query_norm > 70.47034 = field_weight(name:<keith> in 31416), product of: > 1.0 = The sum of: > 1.0 = tf(term_freq(name:keith)=1)^1.0 > 10.06719 = idf(name:<(keith=3) = 3>) > 7.0 = field_norm(field=name, doc=31416) > 0.02083333 = coord(1/48) > > > > > _______________________________________________ > Ferret-talk mailing list > [email protected] > http://rubyforge.org/mailman/listinfo/ferret-talk -- webit! Gesellschaft für neue Medien mbH www.webit.de Dipl.-Wirtschaftsingenieur Jens Krämer [EMAIL PROTECTED] Schnorrstraße 76 Tel +49 351 46766 0 D-01069 Dresden Fax +49 351 46766 66 _______________________________________________ Ferret-talk mailing list [email protected] http://rubyforge.org/mailman/listinfo/ferret-talk

