[
https://issues.apache.org/jira/browse/LUCENE-850?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12501620
]
Doron Cohen commented on LUCENE-850:
------------------------------------
Mike,
If I understood it correctly your patch can be described as:
- turn DisMaxQuery into a private case of a new generalized
"CustomizableOrQuery"
- demostrates this customizability with a new ProductQuery.
- DisMax(OR)Query logic is as before = max =f scob-scores plus tie breaker.
- Product(OR)Query logic is: score = multiplication of scores of sub-scorers.
The regular Bolean Or could probably be phrased this way as Sum(OR)Qurey.
Now in LUCENE-446 I added CustomScoreQuery, which is simpler:
- score = f (score(q), score(vq))
where
- f() is overridable,
- q is any query
- vq is optional, and it is a value-source-query, likely based on (cached)
field values.
So it currently doesn't support your comment
"I've often wanted to multiply the scores of two queries".
When first writing CustomScoreQuery I looked at combining any two or N
subqueries, but wasn't sure how to do this. How to normalize. How to calculate
the weights. But now I think that we could perhaps follow your approach
closer: call it CustomOrQuery, go for any N subqueries, and define f()
accordingly.
But is this really required / useful?
What are the use cases for this general/arbiterary combining of scores (beyond
current capabilities of o.a.l.search.function)?
Thanks,
Doron
> Easily create queries that transform subquery scores arbitrarily
> ----------------------------------------------------------------
>
> Key: LUCENE-850
> URL: https://issues.apache.org/jira/browse/LUCENE-850
> Project: Lucene - Java
> Issue Type: New Feature
> Components: Search
> Reporter: Mike Klaas
> Assignee: Doron Cohen
> Attachments: prodscorer.patch.diff
>
>
> Refactor DisMaxQuery into SubQuery(Query|Scorer) that admits easy
> subclassing. An example is given for multiplicatively combining scores.
> Note: patch is not clean; for demonstration purposes only.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]