You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-dev@lucene.apache.org by Tom Morton <ts...@gmail.com> on 2008/06/05 21:33:25 UTC
Boosting for MoreLikeThisHandler
Hi,
SOLR-295 <https://issues.apache.org/jira/browse/SOLR-295> mentions boost
support for morelikethis and then seems to have been subsumed by
SOLR-281<https://issues.apache.org/jira/browse/SOLR-281>but I don't
think this got implemented. I've patched MoreLikeThisHandler to
support this. Here's a summary of the approach:
- Parse out "mlt.qf parameters" to get boosts in dismax like format
(existing code from DisMax param parse code used to produce a
Map<String,Float>)
- Iterate through mltquery terms, get boost by looking at field from
which mltquery term came, and multiply boost specified in map by existing
term boost.
- If mlt.boost=false, then you get the same boost values as in
map/mlt.qf parameters,
- If mlt.boost=true then you get normalized boost multiplied by specified
boost (which makes sense to me).
Patch attached.
Should I re-open either SOLR-281 or SOLR-295 (if I can) or create a new jira
ticket for this?
Thanks...Tom
Re: Boosting for MoreLikeThisHandler
Posted by Tom Morton <ts...@gmail.com>.
I'm trying to add some unit tests now. MoreLikeThisHandler had a minimal
set of tests which don't actually test its output, just that fields and a
query parameters are required. It'll take me a bit to write something for
the regular version and then the version with specified boosts.
On Fri, Jun 6, 2008 at 6:46 AM, Grant Ingersoll <gs...@apache.org> wrote:
> I think a separate issue is warranted. Can you add unit tests, too?
>
>
> On Jun 5, 2008, at 3:33 PM, Tom Morton wrote:
>
> Hi,
>> SOLR-295 mentions boost support for morelikethis and then seems to have
>> been subsumed by SOLR-281 but I don't think this got implemented. I've
>> patched MoreLikeThisHandler to support this. Here's a summary of the
>> approach:
>>
>> Parse out "mlt.qf parameters" to get boosts in dismax like format
>> (existing code from DisMax param parse code used to produce a
>> Map<String,Float>)
>> Iterate through mltquery terms, get boost by looking at field from which
>> mltquery term came, and multiply boost specified in map by existing term
>> boost.
>> If mlt.boost=false, then you get the same boost values as in map/mlt.qf
>> parameters,
>> If mlt.boost=true then you get normalized boost multiplied by specified
>> boost (which makes sense to me).
>>
>> Patch attached.
>>
>> Should I re-open either SOLR-281 or SOLR-295 (if I can) or create a new
>> jira ticket for this?
>>
>> Thanks...Tom
>> <morelikethis.patch>
>>
>
>
>
Re: Boosting for MoreLikeThisHandler
Posted by Grant Ingersoll <gs...@apache.org>.
I think a separate issue is warranted. Can you add unit tests, too?
On Jun 5, 2008, at 3:33 PM, Tom Morton wrote:
> Hi,
> SOLR-295 mentions boost support for morelikethis and then seems
> to have been subsumed by SOLR-281 but I don't think this got
> implemented. I've patched MoreLikeThisHandler to support this.
> Here's a summary of the approach:
>
> Parse out "mlt.qf parameters" to get boosts in dismax like format
> (existing code from DisMax param parse code used to produce a
> Map<String,Float>)
> Iterate through mltquery terms, get boost by looking at field from
> which mltquery term came, and multiply boost specified in map by
> existing term boost.
> If mlt.boost=false, then you get the same boost values as in map/
> mlt.qf parameters,
> If mlt.boost=true then you get normalized boost multiplied by
> specified boost (which makes sense to me).
>
> Patch attached.
>
> Should I re-open either SOLR-281 or SOLR-295 (if I can) or create a
> new jira ticket for this?
>
> Thanks...Tom
> <morelikethis.patch>