Automated machine learning
Part of a series on |
Machine learning and data mining |
---|
Automated machine learning (AutoML) is the process of automating the tasks of applying machine learning to real-world problems. AutoML potentially includes every stage from beginning with a raw dataset to building a machine learning model ready for deployment. AutoML was proposed as an artificial intelligence-based solution to the growing challenge of applying machine learning.[1][2] The high degree of automation in AutoML aims to allow non-experts to make use of machine learning models and techniques without requiring them to become experts in machine learning. Automating the process of applying machine learning end-to-end additionally offers the advantages of producing simpler solutions, faster creation of those solutions, and models that often outperform hand-designed models[citation needed]. Common techniques used in AutoML include hyperparameter optimization, meta-learning and neural architecture search.
Comparison to the standard approach
In a typical machine learning application, practitioners have a set of input data points to be used for training. The raw data may not be in a form that all algorithms can be applied to. To make the data amenable for machine learning, an expert may have to apply appropriate data pre-processing, feature engineering, feature extraction, and feature selection methods. After these steps, practitioners must then perform algorithm selection and hyperparameter optimization to maximize the predictive performance of their model. If deep learning is used, the architecture of the neural network must also be chosen by the machine learning expert.
Each of these steps may be challenging, resulting in significant hurdles to using machine learning. AutoML aims to simplify these steps for non-experts, and make the practice of machine learning more efficient.
The most difficult task to automate is data cleaning because 'anything' is possible in the raw data and its format.
Targets of automation
Automated machine learning can target various stages of the machine learning process.[2] Steps to automate are:
- Data preparation and ingestion (from raw data and miscellaneous formats)
- Column type detection; e.g., boolean, discrete numerical, continuous numerical, or text
- Column intent detection; e.g., target/label, stratification field, numerical feature, categorical text feature, or free text feature
- Task detection; e.g., binary classification, regression, clustering, or ranking
- Feature engineering
- Feature selection
- Feature extraction
- Meta-learning and transfer learning
- Detection and handling of skewed data and/or missing values
- Model selection - choosing which machine learning algorithm to use, often including multiple competing software implementations
- Ensembling - a form of consensus where using multiple models often gives better results than any single model[3]
- Hyperparameter optimization of the learning algorithm and featurization
- Pipeline selection under time, memory, and complexity constraints
- Selection of evaluation metrics and validation procedures
- Problem checking
- Leakage detection
- Misconfiguration detection
- Analysis of obtained results
- Creating user interfaces and visualizations
AutoML tools
As of 2022, some of the popular AutoML frameworks and tools include AutoGluon, AutoKeras, Auto-PyTorch, Auto-Sklearn, H2O AutoML, rminer, TPOT, TransmogrifAI[4] and PyCaret[5].
See also
References
- ^ Thornton C, Hutter F, Hoos HH, Leyton-Brown K (2013). Auto-WEKA: Combined Selection and Hyperparameter Optimization of Classification Algorithms. KDD '13 Proceedings of the 19th ACM SIGKDD international conference on Knowledge discovery and data mining. pp. 847–855.
- ^ a b Hutter F, Caruana R, Bardenet R, Bilenko M, Guyon I, Kegl B, and Larochelle H. "AutoML 2014 @ ICML". AutoML 2014 Workshop @ ICML. Retrieved 2018-03-28.
- ^ Erickson, Nick; Mueller, Jonas; Shirkov, Alexander; Zhang, Hang; Larroy, Pedro; Li, Mu; Smola, Alexander (2020-03-13). "AutoGluon-Tabular: Robust and Accurate AutoML for Structured Data". arXiv:2003.06505 [stat.ML].
- ^ http://repositorium.uminho.pt/bitstream/1822/74125/1/automl_ijcnn.pdf
- ^ https://iopscience.iop.org/article/10.1088/1742-6596/1828/1/012015
Further reading
- "Open Source AutoML Tools: AutoGluon, TransmogrifAI, Auto-sklearn, and NNI". Bizety. 2020-06-16.
- Ferreira, Luís, et al. "A comparison of AutoML tools for machine learning, deep learning and XGBoost." 2021 International Joint Conference on Neural Networks (IJCNN). IEEE, 2021. https://repositorium.sdum.uminho.pt/bitstream/1822/74125/1/automl_ijcnn.pdf