Automated machine learning (AutoML) is a whole new approach in machine learning where “parent” neural networks design “child” neural networks, taking humans out of the picture.
Using AutoML, even laypersons can train AI systems to perform any tasks without having to know machine learning.
Presently, Google, Microsoft and Amazon are trying to monetize AutoML with their B2B clients, but all the core research is available online for free. There are plenty of open-source frameworks that individuals can use in their machine learning applications.
History of AutoML
The concept of AutoML was first proposed in 2014 at a little-known workshop in the University of Freiburg, Germany. The organizers came with the idea of developing off-the-shelf machine learning methods that would not require any human experts.
In May 2017 Google adopted the term AutoML to describe a machine learning model with self-replicating capabilities. Google CEO Sundar Pichai’s vision was that ordinary developers should be able to design AI systems using AutoML, without wasting time or growing new skills.
The concept soon spread like wildfire, and we now have several companies developing their own AutoML frameworks.
Basic Concepts in AutoML
For automated tools to compete with machine learning experts, they should be able to replicate the algorithms and optimize hyper-parameters such as learning rates.
According to the original AutoML website at the University of Freiburg, the following toolkits help teach machines the intelligence to design their own versions.
- Sequential Model-Based Algorithm (SMAC): it uses predictive models to determine the important input variables. This helps in optimizing algorithm parameters.
- Auto-Sklearn: an out-of-the-box learning tool, Auto-Sklearn searches for the best machine learning datasets and utilizes past knowledge.
- Bayseian Optimization and Hyperband (BOHB): a deep learning tool, BOHB uses Bayseian techniques and bandit-based methods to optimize the hyper-parameters.
All three toolkits are available as GitHub repositories at AutoML websited. They can run from Python and Java and come with several features for data mining and data analysis.
Different Versions of AutoML
As discussed before, several companies have their own AutoML frameworks for commercial use. Rachel Thomas, a co-founder at Fast.ai, calls them “drag-and-drop” machine learning interfaces.
Google has one such drag-and-drop interface which they call Cloud AutoML. It solves various problems such as translation between languages and video intelligence. Google is currently using the former in its online translation service and the latter in content discovery for YouTube. Clearly, AutoML is very important to its platform offerings.
Moreover, Google’s AutoML offering is only available to businesses and you have to pay $20 per hour to avail these services. So, if you’re looking for AutoML to integrate with your machine learning project, don’t fall for Google’s marketing gimmicks. There are open-source alternatives out there.
Auto-Keras is one good example of a complete AutoML software library compatible with Python 3.6. As per the website, you can use a Pip install command in Python to install and manage this software package.
Refer to the documentation on above website to familiarize yourself with essential commands to run on Python. It also has the link to a Gitter community where you can find further support.
Applications of AutoML
AutoML finds plenty of use in IoT because it reduces the time to build a model.
- In smart transportation, AutoML can eliminate human involvement in traffic analysis, parking and self-driving cars.
- In healthcare and life sciences, AutoML can tackle the problems of patient management and design better drugs.
- Gamers can use AutoML in the background to gain insights and predictions about their best moves.
- Financial services can use AutoML to stay competitive because of its high-quality analytics.
AutoML is a game-changer in IoT because of how easily it can replace human involvement in ML projects. Clearly, it looks like a classic case of AI replacing humans. However, you will always need a developer at the forefront, and AutoML will help her or him relax while the program self-replicates.
Resources: to know more about AutoML, you should check out a few important research papers at the University of Freiburg website.
What are your views on automating machine intelligence? Do let us know in the comments.