Automated machine learning, abbreviated as AutoML, is the computer process of building predictive AI models with little to no human intervention. The mission of AutoML is to create a system that removes a lot of the manual engineering work data scientists perform when building models. Using an iterative approach to find the ideal algorithm for each task – an AutoML system will allow organizations to use AI without deep knowledge of the underlying math and model architecture – thus substantially lowering the barrier to AI adoption.
In this guide, we’ll break down the basics of how automated machine learning works to demystify the process.
How Does Automated Machine Learning Work?
At a high level, the AutoML process begins with a historical dataset that will be the source of information used to train the model. This dataset contains several different input variables and usually one or two target variables or the outcomes that you are working to predict. The first thing most AutoML systems do is split your data into a train (80%) and test (20%) set.
From there, algorithms will automatically detect the type of data in each column and then encode it for training. The encoded training portion of the data is used to train a series of different models to find the architecture that has the best performance at predicting the outcome. The best model will then have its performance evaluated on the withheld test dataset – and its performance will be reported to the user.
As you can see, there are a number of different steps involved in automated machine learning. These steps vary from system to system, but the following are the most common steps for most AutoML systems.
Data Preparation and Ingestion
Data preparation involves gathering and cleaning your training dataset for the AutoML system. First, you need to make sure you have relevant data that is predictive of your outcome of interest. Weather data probably predicts umbrella sales, but might not do such a good job predicting which political party will win the next election.
Once your data set is selected, data preparation can include a number of techniques like missing value filling, scaling, deduplication, etc. Algorithms in machine learning can sometimes be finicky when it comes to input data, so data preparation ensures that the information and data used are of the ideal quality – which can help deliver the best results.
You should also make sure you have enough data – most autoML software can only be used if there is sufficient data made available for the model. How much data is enough? It depends heavily on the complexity of the prediction you are trying to make. A few training examples may be sufficient for an easy routing automation problem – scoring marketing leads likelihood to buy could require thousands of examples.
This first step in the AutoML process is data ingestion. Data is uploaded into the AutoML platform and converted into a format that is readable by the model training software. This conversion process is called encoding – and its objective is to capture the relative differences and similarities between different pieces of information.
Data engineering involves determining the way features are pulled and processed. It also involves data sampling and some shuffling processes. This step is where AutoML systems shine – by removing the manual steps. A subset of original data is selected and used for ongoing training, and a portion is withheld to use in validating the model performance. Data shuffling involves rearranging parts of original data into varying sequences before using them for training.
Selecting and Training the Right Model
Choosing the right model architecture is a very important part of machine learning. Certain model types offer improved accuracy for particular datasets and prediction tasks. There are so many different types of machine learning models with their own sets of parameters, such as decision trees, neural networks, deep learning network models, etc.
Most AutoML tools will select the ideal model for you – often by trying a wide range of possible models and picking the one that performs the best. This iterative process of selecting the right model is called neural architecture search.
Once a model is trained and its performance meets the needs of the problem, it is time to deploy it. This step can be very long-winded and difficult to master, especially for very large enterprise-level systems that need very intensive data engineering processes in place. AutoML systems can make the process easier by making it easier to deploy the model to various systems and environments. Most AutoML systems will offer a number of deployment options, from API to app deployment.
Once deployment is complete, it is important to periodically update your models. Updating is very important, as it ensures that your model has a fresh understanding of how the patterns in data are driving your predictions.
Take for example COVID-19. The virus caused massive and unexpected shifts in behavior – and as a result, many machine learning models broke. Retraining the models with post-covid data allows them to get back to adding value, and AutoML is one of the easiest ways to make that happen.
Today’s leading AutoML platforms require some knowledge of software and cloud computing to use, but an emerging group of no-code solutions is making it possible for anyone to leverage the power of machine learning.