Automated machine learning can target various stages of the machine learning process. 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 •
Hyperparameter optimization of the learning algorithm and featurization •
Neural architecture search • 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 == Challenges and Limitations ==