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

[Refactor] Classification 6/n #1163

Merged
merged 48 commits into from
Aug 20, 2022

Conversation

SkafteNicki
Copy link
Member

@SkafteNicki SkafteNicki commented Jul 28, 2022

What does this PR do?

Continues work on classification refactor #1001
Prior work:

This PR takes care of precision_recall_curve, roc, auroc, average_precision, recall_at_fixed_precision. Importantly this PR brings a significant improvement since all these metrics can now be calculated using constant memory instead of relying on saving all predictions and targets in memory. It is controlled through the new thresholds argument that can either be set to None which corresponds to the old behaviour or to an int (or an list if user want to specify the thresholds themself) that will calculate the metric using an approach similar to binned metrics we have.

Before submitting

  • Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
  • Did you read the contributor guideline, Pull Request section?
  • Did you make sure to update the docs?
  • Did you write any new necessary tests?

PR review

Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.

Did you have fun?

Make sure you had fun coding 🙃

@SkafteNicki SkafteNicki added enhancement New feature or request Priority Critical task/issue refactoring refactoring and code health labels Jul 28, 2022
@SkafteNicki SkafteNicki added this to the v0.10 milestone Jul 28, 2022
@codecov
Copy link

codecov bot commented Aug 15, 2022

Codecov Report

Merging #1163 (ab1d4ed) into devel/classification (7529129) will decrease coverage by 1%.
The diff coverage is 93%.

@@                  Coverage Diff                  @@
##           devel/classification   #1163    +/-   ##
=====================================================
- Coverage                    90%     90%    -1%     
=====================================================
  Files                       187     189     +2     
  Lines                      9774   10543   +769     
=====================================================
+ Hits                       8843    9469   +626     
- Misses                      931    1074   +143     

@mergify mergify bot added the ready label Aug 18, 2022
@SkafteNicki SkafteNicki merged commit 3c0d55a into devel/classification Aug 20, 2022
@SkafteNicki SkafteNicki deleted the refactor/classification_6 branch August 20, 2022 19:05
@SkafteNicki SkafteNicki mentioned this pull request Aug 20, 2022
4 tasks
Borda pushed a commit that referenced this pull request Aug 26, 2022
* some idea

* implementation stuff

* error message

* somethings working

* working

* working multilabel precision recall

* docstrings

* working average precision

* working roc

* working auroc

* working precision at recall

* docs

* init files

* beginning doctest

* more docs

* more docs

* more docs

* more docs

* more docs

* more docs

* correction to math

* fix mypy

* add suggestions

* change default from 100 to None

* fix

* fix

* some fixes

* suggestions for stancld

* try fixing

* try fix

* try again

* more fixing

* another fix

* skip half + cpu test for old versions

* fix link

* another fix

* nan safety

* another fix

* skip non working cpu half tests

* skip non working cpu + half tests
@SkafteNicki SkafteNicki mentioned this pull request Aug 28, 2022
4 tasks
Borda pushed a commit that referenced this pull request Sep 12, 2022
* some idea

* implementation stuff

* error message

* somethings working

* working

* working multilabel precision recall

* docstrings

* working average precision

* working roc

* working auroc

* working precision at recall

* docs

* init files

* beginning doctest

* more docs

* more docs

* more docs

* more docs

* more docs

* more docs

* correction to math

* fix mypy

* add suggestions

* change default from 100 to None

* fix

* fix

* some fixes

* suggestions for stancld

* try fixing

* try fix

* try again

* more fixing

* another fix

* skip half + cpu test for old versions

* fix link

* another fix

* nan safety

* another fix

* skip non working cpu half tests

* skip non working cpu + half tests
Borda pushed a commit that referenced this pull request Sep 12, 2022
* some idea

* implementation stuff

* error message

* somethings working

* working

* working multilabel precision recall

* docstrings

* working average precision

* working roc

* working auroc

* working precision at recall

* docs

* init files

* beginning doctest

* more docs

* more docs

* more docs

* more docs

* more docs

* more docs

* correction to math

* fix mypy

* add suggestions

* change default from 100 to None

* fix

* fix

* some fixes

* suggestions for stancld

* try fixing

* try fix

* try again

* more fixing

* another fix

* skip half + cpu test for old versions

* fix link

* another fix

* nan safety

* another fix

* skip non working cpu half tests

* skip non working cpu + half tests
Borda pushed a commit that referenced this pull request Sep 13, 2022
* some idea

* implementation stuff

* error message

* somethings working

* working

* working multilabel precision recall

* docstrings

* working average precision

* working roc

* working auroc

* working precision at recall

* docs

* init files

* beginning doctest

* more docs

* more docs

* more docs

* more docs

* more docs

* more docs

* correction to math

* fix mypy

* add suggestions

* change default from 100 to None

* fix

* fix

* some fixes

* suggestions for stancld

* try fixing

* try fix

* try again

* more fixing

* another fix

* skip half + cpu test for old versions

* fix link

* another fix

* nan safety

* another fix

* skip non working cpu half tests

* skip non working cpu + half tests
Borda pushed a commit that referenced this pull request Sep 13, 2022
* some idea

* implementation stuff

* error message

* somethings working

* working

* working multilabel precision recall

* docstrings

* working average precision

* working roc

* working auroc

* working precision at recall

* docs

* init files

* beginning doctest

* more docs

* more docs

* more docs

* more docs

* more docs

* more docs

* correction to math

* fix mypy

* add suggestions

* change default from 100 to None

* fix

* fix

* some fixes

* suggestions for stancld

* try fixing

* try fix

* try again

* more fixing

* another fix

* skip half + cpu test for old versions

* fix link

* another fix

* nan safety

* another fix

* skip non working cpu half tests

* skip non working cpu + half tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Priority Critical task/issue ready refactoring refactoring and code health
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants