Skip to content
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

Add quantile metric. #8761

Merged
merged 6 commits into from
Feb 13, 2023
Merged

Add quantile metric. #8761

merged 6 commits into from
Feb 13, 2023

Conversation

trivialfis
Copy link
Member

@trivialfis trivialfis commented Feb 7, 2023

At the moment, the metric doesn't return the quantile value as part of its name like [email protected] (metrics like NDCG would display ndcg@3). It's just quantile. Eventually, we need a better interface for metrics to support non-trivial distance measures. This PR only handles the basic implementation of mean pinball loss.

  • Add quantile loss as metric, currently simply named quantile. We can call it something more "formal" like mean_pinball_error if it's deemed better.
  • Add quantile parameter, which requires parsing vector of floats. We have similar structures for tree param with mono and interaction constraints, but for integer instead.

Extracted from #8750 .

Copy link
Member

@RAMitchell RAMitchell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we do a small ground truth test against sklearn?

@trivialfis
Copy link
Member Author

@RAMitchell Added a test with sklearn mean_pinball_loss.

@trivialfis
Copy link
Member Author

Added a fix to parameter validation.

@trivialfis trivialfis requested a review from RAMitchell February 9, 2023 12:24
@trivialfis trivialfis merged commit 457f704 into dmlc:master Feb 13, 2023
@trivialfis trivialfis deleted the quantile-metric branch February 13, 2023 11:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants