文件历史

305 次代码提交

作者 SHA1 备注 提交日期
Curtis G. Northcutt d8ab4e910b fix black formatting compliance (#224)
* fix black formatting compliance

* remove codecov for verbose statements
2022-04-17 21:57:15 -04:00
Jonas Mueller ecca2ab0a6 Bump version to 2.0.0 (#222)
* bump version

* Add brief release notes. see release for extensive

Co-authored-by: Curtis G. Northcutt <curtis.northcutt@gmail.com>
2022-04-16 18:55:11 -04:00
Curtis G. Northcutt 966acf8a61 final tutorial edits. dataset docstrings imp (#217)
* final tutorial edits. dataset docstrings imp

* add back instructions for user installation

* remove useless pycharm metadata.

* remove extraneous comma
2022-04-15 23:00:17 -04:00
Curtis G. Northcutt ee6494de4d Small clarification in docstring 2022-04-15 20:54:34 -04:00
Curtis G. Northcutt e971350795 Clarify and fix several docstrings. (#214)
* Clarify and fix several docstrings.

* Adjustments based on Jonas's comments.

* fix typo
2022-04-15 19:06:45 -04:00
Curtis G. Northcutt fac6c112aa health_summary bug fixes + notebook support (#212)
* bug fixes and jupyter notebook support added

* Increase test coverage.

* Fix bug. will always try to display if possible.
2022-04-15 14:54:00 -04:00
Curtis G. Northcutt a3b5da6306 fix broken printing of matrices (#207) 2022-04-14 01:08:49 -04:00
Curtis G. Northcutt 269a09d1b3 Fix error in docstring. missing item in tuple 2022-04-13 21:17:22 -07:00
Jonas Mueller b8b6623c1d Merge pull request #203 from anishathalye/doc-fixes
Make minor doc tweaks
2022-04-13 20:11:23 -07:00
Curtis G. Northcutt 0cbe03030e Add from . import dataset to init 2022-04-13 20:02:11 -07:00
Curtis G. Northcutt 08d7f2cdc6 Make fit(verbose) default False. Fix minor bugs. fix black and urls (#204)
* set verbose defaulat false. fix order of printing

* add newline for black format compliance

* fix broken url links in readme
2022-04-13 21:23:01 -04:00
Anish Athalye b305b417ad Make minor doc tweaks 2022-04-13 20:28:21 -04:00
Jonas Mueller d1a4bc86fd Returns DataFrame type from CleanLearning functions (#199)
* df return type, need tests still

* Add pandas as a dependency

We already decided that pandas will be a dependency of cleanlab (also
used in the dataset module, see
https://github.com/cleanlab/cleanlab/pull/182).

* Tweak documentation

* addressed comments

* remove lazy import

* address 2nd round comments

* unit tests

* improve codecov

* Fix typo

* methods to save more space

* nocover statements for prints

* extra nocover

* nocover warnings

* test docstring formatting

* test docstring formatting2

* test docstring formatting2

* move compress to helper, find-label docs params

* readded stuff lost in merge conflict

* addressed remaining PR review comments

* docs formatting

* docs formatting2

* docs formatting3

* docs formatting4

* docs formatting5

* docs formatting5

* docs formatting6

* docs formatting7

* docs formatting8

* docs formatting9

* docs formatting19

* docs formatting20

* docs formatting20

* docs formatting21

* code formatting

* fix a bug where confident joint isnt computed

The confident joint wasn't getting computed if noise_matrix was passed in and pred_probs was not passed in. But that's bad because it stops workflows like:

```python
cl = CleanLearning()
cl.fit(data, labels, noise_matrix=noise_matrix)
cleanlab.dataset.health_summary(labels, confident_joint=cl.confident_joint)
```

* fixed bug from last commit. code in wrong place.

* print overwrite bugfix

Co-authored-by: Anish Athalye <me@anishathalye.com>
Co-authored-by: Curtis G. Northcutt <curtis.northcutt@gmail.com>
2022-04-13 16:00:41 -04:00
Jonas Mueller 18b784f910 Readme reformat (#198)
* initial readme updates

* code example

* example errors image

* example errors image formatting

* example errors image formatting 2

* restof pulldowns

* rest of pulldowns formatting

* deleted extra details - pulldowns formatting

* pulldowns spacing

* pulldowns spacing

* news bullets

* release note link update

* Fix logo URL

* Fix whitespace errors

* Replace `cleanlab` -> cleanlab

This follows what we do in our documentation (see style guide in
DEVELOPMENT.md).

* Make various fixes and changes

* Hide bibtex behind summary/details

* updated example code for @cgnorthcutt feedback

Updated example code bringing back comments from the old readme, and updated the code snippet to use new CleanLearning API which is far more streamlined.

* example code formatting

* skeleton of migration guide added

* add changelog link

* Make banner logo transparent amazing in dark mode

* add link to docs migration guide

link needs to be verified, total guess

* link formatting fix in img caption

* add dataset module summary

* Major revision of entire README.

Co-authored-by: Anish Athalye <me@anishathalye.com>
Co-authored-by: Curtis G. Northcutt <curtis.northcutt@gmail.com>
2022-04-13 07:50:46 -04:00
Curtis G. Northcutt 9cdf5050f5 Clarify joint asymmetry in docs. reset indices in dfs 2022-04-12 23:46:23 -04:00
Anish Athalye 2597e3e81e Make key match function name
This makes it consistent with the other two,
"classes_by_label_quality" and "overlapping_classes".
2022-04-12 09:23:43 -04:00
Anish Athalye 374f6e053a Fix typo 2022-04-12 09:21:29 -04:00
Anish Athalye 8470c72667 Checkpoint addressing Jonas's feedback
Co-Authored-By: Curtis G. Northcutt <curtis.northcutt@gmail.com>
2022-04-11 17:45:33 -04:00
Anish Athalye dc6fa956cb Make a pass over docs 2022-04-11 13:15:43 -04:00
Anish Athalye eae292458f Merge branch 'master' into dataset_module 2022-04-11 12:45:21 -04:00
Curtis G. Northcutt 0fb2439713 Totally rewritten. class methods merged. now uses pandas. health summary. 2022-04-10 14:37:55 +00:00
Anish Athalye 0dc384a4ed Merge branch 'docs-cleanup' 2022-04-09 15:16:09 -04:00
Anish Athalye 63393237d6 Revise noise_generation 2022-04-09 09:25:56 -04:00
Anish Athalye 8770e977d3 Remove deprecated functions
No reason to have any deprecated functions in a backwards-incompatible
release like 2.0.
2022-04-09 09:01:08 -04:00
Anish Athalye 5cf8f74232 Switch to pseudocode math over LaTeX math
In most cases, this looks nicer than the LaTeX math, and it's also more
readable in the terminal.
2022-04-09 08:47:46 -04:00
Anish Athalye aaa141ab7d Revise count 2022-04-09 08:41:08 -04:00
Anish Athalye 4f717c8d8f Have find_label_issues summarize what it does
Thanks @jwmueller:
https://github.com/cleanlab/cleanlab/pull/189#issuecomment-1093652195.
2022-04-09 07:33:24 -04:00
Anish Athalye 5a06c07d2b Revise rank 2022-04-09 07:33:24 -04:00
Anish Athalye 90d6e77ed9 Revise filter 2022-04-09 07:33:24 -04:00
Anish Athalye 133fcc452e Revise classification 2022-04-09 07:33:24 -04:00
Anish Athalye 49b3717edc Make coarse-grained pass over docs
This patch fixes many of the egregious issues with docs rendering.
2022-04-09 07:33:24 -04:00
Anish Athalye d1f5bbc8e1 Remove import of internal package (#195)
This import made `cleanlab.internal.util` available as `cleanlab.util`,
which we don't want.

Co-authored-by: Jonas Mueller <1390638+jwmueller@users.noreply.github.com>
2022-04-08 18:13:55 -07:00
Anish Athalye 2e9a1e226d Merge branch 'benchmarking' 2022-04-08 20:13:58 -04:00
Anish Athalye 0be3c70a6e Move noise_generation into benchmarking module 2022-04-08 20:08:19 -04:00
Johnson Kuan ec739eec23 Add self.labels as attribute of FastTextClassifier (#194)
* Add self.labels to fasttext.py
2022-04-08 15:53:11 -07:00
Curtis G. Northcutt 3a1f038e4d Add params to joint. link calibrate to joint. add type on docstring return 2022-04-08 13:01:53 -04:00
Anish Athalye 8de8340313 Add link checking for compiled docs 2022-04-07 10:33:15 -04:00
Jonas Mueller faac915740 mv example_models -> experimental 2022-04-07 01:25:03 -07:00
Jonas Mueller 423e5b0a07 Polish the APIs and file-structure to prepare for 2.0 release (#181)
* Makes some methods private that are not intended to be user-facing.
* Adds experimental module with fasttext.py and coteaching.py
* Adds header descriptions to code files which will render in docs
* Many miscellaneous fixes
2022-04-06 21:04:06 -07:00
Curtis G. Northcutt 06b990b5f1 Skeleton commit for first version of new dataset module. UNTESTED 2022-04-06 22:26:29 -04:00
Curtis G. Northcutt 2de67cbc34 Simple fix to Issue 158 (and potentially other issues) (#178)
* CleanLearning = Machine Learning with cleaned data

* Replace lnl instance naming with cl everywhere (CleanLearning)

* Add support for multi-class as well

* Add test based on #158

Co-authored-by: Anish Athalye <me@anishathalye.com>
2022-04-06 18:55:18 -04:00
Curtis G. Northcutt c4e84624e9 CleanLearning = Machine Learning with cleaned data (#177)
* CleanLearning = Machine Learning with cleaned data

* Replace lnl instance naming with cl everywhere (CleanLearning)

* replace rp (rank pruning) with cl (clearn learning) everywhere

* Clarifying comments. remove unnecessary newlines. fix spelling err
2022-04-06 17:33:04 -04:00
Jonas Mueller d3eb08e75a added LearningWithNoisyLabels.find_label_issues instance method (#157)
* added LearningWithNoisyLabels.find_label_issues instance method

* LNL.find_label_issues no longer memoizes

* verbose unit test coverage

* Fixed all issues in PR. Fixed confident joint usage in LNL.find_label_issues. Fixed other minor bugs. Added tests

Co-authored-by: Curtis G. Northcutt <curtis.northcutt@gmail.com>
Co-authored-by: Anish Athalye <me@anishathalye.com>
2022-04-06 12:24:27 -04:00
Anish Athalye 5e50623032 Remove unnecessary version warning (#162)
This was used to skip e.g. importing PyTorch on some tests. However,
PyTorch supports all versions of Python that Cleanlab supports, so
there's no need to issue this warning. Furthermore, having this kind of
code in our codebase increases maintenance burden and contributes to
user frustration. If we mark a version of some library as unsupported,
but the library adds support for it in the future, there's no way users
can use the two packages together without waiting for us to push a new
version of cleanlab that marks that it's compatible and then switching
to the new version, which may be painful for unrelated reasons. It's
better to not have these kinds of checks; if users are using a version
of Python that's unsupported by some other library that they want to
use, that's not our problem, and they'll have issues installing or
importing it and figure it out themselves.

This patch also removes mentions of Python 2.
2022-04-05 18:59:58 -04:00
Johnson Kuan 6d8102c7f6 Add fix and test for sklearn GridSearchCV with LearningWithNoisyLabels (#153)
* Move _process_label_issues_kwargs to fit method

* Add test for sklearn GridSearchCV with kwargs

* Add comment to test for sklearn GridSearchCV with kwargs

* Change cv=3 for GridSearchCV in test
2022-03-31 19:21:35 -07:00
Johnson Kuan 0f86e7b884 Enable use of find_label_issues_kwargs for hyper-parameter search (#152)
* Move find_label_issues_kwargs dict arg to init() method

* Update tests after moving find_label_issues_kwargs dict arg to init() method.

* Remove blank line

* Cleanup docstring

* add self.find_label_issues_kwargs
2022-03-31 15:11:03 -07:00
Jonas Mueller 1247f165f2 Improve user-control (#149)
* improved language in docs Quickstart

* LearningWithNoisyLabels refactor to improve API flexibility and UX

* fix LearningWithNoisy rare label handling

* additional arg-checking unit tests
2022-03-30 08:18:38 -07:00
Jonas Mueller 00e3681955 Merge pull request #148 from anishathalye/allow-nd
Allow n-dim data in LearningWithNoisyLabels
2022-03-28 21:24:36 -07:00
Anish Athalye aec6734902 Allow n-dim data in LearningWithNoisyLabels
LearningWithNoisyLabels used `sklearn.utils.check_X_y` to enforce that
`X` was 2D, to be in line with what sklearn's standard estimators
expect. However, LearningWithNoisyLabels is dataset-agnostic: it doesn't
look at the data points themselves. If the underlying classifier
supports data in a different shape, there's no reason
LearningWithNoisyLabels should prohibit it. Users have requested that we
relax this unnecessary restriction [1] so LearningWithNoisyLabels will
more naturally support e.g. image datasets and CNN models.

Thanks to @kothari1997narayan for suggesting this change.

[1]: https://github.com/cleanlab/cleanlab/issues/86
2022-03-29 00:16:40 -04:00
Johnson Kuan 39f6948e2e Update default label quality scoring method to self_confidence (#147)
* Update default label quality scoring method to self_confidence
2022-03-28 20:10:09 -07:00