-
-
Notifications
You must be signed in to change notification settings - Fork 25.8k
[MRG] ROCCH calibration method #4822
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
Conversation
what is the practical benefit of this method? speed improvement is marginal. Can you expect much better performance on some setups. If so when? thanks |
This is a relatively common method, right? |
@agramfort the ROCCH calibration is design to maximize the AUC (At least during training) therefore it is a better method when the estimated probabilities will be used afterwards and not just the prediction, i.e. in cost-sensitive classification. |
@amueller I do find some relation between this and #4813 as the calibration of probabilities is changing the threshold of the classifier indirectly. Nevertheless, I dont think this is what @rahuldave had in mind when he open that issue. |
Regarding the Travis CI build. This code needs SciPy >=0.12, while the Travis test is being executed with Scipy 0.9. Initially, I had my own convex hull function, but it is slower than the one SciPy has. |
We need to support scipy 0.9. Usually the way around this is to backport the function to scikit-learn. I'm not sure you should do the work before we agree on inclusion, though. |
What do you mean by not fitting an additional model? You mean the isotonic model? |
I'm not sure I have time to look into the papers right now. Do they use a hold-out method for the threshold or do they use the training set? |
The support for scipy 0.9 its ok then. I will wait for the moment. the ROC is maximized on the hold-out set, sorry my confusion. On the papers the hold-out method is also the one used. I'm not familiar enough with the caret package. |
I'm +1 on adding this as I feel it is a very general method. |
fair enough. No time to review though.
|
@amueller I did the backport to scipy ConvexHull function |
Thanks, that seems like the way to go. |
Guys, this PR has been open for a while. Not sure which are the next steps |
Hm because the PR was name [WIP] I guess it didn't get any reviews. Also maybe because it's hard to get reviewer's attention. Can you maybe rebase? Thanks! |
wow still no reviews after two years :-/ sorry.... |
Is there still interest in including this? cc @amueller ? |
Unfortunately there hasn't been much support from the maintainer community here. So I think we can close until interest comes up again. |
Implementation of the ROCCH calibration method, as described in http://www.jmlr.org/papers/volume13/hernandez-orallo12a/hernandez-orallo12a.pdf and http://link.springer.com/article/10.1007/s10994-007-5011-0
It is implemented as an other method within the CalibratedClassifierCV class. Moreover, the documentation is expanded to include the results.
The method performs similarly to Isotonic calibration when measured by Brier loss, F1 Score or AUC. But with an speedup of up to 1.3X
Here an example