A compact and still under development list of open-source and commercial Automated Machine Learning (autoML) tools, such as libraries and systems.
Startup or tech giants AutoML tools appear in a separated list (Companies Tools, see below). If they offer open-source tools, they appear in both lists.
Name | Language | License* | AutoML Tasks** | Short Description | Source |
---|---|---|---|---|---|
AdaNet | Python | Apache 2.0 | HPO/NAS | AdaNet is a lightweight TensorFlow-based framework for automatically learning high-quality models with minimal expert intervention | github |
Advisor | Python | Apache 2.0 | HPO | Advisor is the hyper parameters tuning system for black box optimization | github |
ATM | Python | MIT | MS/MT | Auto Tune Models - A multi-tenant, multi-data system for automated machine learning | github |
Auger A2ML | Python | Apache 2.0 | HPO | The A2ML project is a Python API and set of command line tools to automate Automated Machine Learning tools from multiple vendors | link |
AutoDL-Projects | Python | MIT | HPO/NAS | Automated Deep Learning Projects (AutoDL-Projects) is an open source, lightweight, but useful project for everyone | github |
Auto-DL | Python/GUI | GPL-v3 | Model Creation | Auto-DL is just DL but without code. | github |
AutoFolio | Python | GPL-v2 | HPO | AutoFolio uses algorithm configuration to optimize the performance of algorithm selection systems by determining the best selection approach and its hyperparameters. | bitbucket |
AutoGL | Python | Apache 2.0 | FE/MS/NAS/HPO/ME | An autoML framework & toolkit for machine learning on graphs | github |
automl-gs | Python | MIT | automl-gs is an AutoML tool which offers a zero code/model definition interface to getting an optimized model and data transformation pipeline in multiple popular ML/DL frameworks | github | |
auto_ml | Python | MIT | Automated machine learning for analytics & production | github | |
auto-sklearn | Python | BSD-3-Clause | HPO/NAS | auto-sklearn is an automated machine learning toolkit and a drop-in replacement for a scikit-learn estimator | github |
AutoGluon | Python | Apache 2.0 | HPO/MS | AutoGluon enables easy-to-use and easy-to-extend AutoML with a focus on automated stack ensembling, deep learning, and real-world applications spanning text, image, and tabular data. | github |
Auto-Keras | Python | MIT | HPO/MS/NAS | AutoKeras: An AutoML system based on Keras | github |
Auto-PyTorch | Python | Apache 2.0 | HPO/MS/NAS | While early AutoML frameworks focused on optimizing traditional ML pipelines and their hyperparameters, another trend in AutoML is to focus on neural architecture search | github |
AutoTS | Python | MIT | Time Series Forecast | AutoTS is a time series package for Python designed for rapidly deploying high-accuracy forecasts at scale | github |
Auto-ViML | Python | Apache 2.0 | HPO/NAS | Automatically Build Variant Interpretable ML models fast | github |
aw_nas | Python | MIT | NAS | aw_nas: A Modularized and Extensible NAS Framework | github |
BayesianOptimization | Python | MIT | HPO | Pure Python implementation of bayesian global optimization with gaussian processes | github |
claspfolio | Python | GPL-v2 | HPO | claspfolio is a portfolio solver for ASP that makes use of machine-learning techniques for performing algorithm selection, choosing among different configurations of clasp | link |
Compose | Python | BSD-3-clause | Compose is a machine learning tool for automated prediction engineering | github | |
Cooka | Python | Apache 2.0 | HPO/MS/NAS | Cooka is a lightweight and visualization toolkit to manage datasets and design model learning experiments through web UI | github |
DARTS | Python | MIT | Differentiable Architecture Search | DARTS: Differentiable Architecture Search | github |
DeepTables | Python | Apache 2.0 | HPO/MS/NAS | DDeepTables(DT) is a easy-to-use toolkit that enables deep learning to unleash great power on tabular data | github |
determined | Python | Apache 2.0 | HPO/MS | Determined: Deep Learning Training Platform | github |
devol | Python | MIT | DEvol (DeepEvolution) is a basic proof of concept for genetic architecture search in Keras | github | |
EvalML | Python | BSD-3-clause | EvalML is an AutoML library which builds, optimizes, and evaluates machine learning pipelines using domain-specific objective functions | github | |
FAR-HO | Python | MIT | Gradient-based hyperparameter optimization and meta-learning package based on TensorFlow | github | |
Featuretools | Python | BSD-3-clause | FE | Featuretools is a python library for automated feature engineering | github |
FLAML | Python | MIT | HPO | FLAML is a lightweight Python library that finds accurate machine learning models automatically, efficiently and economically | github |
FlexFolio | Python | GPL-v2 | HPO | flexfolio is a modular and open solver architecture that integrates several different portfolio-based algorithm selection approaches and techniques | bitbucket |
GAMA | Python | Apache 2.0 | Machine-learning pipeline optimization through asynchronous evaluation based genetic programming | github | |
Hugging Face | Python | Apache 2.0 | "Build, train and deploy state of the art models powered by the reference open source in machine learning" | github | |
HyperBand | Python | BSD-2-clause | Code for tuning hyperparams with Hyperband, adapted from Hyperband: A Novel Bandit-Based Approach to Hyperparameter Optimization | github | |
HpBandSter | Python | BSD-2-clause | a distributed Hyperband implementation on Steroids | github | |
HyperGBM | Python | Apache 2.0 | HPO | A full pipeline AutoML tool integrated various GBM models | pypi |
HyperKeras | Python | Apache 2.0 | HPO/MS/NAS | An AutoDL tool based on Tensorflow and Keras | github |
Hypernets | Python | Apache 2.0 | HPO/MS/NAS | Hypernets: A General Automated Machine Learning Framework | github |
Hyperopt | Python | Open Source | HPO | Hyperopt is a Python library for serial and parallel optimization over awkward search spaces, which may include real-valued, discrete, and conditional dimensions | github |
Hyperopt-sklearn | Python | Open Source | HPO | Hyperopt-sklearn is Hyperopt-based model selection among machine learning algorithms in scikit-learn | github |
igel | Python | MIT | HPO/MS | A delightful machine learning tool that allows you to train/fit, test and use models without writing code | github |
Kaggler | Python | MIT | HPO/MS | Kaggler is a Python package for lightweight online machine learning algorithms and utility functions for ETL and data analysis | github |
KerasTuner | Python | Apache 2.0 | HPO | KerasTuner is an easy-to-use, scalable hyperparameter optimization framework that solves the pain points of hyperparameter search | github |
Ludwig | Python | Apache 2.0 | HPO | Ludwig is a data-centric deep learning framework that allows users to train and test deep learning models by specifying a declarative configuration tht matches the schema of the data | github |
MindsDB | Python | Apache 2.0 | MindsDB is a predictive platform that makes databases intelligent and machine learning easy to use | github | |
MLBox | Python | BSD-3-Clause | HPO | Accurate hyper-parameter optimization in high-dimensional space with support for distributed computing. | github |
mljar | Python | MIT | HPO | Python package for AutoML on Tabular Data with Feature Engineering, Hyper-Parameters Tuning, Explanations and Automatic Documentation | github |
Microsoft NNI | Python | MIT | FE/NAS/HPO/MS | NNI (Neural Network Intelligence) is a lightweight but powerful toolkit to help users automate Feature Engineering, Neural Architecture Search, Hyperparameter Tuning and Model Compression. | github |
NASLib | Python | Apache 2.0 | NAS | NASLib is a modular and flexible framework created with the aim of providing a common codebase to the community to facilitate research on Neural Architecture Search | github |
Oboe | Python | BSD-3-Clause | HPO | An AutoML pipeline selection system to quickly select a promising pipeline for a new dataset | github |
Optunity | Python with API for R and MATLAB | MIT | HPO | Optunity is a library containing various optimizers for hyperparameter tuning | github |
Optuna | Python | MIT | HPO | An open source hyperparameter optimization framework to automate hyperparameter search | github |
Orange | Python | GPL-v3 | HPO | A data mining and visualization toolbox for novice and expert alike. To explore data with Orange, one requires no programming or in-depth mathematical knowledge | github |
PyCaret | Python | MIT | HPO/MS/MT/ME | PyCaret is an open-source, low-code machine learning library in Python that automates machine learning workflows | github |
Prophet | Python | MIT | Time Series Forecast | Prophet is a procedure for forecasting time series data based on an additive model where non-linear trends are fit with yearly, weekly, and daily seasonality, plus holiday effects | github |
RoBO | Python | BSD-3-Clause | RoBO is a flexible framework for robust Bayesian Optimization | github | |
Scikit-Optimize | Python | Open Source | HPO | A simple and efficient library to minimize (very) expensive and noisy black-box functions. It implements several methods for sequential model-based optimization. | github |
SMAC3 | Python | BSD-3-Clause | HPO | Sequential Model Algorithm Configuration (SMAC) is a tool for algorithm configuration to optimize the parameters of arbitrary algorithms, including hyperparameter optimization of Machine Learning algorithms | github |
TPOT | Python | GPL-v3 | HPO/MS/NAS | TPOT is a Python Automated Machine Learning tool that optimizes machine learning pipelines using genetic programming | github |
Xcessiv | Python | Apache 2.0 | A web-based application for quick, scalable, and automated hyper-parameter tuning and stacked ensembling in Python | github | |
ZazuML | Python | MIT | MS/HPO/AS | This is an easy to use open-source AutoML framework for object detection | github |
ZenML | Python | Apache 2.0 | MLOps Workflow | ZenML is an extensible, open-source MLOps framework to create production-ready machine learning pipelines | github |
Auto-WEKA | Java | GPL-v3 | Auto-WEKA is Automated model selection and hyper-parameter tuning for Weka models | github | |
H2O AutoML | Java with Python, Scala & R APIs and web GUI | Apache 2.0 | Automated: data prep, hyperparameter tuning, random grid search and stacked ensembles in a distributed ML platform | github | |
Advisor | Julia | MIT | AutoMLPipeline (AMLP) is a package that makes it trivial to create complex ML pipeline structures using simple expressions | github | |
TransmogrifAI | Scala | GPL-v3 | AutoML library written in Scala that runs on top of Apache Spark. It was developed with a focus on accelerating machine learning developer productivity through machine learning automation | github | |
BayesOpt | C++ | GPL-v3 | BayesOpt is an efficient implementation of the Bayesian optimization methodology for nonlinear optimization, experimental design and hyperparameter tunning | github | |
Tangram | MIT | Tangram is the all-in-one machine learning toolkit for programmers | github |
Name | Language | License* | AutoML Tasks** | Short Description | Source |
---|---|---|---|---|---|
Aible | - | Commercial | "Aible is the Only ROI Optimized Auto Machine Learning platform that Delivers Real Business Impact Through Seamless Collaboration." | link | |
Akkio | - | Commercial | NLP Tasks | "Grow your business with data-driven decisions. Go from data to AI in 10 minutes, no code or data science skills required." | link |
Amazon Lex | Python | Commercial | NLP Tasks | "Automatically build machine learning models with speed and scale" | link |
Auger.AI | - | Commercial | "Auger.AI is the most accurate AutoML platform. Auger’s patented Bayesian optimization-based search of algorithm/hyperparameter combinations builds more accurate predictive models faster." | link | |
Azure AutoML | Python | Commercial | NLP Tasks | "Easily add AI that understands intent, maintains context, and automates simple tasks across many languages" | link |
bigml | - | Commercial | HPO | "Rapidly bring your predictive modeling tasks to production through effective automation. BigML turns the difficult, time-consuming work of hand-tuning models or executing complex workflows into one-click menu options or single API calls" | link |
clarifai | - | Commercial | HPO | "Clarifai enables developers, data scientists, and machine learning engineers as well as non-technical users, to automatically build scalable machine learning models." | link |
compellon | - | Commercial | "Compellon was built for business experts so they can solve business problems without the need for technical knowledge." | link | |
DataRobot | Python | Commercial | "DataRobot’s Automated Machine Learning (AutoML) solution empowers AI Creators at many organizations to apply their domain expertise and deliver best-in-class models without sacrificing time and trust" | link | |
dataiku | Python | Commercial | "Automating the model training process using the best practice techniques combined with built-in guardrails allows business analysts to build and compare multiple production-ready models. Dataiku AutoML uses leading algorithms and frameworks like Scikit-Learn and XGBoost to find the best modeling results in an easy to use interface for users across the business." | link | |
DMway | - | Commercial | "Meet the practical solution that allows anyone in the organization to create valuable predictive analytics and machine learning algorithms, without the complexity of data science." | link | |
dotData | - | Commercial | "dotData Enterprise is an enterprise-grade AI automation platform. It streamlines Automated Feature Engineering and Automated Machine Learning technologies and offers no-code end-to-end automation. BI & Analytics teams can leverage dotData Enterprise to build predictive models in days to make dashboards predictive and actionable." | link | |
B2Metric | - | Commercial | HPO/MS | "B2Metric automates data cleaning, feature engineering and model selection process with supervised, unsupervised, semi-supervised algorithms." | link |
enhencer | - | Commercial | "Predict and monitor the most valuable visitors according to your business with a self-learning dynamic AI-Engine." | link | |
Google Vertex AI (AutoML) | Python | Commercial | "Train high-quality custom machine learning models with minimal effort and machine learning expertise" | link | |
JADBio | Python | Commercial | "JADBio is a state-of-the-art automated Machine Learning Platform, designed for Life Scientists, enabling them to effortlessly make new discoveries and extract knowledge from publicly available or own-study data, without the need for coding" | link | |
H2O.ai | Java with Python, Scala & R APIs and web GUI | Commercial | "H2O AutoML can be used for automating the machine learning workflow, which includes automatic training and tuning of many models within a user-specified time-limit." | link | |
IBM | - | Commercial | "Build and scale trusted AI on any cloud. Automate the AI lifecycle for ModelOps." | link | |
Kortical | - | Commercial | "Kortical’s competition crushing, cloud scale, distributed AutoML will start finding the best machine learning solution for your dataset." | link | |
MateLabs | Python | Commercial | "Mateverse is our home grown AutoML platform to create scalable & highly optimized ML Solutions rapidly . Our AutoML tech is 100x faster and extremely low touch needing no manual intervention" | link | |
MLJAR Studio | Python | Commercial | "MLJAR Studio is a desktop application. It allows you to create Python notebooks with no-code graphical interface." | link | |
Nyckel | Python | Commercial | NLP Tasks | "The lightning fast machine learning platform for developers" | link |
oneclick.ai | Python | Commercial | "Our neural network architecture search algorithm will find the optimal model for extracting insights from your data" | link | |
Prevision.io | - | Commercial | "Prevision.io brings powerful AI management capabilities to data science users so more AI projects make it into production and stay in production." | link | |
RapidMiner | Commercial | "Create predictive models in 5 clicks using automated machine learning and data science best practices" | link | ||
TAZI.ai | Commercial | "TAZI’s AutoML platform is designed with the user in mind. Major ML techniques that need several lines of coding are now one click away instead. We call this our One-Click Philosophy, all functionalities are designed to be one click away for the user." | link | ||
TIMi Modeler | Python, R, JavaScript | Commercial | "Using Modeler is the guarantee to see your models leave the “data lab” and go into production, in one drag & drop." | link | |
Splunk | Commercial | "Create predictive models in 5 clicks using automated machine learning and data science best practices" | link | ||
Xpanse AI | Commercial | "Automated Data Science platform delivering Predictive Models from complex databases in minutes." | link |
- We have used TPOT as a final meta-learner step to blend the classification/regression outputs of many MLPs: https://arxiv.org/pdf/1808.07069.pdf
- We compared the performance of TPOT, Auto-Keras, Auto-PyTorch and auto-sklearn vs step-by-step creation of some common algorithms: https://arxiv.org/pdf/2001.08118.pdf
- We have used TPOT as the ML main tool in a supervised project to unveil some galaxies properties: https://arxiv.org/pdf/2111.01185.pdf
- We have also combined some AutoML tools such as Pycaret/TPOT and Auto-Keras/TPOT to achieve improved performance.
[1] https://github.com/theainerd/automated-machine-learning
[2] https://analyticsindiamag.com/10-popular-automl-tools-developers-can-use/
[3] https://www.automl.org/automl/hpo-packages/
[4] https://www.linkedin.com/pulse/top-10-automated-machine-learningauto-ml-tools-used-2020-2021-sahu/
[6] https://research.aimultiple.com/auto-ml-software/
[7] https://aimultiple.com/automl-software
[8] https://awesomeopensource.com/projects/automl
*For a concise license explanation check: https://www.whitesourcesoftware.com/resources/blog/open-source-licenses-explained/
** AutoML Task description:
NAS - Neural Architecture Search;
HPO - HyperParameter Otimization;
FE - Feature Engineering;
MS - Model Selection;
MT - Model Tuning;
ME - Model Ensemble;
AS - Augmentation Search;
MC - Model Creation.