diff --git a/README.md b/README.md index 798062f..8649972 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,9 @@ + +> [!NOTE] +> 本文档由 WeHub 基于上游 README 翻译整理,属于社区翻译,非官方中文文档。 +> [English](./README.en.md) · [原始项目](https://github.com/cleanlab/cleanlab) · [上游 README](https://github.com/cleanlab/cleanlab/blob/HEAD/README.md) +> 原作者、版权与许可证归属以原始项目及本仓库 LICENSE 文件为准。 +
@@ -12,21 +18,21 @@

- Documentation | - Examples | - Blog | - Research + 文档 | + 示例 | + 博客 | + 研究

-Cleanlab’s open-source library helps you **clean** data and **lab**els by automatically detecting issues in a ML dataset. To facilitate **machine learning with messy, real-world data**, this data-centric AI package uses your *existing* models to estimate dataset problems that can be fixed to train even *better* models. +Cleanlab 的开源库可帮助你通过自动检测 ML 数据集中的问题来**清理**(clean)数据与**标注**(lab**el**)。为促进**在混乱的真实世界数据上进行机器学习**,这一以数据为中心的 AI(data-centric AI)包利用你*现有*的模型来估计数据集中的问题,修复这些问题后即可训练出*更优*的模型。

- Examples of various issues in Cat/Dog dataset automatically detected by cleanlab via this code: + 通过以下代码,cleanlab **自动检测**到的猫/狗(Cat/Dog)数据集中各类问题的示例:

```python @@ -36,55 +42,55 @@ Cleanlab’s open-source library helps you **clean** data and **lab**els by auto lab.report() ``` -- Use cleanlab to automatically check every: [text](https://docs.cleanlab.ai/stable/tutorials/datalab/text.html), [audio](https://docs.cleanlab.ai/stable/tutorials/datalab/audio.html), [image](https://docs.cleanlab.ai/stable/tutorials/datalab/image.html), or [tabular](https://docs.cleanlab.ai/stable/tutorials/datalab/tabular.html) dataset. -- Use cleanlab to automatically: [detect data issues (outliers, duplicates, label errors, etc)](https://docs.cleanlab.ai/stable/tutorials/datalab/datalab_quickstart.html), [train robust models](https://docs.cleanlab.ai/stable/tutorials/indepth_overview.html), [infer consensus + annotator-quality for multi-annotator data](https://docs.cleanlab.ai/stable/tutorials/multiannotator.html), [suggest data to (re)label next (active learning)](https://github.com/cleanlab/examples/blob/master/active_learning_multiannotator/active_learning.ipynb). +- 使用 cleanlab 自动检查各类数据集:[文本](https://docs.cleanlab.ai/stable/tutorials/datalab/text.html), [音频](https://docs.cleanlab.ai/stable/tutorials/datalab/audio.html), [图像](https://docs.cleanlab.ai/stable/tutorials/datalab/image.html), 或 [表格](https://docs.cleanlab.ai/stable/tutorials/datalab/tabular.html) 数据集。 +- 使用 cleanlab 自动:[检测数据问题(异常值、重复项、标注错误等)](https://docs.cleanlab.ai/stable/tutorials/datalab/datalab_quickstart.html), [训练鲁棒模型](https://docs.cleanlab.ai/stable/tutorials/indepth_overview.html), [推断多标注者数据的共识与标注者质量](https://docs.cleanlab.ai/stable/tutorials/multiannotator.html), [建议下一步应(重新)标注的数据(主动学习)](https://github.com/cleanlab/examples/blob/master/active_learning_multiannotator/active_learning.ipynb). --- -## Run cleanlab open-source +## 运行 cleanlab 开源版 -This cleanlab package runs on Python 3.10+ and supports Linux, macOS, as well as Windows. +此 cleanlab 包运行于 Python 3.10+,支持 Linux、macOS 以及 Windows。 -- Get started [here](https://docs.cleanlab.ai/)! Install via `uv`, `pip`, or `conda`. -- Developers who install the bleeding-edge from source should refer to [this master branch documentation](https://docs.cleanlab.ai/master/index.html). +- 从[这里](https://docs.cleanlab.ai/)! 开始入门。可通过 `uv`、`pip` 或 `conda` 安装。 +- 从源码安装最新开发版的开发者请参阅[此 master 分支文档](https://docs.cleanlab.ai/master/index.html). -**Practicing data-centric AI can look like this:** -1. Train initial ML model on original dataset. -2. Utilize this model to diagnose data issues (via cleanlab methods) and improve the dataset. -3. Train the same model on the improved dataset. -4. Try various modeling techniques to further improve performance. +**实践以数据为中心的 AI 可以是这样:** +1. 在原始数据集上训练初始 ML 模型。 +2. 利用该模型诊断数据问题(通过 cleanlab 方法)并改进数据集。 +3. 在改进后的数据集上训练同一模型。 +4. 尝试各种建模技术以进一步提升性能。 -Most folks jump from Step 1 → 4, but you may achieve big gains without *any* change to your modeling code by using cleanlab! -Continuously boost performance by iterating Steps 2 → 4 (and try to evaluate with *cleaned* data). +多数人直接从步骤 1 跳到 4,但借助 cleanlab,你无需对建模代码做任何修改也可能获得巨大提升! +通过反复执行步骤 2 → 4 持续提升性能(并尽量使用*清洗后*的数据进行评估)。 ![](https://raw.githubusercontent.com/cleanlab/assets/master/cleanlab/flowchart.png) -## Use cleanlab with any model and in most ML tasks +## 将 cleanlab 用于任意模型及大多数 ML 任务 -All features of cleanlab work with **any dataset** and **any model**. Yes, any model: PyTorch, Tensorflow, Keras, JAX, HuggingFace, OpenAI, XGBoost, scikit-learn, etc. +cleanlab 的全部功能均可配合**任意数据集**与**任意模型**使用。是的,任意模型:PyTorch、Tensorflow、Keras、JAX、HuggingFace、OpenAI、XGBoost、scikit-learn 等。 -cleanlab is useful across a wide variety of Machine Learning tasks. Specific tasks this data-centric AI package offers dedicated functionality for include: -1. [Binary and multi-class classification](https://docs.cleanlab.ai/stable/tutorials/indepth_overview.html) -2. [Multi-label classification](https://docs.cleanlab.ai/stable/tutorials/multilabel_classification.html) (e.g. image/document tagging) -3. [Token classification](https://docs.cleanlab.ai/stable/tutorials/token_classification.html) (e.g. entity recognition in text) -4. [Regression](https://docs.cleanlab.ai/stable/tutorials/regression.html) (predicting numerical column in a dataset) -5. [Image segmentation](https://docs.cleanlab.ai/stable/tutorials/segmentation.html) (images with per-pixel annotations) -6. [Object detection](https://docs.cleanlab.ai/stable/tutorials/object_detection.html) (images with bounding box annotations) -7. [Classification with data labeled by multiple annotators](https://docs.cleanlab.ai/stable/tutorials/multiannotator.html) -8. [Active learning with multiple annotators](https://github.com/cleanlab/examples/blob/master/active_learning_multiannotator/active_learning.ipynb) (suggest which data to label or re-label to improve model most) -9. [Outlier detection](https://docs.cleanlab.ai/stable/tutorials/outliers.html) (identify atypical data that appears out of distribution) +cleanlab 适用于种类繁多的机器学习任务。此以数据为中心的 AI 包为以下特定任务提供专门功能: +1. [二分类与多分类](https://docs.cleanlab.ai/stable/tutorials/indepth_overview.html) +2. [多标签分类](https://docs.cleanlab.ai/stable/tutorials/multilabel_classification.html)(例如图像/文档标注) +3. [Token 分类](https://docs.cleanlab.ai/stable/tutorials/token_classification.html)(例如文本中的实体识别) +4. [回归](https://docs.cleanlab.ai/stable/tutorials/regression.html)(预测数据集中的数值列) +5. [图像分割](https://docs.cleanlab.ai/stable/tutorials/segmentation.html)(带逐像素标注的图像) +6. [目标检测](https://docs.cleanlab.ai/stable/tutorials/object_detection.html)(带边界框标注的图像) +7. [由多名标注者标注数据的分类](https://docs.cleanlab.ai/stable/tutorials/multiannotator.html) +8. [多名标注者的主动学习](https://github.com/cleanlab/examples/blob/master/active_learning_multiannotator/active_learning.ipynb)(建议标注或重新标注哪些数据最能提升模型) +9. [异常值检测](https://docs.cleanlab.ai/stable/tutorials/outliers.html)(识别看似分布外的非典型数据) -For other ML tasks, cleanlab can still help you improve your dataset if appropriately applied. -See our [Example Notebooks](https://github.com/cleanlab/examples) and [Blog](https://cleanlab.ai/blog/learn/). +对于其他 ML 任务,若恰当应用,cleanlab 仍可帮助你改进数据集。 +请参阅我们的[示例 Notebook](https://github.com/cleanlab/examples) 与[博客](https://cleanlab.ai/blog/learn/). -## So fresh, so cleanlab +## 如此清新,如此 cleanlab -Beyond automatically catching [all sorts of issues](https://docs.cleanlab.ai/stable/cleanlab/datalab/guide/issue_type_description.html) lurking in your data, this data-centric AI package helps you deal with **noisy labels** and train more **robust ML models**. -Here's an example: +除了自动捕获潜藏在你数据中的[各类问题](https://docs.cleanlab.ai/stable/cleanlab/datalab/guide/issue_type_description.html),这一以数据为中心的 AI 包还可帮助你处理**噪声标注**,并训练更**鲁棒的 ML 模型**。 +示例如下: ```python @@ -104,28 +110,27 @@ cl.predict(test_data) cleanlab.dataset.health_summary(labels, confident_joint=cl.confident_joint) ``` -cleanlab **clean**s your data's **lab**els via state-of-the-art *confident learning* algorithms, published in this [paper](https://jair.org/index.php/jair/article/view/12125) and [blog](https://l7.curtisnorthcutt.com/confident-learning). See some of the datasets cleaned with cleanlab at [labelerrors.com](https://labelerrors.com). +cleanlab 通过最先进的*置信学习*(confident learning)算法来**清理**你数据的**标注**,相关算法发表于此[论文](https://jair.org/index.php/jair/article/view/12125) 与[博客](https://l7.curtisnorthcutt.com/confident-learning).。可在 [labelerrors.com](https://labelerrors.com). 查看部分经 cleanlab 清洗的数据集。 -cleanlab is: +cleanlab 具备: -1. **backed by theory** -- with [provable guarantees](https://arxiv.org/abs/1911.00068) of exact label noise estimation, even with imperfect models. -2. **fast** -- code is parallelized and scalable. -4. **easy to use** -- one line of code to find mislabeled data, bad annotators, outliers, or train noise-robust models. -6. **general** -- works with **[any dataset](https://labelerrors.com/)** (text, image, tabular, audio,...) + **any model** (PyTorch, OpenAI, XGBoost,...) +1. **有理论支撑**——即使模型不完美,也能对标注噪声进行精确估计,并具有[可证明的保证](https://arxiv.org/abs/1911.00068)。 +2. **快速**——代码已并行化且可扩展。 +4. **易于使用**——一行代码即可找出错误标注、劣质标注者、异常值,或训练抗噪声模型。 +6. **通用**——适用于**[任意数据集](https://labelerrors.com/)****(文本、图像、表格、音频等)+ **任意模型**(PyTorch、OpenAI、XGBoost 等)
![](https://raw.githubusercontent.com/cleanlab/assets/master/cleanlab/label-errors-examples.png)

-Examples of incorrect given labels in various image datasets found and corrected using cleanlab. -While these examples are from image datasets, this also works for text, audio, tabular data. +使用 cleanlab 发现并纠正的各类图像数据集中错误给定标注的示例。 +尽管这些示例来自图像数据集,该方法同样适用于文本、音频、表格数据。

+## 引用与相关出版物 -## Citation and related publications +cleanlab 基于同行评审的研究。若你使用本软件包,可引用以下相关论文: -cleanlab is based on peer-reviewed research. Here are relevant papers to cite if you use this package: - -
Confident Learning (JAIR '21) (click to show bibtex) +
Confident Learning (JAIR '21) (点击显示 bibtex) @article{northcutt2021confidentlearning, title={Confident Learning: Estimating Uncertainty in Dataset Labels}, @@ -138,7 +143,7 @@ cleanlab is based on peer-reviewed research. Here are relevant papers to cite if
-
Rank Pruning (UAI '17) (click to show bibtex) +
Rank Pruning (UAI '17) (点击显示 bibtex) @inproceedings{northcutt2017rankpruning, author={Northcutt, Curtis G. and Wu, Tailin and Chuang, Isaac L.}, @@ -154,7 +159,7 @@ cleanlab is based on peer-reviewed research. Here are relevant papers to cite if
-
Label Quality Scoring (ICML '22) (click to show bibtex) +
Label Quality Scoring (ICML '22) (点击显示 bibtex) @inproceedings{kuan2022labelquality, title={Model-agnostic label quality scoring to detect real-world label errors}, @@ -165,7 +170,7 @@ cleanlab is based on peer-reviewed research. Here are relevant papers to cite if
-
Label Errors in Token Classification / Entity Recognition (NeurIPS '22) (click to show bibtex) +
Label Errors in Token Classification / Entity Recognition (NeurIPS '22) (点击显示 bibtex) @inproceedings{wang2022tokenerrors, title={Detecting label errors in token classification data}, @@ -176,7 +181,7 @@ cleanlab is based on peer-reviewed research. Here are relevant papers to cite if
-
Label Errors in Multi-Label Classification (ICLR '23) (click to show bibtex) +
Label Errors in Multi-Label Classification (ICLR '23) (点击显示 bibtex) @inproceedings{thyagarajan2023multilabel, title={Identifying Incorrect Annotations in Multi-Label Classification Data}, @@ -187,7 +192,7 @@ cleanlab is based on peer-reviewed research. Here are relevant papers to cite if
-
Label Errors in Object Detection (ICML '23) (click to show bibtex) +
Label Errors in Object Detection (ICML '23) (点击显示 bibtex) @inproceedings{tkachenko2023objectlab, title={ObjectLab: Automated Diagnosis of Mislabeled Images in Object Detection Data}, @@ -198,7 +203,7 @@ cleanlab is based on peer-reviewed research. Here are relevant papers to cite if
-
Label Errors in Image Segmentation (ICML '23) (click to show bibtex) +
Label Errors in Image Segmentation (ICML '23) (点击显示 bibtex) @inproceedings{lad2023segmentation, title={Estimating label quality and errors in semantic segmentation data via any model}, @@ -209,7 +214,7 @@ cleanlab is based on peer-reviewed research. Here are relevant papers to cite if
-
Detecting Errors in Numerical Data (DMLR '24) (click to show bibtex) +
Detecting Errors in Numerical Data (DMLR '24) (点击显示 bibtex) @inproceedings{zhou2023errors, title={Detecting Errors in a Numerical Response via any Regression Model}, @@ -220,7 +225,7 @@ cleanlab is based on peer-reviewed research. Here are relevant papers to cite if
-
Out-of-Distribution Detection (ICML '22) (click to show bibtex) +
Out-of-Distribution Detection (ICML '22) (点击显示 bibtex) @inproceedings{kuan2022ood, title={Back to the Basics: Revisiting Out-of-Distribution Detection Baselines}, @@ -231,7 +236,7 @@ cleanlab is based on peer-reviewed research. Here are relevant papers to cite if
-
CROWDLAB for Data with Multiple Annotators (NeurIPS '22) (click to show bibtex) +
CROWDLAB for Data with Multiple Annotators (NeurIPS '22) (点击显示 bibtex) @inproceedings{goh2022crowdlab, title={CROWDLAB: Supervised learning to infer consensus labels and quality scores for data with multiple annotators}, @@ -242,7 +247,7 @@ cleanlab is based on peer-reviewed research. Here are relevant papers to cite if
-
ActiveLab: Active learning with data re-labeling (ICLR '23) (click to show bibtex) +
ActiveLab: Active learning with data re-labeling (ICLR '23) (点击显示 bibtex) @inproceedings{goh2023activelab, title={ActiveLab: Active Learning with Re-Labeling by Multiple Annotators}, @@ -253,7 +258,7 @@ cleanlab is based on peer-reviewed research. Here are relevant papers to cite if
-
Detecting Dataset Drift and Non-IID Sampling (ICML '23) (click to show bibtex) +
Detecting Dataset Drift and Non-IID Sampling (ICML '23) (点击显示 bibtex) @inproceedings{cummings2023drift, title={Detecting Dataset Drift and Non-IID Sampling via k-Nearest Neighbors}, @@ -264,23 +269,23 @@ cleanlab is based on peer-reviewed research. Here are relevant papers to cite if
-To understand/cite other cleanlab functionality not described above, check out our [Blog](https://cleanlab.ai/blog/learn). +要了解/引用上文未介绍的 cleanlab 其他功能,请查阅我们的 [Blog](https://cleanlab.ai/blog/learn). -## Other resources +## 其他资源 -- [Example Notebooks demonstrating practical applications of this package](https://github.com/cleanlab/examples) +- [展示本软件包实际应用的 Example Notebooks](https://github.com/cleanlab/examples) -- [Cleanlab Blog](https://cleanlab.ai/blog/learn) +- [Cleanlab 博客](https://cleanlab.ai/blog/learn) -- [Blog post: Introduction to Confident Learning](https://l7.curtisnorthcutt.com/confident-learning) +- [博客文章:Confident Learning 简介](https://l7.curtisnorthcutt.com/confident-learning) -- [NeurIPS 2021 paper: Pervasive Label Errors in Test Sets Destabilize Machine Learning Benchmarks](https://arxiv.org/abs/2103.14749) +- [NeurIPS 2021 论文:Pervasive Label Errors in Test Sets Destabilize Machine Learning Benchmarks](https://arxiv.org/abs/2103.14749) -- [Introduction to Data-centric AI (MIT IAP Course)](https://dcai.csail.mit.edu/) +- [数据-centric AI(Data-centric AI)简介(MIT IAP 课程)](https://dcai.csail.mit.edu/) -- [Release notes for past versions](https://github.com/cleanlab/cleanlab/releases) +- [过往版本的发布说明](https://github.com/cleanlab/cleanlab/releases) -**Interested in contributing?** See the [contributing guide](CONTRIBUTING.md), [development guide](DEVELOPMENT.md), and [ideas on useful contributions](https://github.com/cleanlab/cleanlab/wiki#ideas-for-contributing-to-cleanlab). +**有兴趣参与贡献?** 请参阅 [贡献指南](CONTRIBUTING.md)、[开发指南](DEVELOPMENT.md) 以及[实用贡献建议](https://github.com/cleanlab/cleanlab/wiki#ideas-for-contributing-to-cleanlab). -**Have questions?** Check out [our FAQ](https://docs.cleanlab.ai/stable/tutorials/faq.html) and [Github Issues](https://github.com/cleanlab/cleanlab/issues?q=is%3Aissue). +**有问题?** 请查看[我们的常见问题](https://docs.cleanlab.ai/stable/tutorials/faq.html) 和 [Github Issues](https://github.com/cleanlab/cleanlab/issues?q=is%3Aissue).