提交

提交图

1813 次代码提交

作者 SHA1 备注 提交日期
Jonas Mueller 9b78b703d5 black formatting 2022-09-14 00:00:18 -07:00
Jonas Mueller bf000d551b update labels typing to be LabelLike 2022-09-13 23:55:35 -07:00
Hui Wen 7ab4cbbf23 minor docstring edits (#436) 2022-09-13 19:01:00 -07:00
Elías Snorrason 729c9f3068 Add autodoc-typehints extension for sphinx (#412)
* add autodoc-typehints extension for sphinx

With the extension: Function parameters are auto-tagged in docs, based on the function signatures.

Resolves #398

* disable use of :rtype: role by napoleon

output return type inline with description (https://sphinxcontrib-napoleon.readthedocs.io/en/latest/sphinxcontrib.napoleon.html#sphinxcontrib.napoleon.Config.napoleon_use_rtype)
2022-09-13 13:12:28 -07:00
Jonas Mueller 84af558e85 hide more code in image tutorial, organize imports 2022-09-13 12:39:43 -07:00
Jonas Mueller a9e3c0e5d2 emphasize features must be numeric 2022-09-13 09:37:21 -07:00
Jonas Mueller 6a0e3bc461 Improvements to token_classification tutorial (#419)
* edits to token tutorial

* fix typos

* given_labels -> labels in quickstart block

* add IOB2-formatting clarification

Co-authored-by: Elías Snorrason <eliassno@gmail.com>
2022-09-13 09:34:33 -07:00
Jonas Mueller b9ab4ba57b suppress tensorflow warning logs in tutorials if not properly installed (#432)
* remove ineffective TF suppression lines

* suppress tensorflow logs in workflows tutorial

* formatting

* hidden cell comment

* move suppress code to hidden cell

* move suppression code to first hidden cell

* move suppression code to first cell

* supress tf logs in tabular tutorial

* optional code to hidden cells in audio tutorial

* suppress tf logs in multiannotator tutorial

* suppress tf logs in token tutorial

* move cross-val tutorial to appear last

* move cross-val tutorial to be last in main index

* move outlier before multiannotator in API list

* remove newline at end of cell
2022-09-13 00:47:21 -07:00
Jonas Mueller 15899f8f20 try to suppress tensorflow logs pt2 (#431)
* move env variable setting before tf import

* suppress tf logs in faq
2022-09-12 18:03:00 -07:00
Ulyana 13d6cfc9ce Used internal function for typechecking labels 2022-09-12 16:54:07 -07:00
Jonas Mueller a0276ca587 Text tutorial improvements (#429)
* more tf supression

* formatting

* move imports to top
2022-09-11 14:46:04 -07:00
Elías Snorrason 9a109182b1 Update argument given_labels -> labels in token classification module (#423)
* given_labels -> labels

only applies to the argument to `display_issues`

Fixes #418

* update kwargs in test for display_issues

* apply black formatter
2022-09-11 12:38:38 -07:00
Jonas Mueller f7102db902 Add links to examples notebooks where appropriate (#428)
* links to OOD examples notebook

* iterative notebook title in its link
2022-09-11 12:24:51 -07:00
Jonas Mueller c307e9714f update workflows for post 2.0 (#427)
* update workflows for post 2.0

* formatting

* link for cleanlearning
2022-09-11 00:27:57 -07:00
Ulyana a6fb96f082 Add test 2022-09-09 16:58:42 -07:00
Ulyana 5243b48b00 Updated labels to array_like (list is ok) 2022-09-09 16:21:29 -07:00
Ulyana 43a795cb0c Update DEVELOPMENT.md with Relative Linking (#425)
* Update DEVELOPMENT.md with Relative Linking

Added instructions for relative linking between docs and tutorials

* more link instructions

Co-authored-by: Jonas Mueller <1390638+jwmueller@users.noreply.github.com>
2022-09-09 15:43:11 -07:00
Jonas Mueller d4deced278 add fork instruction 2022-09-09 13:50:33 -07:00
Ulyana 31d2618560 Improve outliers docstring notations (#424)
* Docstring remove args test

* exclude members test

Please enter the commit message for your changes. Lines starting

* Adding params as class instance attribute

* Added autoattribute: params

* Adding autoattribute under class

* Removed no-exclude-members and addded params to members

* autoattribute with indent

* Added annotation params

* Revert to removing default params only

* Removed params as instance var listing

* Consist italics vs code syntax in docstring
2022-09-09 12:55:29 -07:00
Jonas Mueller 78e8496363 Small tutorial notebook fixes/improvements (#420) 2022-09-09 17:36:27 +01:00
Hui Wen d8147caded Polish multiannotator docs (#422)
* docstring formatting

* add tiebreak info

* add example link to tutorial

* add missing backticks

* minor docstring text edits

* clarify "task"

Co-authored-by: Jonas Mueller <1390638+jwmueller@users.noreply.github.com>
2022-09-09 09:15:54 -07:00
Hui Wen 7416d9e714 update examples link (#421) 2022-09-09 09:09:21 -07:00
Jonas Mueller 006af01bad update migration guide to reflect versions >= 2.0 (#416)
* update migration guide to reflect >= 2.0

* sidebar updated
2022-09-08 22:09:23 -07:00
Jonas Mueller 62402d9ade move migration link into dropdown 2022-09-08 21:53:58 -07:00
Elías Snorrason 44cd416a96 add tutorial notebook to docs.cleanlab.ai (#411) 2022-09-08 18:27:28 -07:00
Elías Snorrason ce90af35c6 Review tutorial for token classification (#410)
* review tutorial for token classification

- update labels variable name in markdown block
- add newline for rendering bullet points
- put pulldown content into code blocks
- hide code blocks and move filepaths variable

* resolve pr comments

* remove pulldown code snippet and todo

* fix notebook json - delete extra comma

Co-authored-by: Jonas Mueller <1390638+jwmueller@users.noreply.github.com>
2022-09-08 18:27:11 -07:00
Hui Wen 1426a3c0fb add termcolor dependency (#415) 2022-09-08 12:59:01 -07:00
Jonas Mueller 23067aa9c6 Headers for newly added modules (#409)
* header for multiannotator module

* header for outlier module

* header for token_classification.filter

* header for token_classification.rank

* header for token_classification.summary

* header for util

* header for latent_algebra

* header for label_quality_utils

* header for token_classification_utils

* header for huggingfacekerasclassifier

* add experimental modules' dependencies to readme
2022-09-08 09:20:26 -07:00
Ulyana f6d9fcedde Added cleanlab.outlier into docs index (#408) 2022-09-07 15:57:56 -07:00
Ulyana 9dfa001068 Implementing get_ood_scores function (#338)
* Added base structure outline for get_ood_scores()
Added base test for get_ood_scores()

* Added warning for illogical param combo

* Addressed PR comments

* Added better unit tests
* TODO: test for correctly identifying OOD example

* Moved logic from get_ood_scores to _subtract_confident_thresholds

* TODO: Is this a cleaner way of doing this? Minimal code repeat but strange change to _subtract function
* Addressed type issue

* Switched logic for getting confident thresholds

* Fixing typecheck issues wiht labels parameter being None

* Simplified helper function. Testing type

* Fixed mypy static typing issue

* Mypy typecheck logic test

* removed uncessesary imports in util file

* typechecker debugging (add assert)

* Fixed type logic and removed confident_thresholds=None return

* Added extra arg in helper func to end of func

* Added zero-index checking for label param

* Added ood examples to outlier score notebook

* Added skeleton file structure for implementing outliers

* Make adjust_pred_probs=True by default not false

* Added base Outlier class functionality

TODO:
* test_outlier.py

* Added logic tests for function

* Updated get_ood_scores to always return confident_thresholds
* Even if none were calculated (then return is None)

* Added warning for fit that doesn't calculate confident_thresholds

* Moved get_outlier_scores and get_ood_scores to outlier.py

* Changed param dicts to dicts

* Added docstring to outlier.py

* Added proper return types

* Fixed mypy typing issues

* Switched outliers -> features; ood -> predictions naming conv

* Switched docstring to stem from fit and score functions

* Changed return of helper functions

* Fixed tutorials notebook to use OutOfDistribution class

* Moved imports to top of file

* Added option for different knn objects, addressed pr comments

* Switched params arg to init only

* Addressed PR comment for notebook, cleared notebook

* Fixed PR comments, wording.

* Testing relative links on build

* Changed ood_pred_probs scores to reflect 0 = most ood 1 = least

* Added MLP for detection outliers with pred_probs

* Fixed typos

* Added MLP Import

* Improved warning when fit call unnecessary

* Changed referenced to params dict in warnings/errors

* Added bagging+MLP classifier into notebook

* Reverted tutorial wording

* OOD tutorial improvements

* cleanup OOD documentation

* adopting->using

Co-authored-by: Jonas Mueller <1390638+jwmueller@users.noreply.github.com>
2022-09-07 10:52:55 -07:00
Jonas Mueller 8323a0f0ac explain pred_probs vs clf 2022-09-06 22:13:58 -07:00
Jonas Mueller f77f25f5a2 re-add hidden cell metadata 2022-09-06 15:40:26 -07:00
Jonas Mueller 92427d10b3 set data to None to avoid warning 2022-09-06 14:06:41 -07:00
Jonas Mueller bc8de13927 also demonstrate cleanlearning with pred_probs
Thanks @elisno for the suggestion!
2022-09-06 14:01:58 -07:00
Jonas Mueller 1375a27beb faq on predicted labels (#402) 2022-09-06 13:35:30 -07:00
Elías Snorrason 8371edffc9 🐛 escape special regex characters (#404)
Fixes #403
2022-09-06 09:28:59 -07:00
Jonas Mueller 1a239922fe update link to docs/tutorials tips 2022-09-06 00:39:29 -07:00
Elías Snorrason 9f030a65ac Cleanup-summary (#396)
* 🎨 remove wildcard imports

* 🏷️ review type annotations in display_issues

Restrict nested lists with `List`. Keep unrestricted lists as `list`. Remove hard-coded tags from docstrings, should be auto-tagged in later PR.

* ♻️ use `isinstance` for type-check at runtime

* 🏷️ review type annotations in common_label_issues and filter_by_token

Remove hard-coded tags in docstrings. Should be auto-tagged in later PR.

*  improve test coverage of display issues

No part of the function is easily testable except ensuring it completes exection. Some parts handle edge cases that were never reached during testing.

*  parametrize tests for coverage on common_label_issues and filter_by_token
2022-09-05 17:21:26 -07:00
Jonas Mueller 1a09ad2703 more instructions for developing docs/tutorials (#399)
* more instructions for tutorial checklist

* explain examples notebooks

* dependency question
2022-09-05 17:09:37 -07:00
Elías Snorrason 71521e90d3 Match token/s in color_sentence (#397)
*  search tokenized sentence for coloring

Searches through the list of tokens before trying to match substrings. Thanks for this code suggestion Eric!

* 🚧 fix signature in all calls to color_sentence

*  update color_sentence test after changing its api

(sentence, word) -> (word, tokens)

*  use regex for coloring tokens in sentence

Find word boundaries with regex, use builtin replace() as fallback w/o boundaries.

Closes #288

* 🚑 invert fallback condition

Use replace if NO substitutions were made with regex.
2022-09-05 16:30:29 -07:00
Elías Snorrason afa217cb4a Fix typing for find_label_issues (#391) 2022-09-03 12:30:07 -07:00
Jonas Mueller d5d420f3cd pep-8 pointer 2022-09-02 18:57:47 -07:00
Jonas Mueller bcad13d6a2 read development guide 2022-09-02 18:55:39 -07:00
Elías Snorrason c884dc5171 Cleanup token_classification.rank module (#393)
*  add test fixture for get_label_quality_scores

*  test softmin_sentence_score

include test cases for temperature limits

* ♻️ cleanup softmin_sentence_score

Remove unused keyword-only args, Fix tag in docstring, Change format of nested functions.

*  specialize edge-case temperature=inf in softmin_sentence_score

* ♻️ simplify temperature lookup

* ♻️ cleanup get_label_quality_scores

Remove unused args/variables. Update parameter list in docstring. Rename parameter of inner function. Function always returns a tuple.

* 🏷️ tag token_scores as optional

*  test raised error

* 🩹 skip untestable elif statement

the elif statement only gets partial coverage because it can't evaluate to False due to the `assert sentence_score_method` at the start of the function
2022-09-02 18:26:07 -07:00
Elías Snorrason 6ec5b173dd Cleanup token classification utils (#390)
* 🏷️ restrict parameters for list types

* 🐛 only process characters in input token

Example: process_token("Cleanlab", [("C", "a"), ("a", "C")]) should return "aleCnlCb", not "CleCnlCb".

*  use all sentences in test_get_sentence

*  add test cases to test_filter_sentence

*  extent test cases in test_mapping

* 📝 clean up docstrings

Restrict arg types based on docstrings. Fix punctuation and typos. Add examples to docstring.

*  split tests for filter_sentence

*  extend test_merge_probs

*  test merge_probs with ignored/normalized columns in probs

*  extend test cases for get_sentences

* ⚰️ remove unused pandas import

* 🏷️ pass strict mypy check

We ignore np.max as it is untyped.

No issues found in token_classification_utils.py by running
```
mypy --install-types --non-interactive --strict cleanlab/internal/token_classification_utils.py
```

* 👷 add strict type-checking in CI

* 💚 use strict type-check for single file

*  remove strict type check in CI

* refactor: 🏷️ use np.ndarray type instead of npt.NDArray

*  go back to generic np.ndarray type

* ♻️ always return tuple in filter_sentence

Remove unused argument+docstring. Simplify relevant unit tests.

* 🔥 resolve comments on typing

Remove ignore-comments. Remove duplicate tag in docstring. Remove unused imports.

* 🔥 remove duplicate tag in docstring
2022-09-01 17:07:39 -07:00
Jonas Mueller 67767962f3 link projects in readme 2022-09-01 00:12:08 -07:00
Jonas Mueller 1b40ba0c6a update Projects links, add link to wiki 2022-09-01 00:06:08 -07:00
Jonas Mueller 0b4e9089d5 avoid import * 2022-08-31 22:22:36 -07:00
Hui Wen 82096cbe36 Change verbose functionality in multiannotator functions (#389)
* calculate most likely class error from subset

* use verbose to control warning prints

* clip minimum to 1e-6 to prevent division by zero

* add docstring
2022-08-31 11:07:23 -07:00
Jonas Mueller 31d4370701 Add missing docs pages (#381)
* add files to show docs for recent source code

* temp delete audio tutorial for docs on M1

* black formatting
2022-08-31 02:28:45 -07:00