IBM Developer

Automate model building with AutoAI

Learn how regression and classification problems can be handled without any code

With the aim of creating AI for AI, IBM introduced a service on Watson Studio called AutoAI. AutoAI is a capability that automates machine learning tasks to ease the tasks of data scientists. It automatically prepares your data for modeling, chooses the best algorithm for your problem, and creates pipelines for the trained models, and it can be run in public clouds and in private clouds, including IBM Cloud Pak for Data.

Some of the tasks that AutoAI performs are:

  • Preparing the data for training (preprocessing): During automatic data preparation, or preprocessing, AutoAI analyzes the training data and prepares it for model selection and pipeline generation.
  • Automated model selection: The automated model selection algorithm in AutoAI uses the Data Allocation by using Upper Bounds strategy from the research paper "Selecting Near-Optimal Learners via Incremental Data Allocation". This approach sequentially allocates small subsets of training data among a large set of algorithms
  • Algorithms used for classification models: AutoAI uses several algorithms for model selection for classification problems.
  • Algorithms used for regression model: AutoAI uses several algorithms for model selection for regression problems.
  • Metrics by model type: It uses several metrics to measure the accuracy of pipelines during training and when scoring data.
  • Automated Feature Engineering: The automated feature engineering algorithm is based on Cognito, described in the research papers, "Cognito: Automated Feature Engineering for Supervised Learning and Feature Engineering for Predictive Modeling by using Reinforcement Learning." The system explores various feature construction choices in a hierarchical and nonexhaustive manner, while progressively maximizing the accuracy of the model through an exploration-exploitation strategy.
  • Hyperparameter optimization: The AutoAI approach optimizes the parameters of the best performing pipelines from the previous phases by exploring the parameter ranges of these pipelines by using a black box hyperparameter optimizer called RBFOpt.

Configuring data imputation

Data imputation is the means of replacing missing values in your data set with substituted values. If you enable imputation, you can specify how missing values are interpolated in your data. For more information on this topic, see Data imputation in AutoAI experiments.

Use incremental learning to train pipelines

You can use incremental learning algorithms to train an AutoAI experiment with batches of data. If you are training by using a large data source, the data is subsampled, so initial training takes place with a portion of the data. The training data limit depends on the environment size that is selected for the experiment. To learn more about the topic, see Using incremental learning to train with a large data set.

Evaluating AutoAI experiments for fairness

When you define an experiment and produce a machine learning model, you want to be sure that your results are reliable and unbiased. Bias in a machine learning model can result from the model learning the wrong lessons during training. A common way this happens is when insufficient data or poor data collection or management results in a poor outcome when the model generates predictions. It is important to evaluate an experiment for signs of bias to remediate them when necessary and build confidence in the model results.

AutoAI includes some tools and features to help you evaluate an experiment for bias so you can remediate the problems. Learn more at Applying fairness testing to AutoAI experiments.

Summary

This article provided an overview of AutoAI on Cloud Pak for Data, a capability that automates machine learning tasks to ease the tasks of data scientists. To learn more about AutoAI, see AutoAI Overview. To try out a tutorial and experiment with the tool, see AutoAI tutorial: Build a Binary Classification Model.