lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Peter W." <>
Subject Re: How to customize scoring using user feedback?
Date Fri, 16 Mar 2007 03:28:49 GMT

This is not currently in Lucene.

Sounds like you are looking for a voting
system to generate float scores that would be
inserted as a sortable field at index time.

Gathering user feedback on search results is
hard because you need to introduce a layer
which logs the click then redirects to the

Try this: Encode your search results with a
unique id which also points to a another app.
Log votes w/app then deliver actual results.

Set a user cookie with each vote and id,
including application logic to help prevent
abuse and/or duplicates.

Next, use your logs to see what was clicked
and generate a float score tally. Prepare a
sortable String, suitable for Lucene indexing
using Numbertools or Numberutils in Solr.

Finally, index all documents with a field
named "votes" and your converted scores.

When it comes to searching, build your
regular query, adding a Sort Object and
passing in an array of SortFields with
"votes" as type SortField.STRING first.

Precedence of sort order kicks in and
your docs with more clicks rank higher.

If everything goes well you will have
results ordered by user generated


Peter W.

On Mar 15, 2007, at 7:05 PM, karl wettin wrote:

> 16 mar 2007 kl. 02.13 skrev xiong:
>> karl wettin <karl.wettin <at>> writes:
>>> 15 mar 2007 kl. 11.21 skrev xiong:
>>>> Just like google: the more user clicks of search results,
>>>>  the higher rank they are.
>>> Are you really sure Google does this? It would surprise me if  
>>> they did.
>> I'm not sure, actually.
>> But using user feedback to improve the search results is good,  
>> isn't it?
> It would be very easy to tamper with the ranking by hammering  
> specific documents. Perhaps what you are looking for is  
> "collaborative filtering"?

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message