Awesome open data-centric AI
Open source tooling for data-centric AI on unstructured data
Data-centric AI (DCAI) is a development paradigm for ML-based solutions. The term was coined by Andrew Ng who gave the following definition:
Data-centric AI is the practice of systematically engineering the data used to build AI systems.
At Renumics , we believe DCAI is an important puzzle piece for building real-world AI systems that generate value. We like the following definition:
Data-centric AI means to improve training datasets systematically and iteratively by leveraging information from trained ML models.
Tools that can be efficiently used in day-to-day applications are the most important ingredient for the DCAI paradigm. This curated link collection is intended to help you discover useful open source tools for your data-centric AI workflows.
We include useful tools that have an open-source license and are actively maintained in this collection. All tools mentioned are useful for building DCAI workflows on unstructured data (e.g. images, audio, video, time-series, text).
We also collect workflow snippets into a data-centric AI playbook that show how typical tasks can be solved with open source tooling.
In order to keep a useful focus and to prevent duplicate work, we exclude some topics from this list such as tooling for tabular data, dedicated labeling tools, MLOps tooling as well as research papers. Please check out the further reading section to find awesome lists for these topics.
Do you think something is missing? Please help contribute to this list by contacting us or adding a pull request.
Logo
Name
Description
Popularity
License
Data version control (DVC)
Data Version Control or DVC is a command line tool and VS Code Extension to help you develop reproducible machine learning projects.
deeplake
Data Lake for Deep Learning. Build, manage, query, version, & visualize datasets.
Pachyderm
Pachyderm – Automate data transformations with data versioning and lineage.
Delta Lake
An open-source storage framework that enables building a Lakehouse architecture.
lakeFS
lakeFS is an open-source tool that transforms your object storage into a Git-like repository.
Embeddings and pre-trained models
Logo
Name
Description
Popularity
License
towhee
Towhee is a framework that is dedicated to making neural data processing pipelines simple and fast.
Tensorflow Hub
TensorFlow Hub is a repository of reusable assets for machine learning with TensorFlow.
Huggingface transformers
State-of-the-art Machine Learning for Pytorch, TensorFlow, and JAX.
Lightly
Lightly is a computer vision framework for self-supervised learning.
Visualization and Interaction
Logo
Name
Description
Popularity
License
Renumics Spotlight
Curation tool for unstructured data that connects your stack to the data-centric AI ecosystem.
FiftyOne
The open-source tool for building high-quality datasets and computer vision models.
refinery
The data scientist's open-source choice to scale, assess and maintain natural language data.
Argilla
Argilla helps domain experts and data teams to build better NLP datasets in less time.
Xtreme1
Xtreme1 is the world's first open-source platform for multisensory training data.
Holmes Extractor
Holmes supports a number of use cases involving information extraction from English and German texts.
YData Profiling
YData Profiling is a python package to perform Exploratory Data Analysis (EDA) for tabular and time-series data.
Outlier and noise detection
Logo
Name
Description
Popularity
License
Cleanlab
Cleanlab facilitates machine learning with messy, real-world data by providing clean labels for robust training and flagging errors in your data.
PyOD
PyOD
A Comprehensive and Scalable Python Library for Outlier Detection (Anomaly Detection)
TODS
An full-stack automated time-series outlier detection system.
Alibi Detect
Algorithms for outlier, adversarial and drift detection.
Logo
Name
Description
Popularity
License
SHAP
A game theoretic approach to explain the output of any machine learning model.
Alibi
Alibi is an open source Python library aimed at machine learning model inspection and interpretation.
LIME
LIME
Explaining the predictions of any machine learning classifier.
Captum
Model interpretability and understanding for PyTorch.
Logo
Name
Description
Popularity
License
modAL
A modular active learning framework for Python.
Bayesian Active Learning (Baal)
Library to enable Bayesian active learning in your research or labeling work.
Uncertainty quantification
Logo
Name
Description
Popularity
License
Uncertainty Toolbox
A Python toolbox for predictive uncertainty quantification, calibration, metrics, and visualization.
MAPIE
A scikit-learn-compatible module for estimating prediction intervals.
Logo
Name
Description
Popularity
License
AIF360
The AI Fairness 360 toolkit helps to detect and mitigate bias in machine learning models throughout the AI application lifecycle.
Fairlearn
A Python package to assess and improve fairness of machine learning models.
Drift Detection and Monitoring
Logo
Name
Description
Popularity
License
Arize-Phoenix
Arize-Phoenix is a Python library for ML observability (monitoring + root-cause analysis) for tabular, CV, NLP, and LLM models.
Deepchecks
Deepchecks is a Python package for comprehensively validating your machine learning models and data with minimal effort.
Evidently
An open-source framework to evaluate, test and monitor ML models in production.
Frouros
Frouros is an open source Python library for drift detection in machine learning systems.
Augmentation and synthetic data
Logo
Name
Description
Popularity
License
Albumentations
Fast image augmentation library and an easy-to-use wrapper around other libraries.
Gretel Synthetics
Synthetic data generators for structured and unstructured text, featuring differentially private learning.
SDV
Synthetic Data Generation for tabular, relational and time series data.
YData Synthetic
YData Synthetic is a python package to generate synthetic tabular and time-series data by leveraging state-of-the-art generative models.
Logo
Name
Description
Popularity
License
CleverHans
An adversarial example library for constructing attacks, building defenses, and benchmarking both.
Adversarial Robustness Toolbox
Python Library for Machine Learning Security - Evasion, Poisoning, Extraction, Inference - Red and Blue Teams.
Foolbox
Foolbox is a Python library that lets you easily run adversarial attacks against machine learning models like deep neural networks.
🏀 Data-centric AI playbook
Exploratory data analysis (EDA)
Name
Data type
Description
Notebook
Understand distributions
image
Use the Huggingface transformers library to compute image embeddings and explore the dataset based on the similarity map and additional metdata.
Name
Data type
Description
Notebook
Detect duplicates
agnostic
Use the Annoy library to detect nearest neighbors in the embedding space and inspect data points that are duplicates / near duplicates.
Detect outliers
agnostic
Use the Cleanlab library to compute outlier scores based on model output (embeddings, probabilities) and inspect outlier candidates.
Detect image issues
image
Use the Cleanvision library to extrapact typical image issues (brightness, blurr, aspect ratio, SNR and duplicates) and identify critical segments through manual inspection.
Name
Data type
Description
Notebook
Find label inconsistencies
agnostic
Use the Cleanlab library to compute label error flags based on model probabilities and manually inspect critical data segments.
Name
Data type
Description
Notebook
Detect leakage
agnostic
Use nearest neighbor distances to identify candidates for data leakage and manual inspect them
Name
Data type
Description
Notebook
Inspect decision boundaries
agnostic
Compute a decision boundary score based on certainty ratios and inspect the results in a scatter plot.
Name
Data type
Description
Notebook
Detect data drift
agnostic
Compute the cosine distance of the k-nearest neighbor in the embedding space as the drift distance and inspect critical segments.
In order to keep a useful focus and to prevent duplicate work, we excluded some topics from this list. Read more about them here:
DCAI tools for tabular data. There is an awesome list for that maintained by the Ydata team .
Labeling tools. Although labeling is part of the DCAI workflow, we refer to the awesome list of the ZenML team on that topic.
MLOps tooling. We exclude all topics that are clearly out of the DCAI scope and refer to established MLOps awesome lists for these tools.
Research papers. We focus on industrial-ready open source tooling, check out this list for a research-oriented view on DCAI.