-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support N-Level judgements (instead of 3) #109
Comments
Thanks for entering this @anthonygroves. I completely agree with your need and with the generalisation of the judgement scale. |
I wanted to mention that I am looking for a 4 point scale versus three as well. I think I can contribute some development effort if you can maybe give me some pointers? |
Hi @epugh, judgments are gathered in io.sease.rre.Func::gainOrRatingNode and looking at its usage I see As you can see callers are basically metrics and Query class.
|
Hi @agazzarini, @epugh asked me to take a look at this. My thoughts would be:
This allows overriding all defaults using the ParameterizedMetric mechanism, and works for all the metrics. It doesn't work for the Query class though. A further step, and this might be better as a separate issue/PR, might be to:
How does this sound? I'm happy to put together PRs for these if they seem like sensible suggestions. |
(I thought I had left a comment earlier but it seems lost - sorry for re-posting if my old comment re-appears.) I was wondering if we could use this rework of grades to allow for decimal numbers and grades between 0 and 1 as well. This is often what we end up with when we derive judgments/grades from tracking. Mapping them to integers/buckets would add a second, somehow arbitrary model. |
This should be possible - most of the calculations use BigDecimal (floating point) objects already, although both the DCG and ReciprocalRank calculations convert the grade to an integer before using it. Would it be useful to specify the |
- Make fairgrade configurable at construction time; - Use floating point grade values in gain(); - Add default grade values to Metric.
- Make maxgrade and fairgrade configurable at construction time; - Use floating point grade values in gain function.
… point values for grading.
…de to be set via Maven pom.xml: - Add singleton factory for instantiating MetricClassManager instances; - Allow access to default grade values via factory class. - Modify Maven plugins to use factory.
I think Yet another thought on floats: depending on the implementation of the metrics we should be careful with judgment values between 0 and 1. If we take the logarithm of this we might end up with negative values but I guess none of the metrics would do that?! |
@renekrie I've skipped making |
…RR, NDCG, RR to add consistency with pom.xml parameters.
#109: Make maximum and default grades configurable.
Is this cloasable @agazzarini with the merge? |
Yep Eric, sure. Sorry for the confusion, crazy days :)
On Wed, 25 Mar 2020 at 14:26, Eric Pugh ***@***.***> wrote:
Is this cloasable @agazzarini <https://github.com/agazzarini> with the
merge?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#109 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABZYBYGOL46TH4AXAOTPF5DRJIA6PANCNFSM4KT6VROA>
.
--
Andrea Gazzarini
*Search Consultant, R&D Software Engineer*
www.sease.io
email: a.gazzarini@sease.io
cell: +39 349 513 86 25
|
Currently, RRE only supports a three-level judgement scale. But docs here mention that this will likely be generalized in future versions: https://github.com/SeaseLtd/rated-ranking-evaluator/wiki/What%20We%20Need%20To%20Provide
My personal need is to use RRE with a judgement scale of 4 or 5, but I can see how others may want it to support any level up to 10. It would be nice if the RRE user could easily configure which N-level judgement scale to use, up to a reasonable (10?) value.
The text was updated successfully, but these errors were encountered: