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

Optimize AUC for binary classification #73

Closed
pplonski opened this issue Apr 24, 2020 · 10 comments
Closed

Optimize AUC for binary classification #73

pplonski opened this issue Apr 24, 2020 · 10 comments
Labels
enhancement New feature or request help wanted Extra attention is needed
Milestone

Comments

@pplonski
Copy link
Contributor

pplonski commented Apr 24, 2020

Right now, all metrics as minimized. AUC should be maximized.

Please add a check in AutoML constructor for correct metric name.

@pplonski pplonski added this to the version 0.5.0 milestone Apr 29, 2020
@pplonski pplonski added the enhancement New feature or request label Aug 26, 2020
@pplonski pplonski modified the milestones: version 0.6.0, version 0.6.1 Aug 26, 2020
@pplonski pplonski added the help wanted Extra attention is needed label Aug 26, 2020
@pplonski pplonski modified the milestones: version 0.6.1, version 0.7.0 Aug 28, 2020
@pplonski pplonski removed this from the version 0.7.0 milestone Sep 9, 2020
@shahules786
Copy link
Contributor

@pplonski Can you elaborate this a little more?

@pplonski
Copy link
Contributor Author

We minimize logloss for binary classification. There is no option to optimize different metrics in AutoML. This issue is to add an option to optimize AUC as eval_metric. During the implementation of this issue, it will be worth to check what other metrics can be optimized for classification (F1, Acc, MCC) and for regression.

It is worth to check which metrics can be optimized directly by algorithms. I would avoid callbacks in algorithms because they slow down the training 20x (yes, 20x, even empty list of callbacks).

@shahules786
Copy link
Contributor

Cool @pplonski , will look at it.

pplonski added a commit that referenced this issue Nov 26, 2020
@pplonski
Copy link
Contributor Author

This ticket is adding NEGATIVE AUC!

There is a problem with Learning curves plots. They have wrong y-axis label.

@alberto-jj
Copy link

Dear Piotr, many thanks for all the work done on this fantastic package.
I was wondering if is it possible to optimize based on balanced accuracy in classification tasks.
It might very helpful for unbalanced classes.

@pplonski
Copy link
Contributor Author

Hi @alberto-jj,

You should be able to set custom eval metric. It will not be used directly for model training, but it will be used for early stopping and model selection, and ensemble building - it should help a lot.

Please take a look at this comment for implementation details #390 (comment)

@puneeshkhanna
Copy link

@pplonski - Quick q is log loss minimized based upon class imbalance ?

@pplonski
Copy link
Contributor Author

What do you mean?

@puneeshkhanna
Copy link

Is it weighted log loss ?

@pplonski
Copy link
Contributor Author

You can pass sample_weight and then it will be weighted loss.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

4 participants