Automate your ML workflow with no code Machine Learning.
If you had only had 4 hours to train a model and put it into production to save the world, would you be writing code?
Obviously No, I would make the most of off-the-shelf automation tools like Azure AutoML, Apple CreateML, Google AutoML, H20 or Ludwig.
We will take a breif look on each of these options.
Apple’s Ecosystem
Apple may not be the first candidate that enters your mind when you think about Machine Learning tools space. Apple has rich UI to create basic machine learning model with click of a button.
CoreML - Core ML is an Apple framework to integrate machine learning models into your app.
There is also a Python package to convert models from third-party training libraries like TensorFlow and Keras.
Apple’s AutoML: CreateML
One of the core innovations with Apple’s ML Platform is how they expose power AutoML technology enclosed in an intuitive GUI. Apple Create ML lets you do the following things.
- Create Core ML Models
- Preview the model performance
- Train models on the Mac (taking advantage of their M1 chip stack)
- Use Training Control: i.e., pause, save and resume training
- Use eGPU (external GPUs
Read more about Apple's CreateML here
Google’s AutoML
There are several critical approaches to Computer Vision on the GCP platform (similar to other cloud platforms, the service names are different). These options appear in order of difficulty.
- Write machine learning code that trains a model
- Use Google AutoML Vision
- Download a pre-trained model from TensorFlow Hub or another location.
- Use the Vision AI API
Azure’s AutoML
There are two primary ways to access Azure AutoML. One is the console, and the other is programmatic access to AutoML Python SDK.
To get started doing AutoML on Azure, you need to launch an instance of Azure ML Studio and select the Automated ML option.
Next, create a dataset either by uploading it or using an open dataset.
Next, I spin up a classification job to predict the target feature in your dataset. Many different types of machine learning predictions are available, including numerical regression and time-series forecasting. You will need to set up storage and a cluster if you have not already done so.
Once jobs complete, you can also ask Azure ML Studio to “explain” how it got to its predictions. A machine learning system explains how a model comes up with forecasts via “explainability,” which is a critical upcoming capability of AutoML systems.
AWS AutoML
AWS also has many AutoML solutions. One of the earliest solutions includes a tool with a bad name, “Machine Learning,” that is no longer widely available but was an AutoML solution. Now the recommended solution is Sagemaker AutoPilot. You can view many examples of Sagemaker AutoPilot in actions from the official documentation.
Open Source AutoML Solutions
Ludwig
One of the more promising approaches to open-source AutoML is Ludwig AutoML. The advantage to open source is that a corporation does not control it!
You can find many additional excellent examples of Ludwig in their official documentation.
One of the more exciting aspects of Ludwig is that it is under active development. As part of the Linux Foundation, they recently released version 4. It adds many additional features like working with remote file systems and distributed out of memory tools like Dask and Ray. Finally, there is deep integration and growing for mlflow.
Honourable Mention
There is no shortage of open-source AutoML frameworks. Here are some additional frameworks to look at for both AutoML.
H2O AutoML: https://docs.h2o.ai/h2o/latest-stable/h2o-docs/automl.html
Auto-sklearn: https://github.com/automl/auto-sklearn
PyCaret: https://pycaret.org
AutoKeras: https://autokeras.com
What is exciting about these open-source frameworks is their ability to make complicated things possible and easy things automated.
Conclusion
A final takeaway is that there are many free or nearly free AutoML solutions. Just as developers worldwide use free or roughly free high-level tools like build servers and code editors to improve software, ML practitioners should use automation tools of all types to enhance their productivity.
That’s it for today, see you soon. :)