What’s machine learning as a service or MLaaS?
Machine learning as a service (MLaaS) refers to a number of services that offer machine learning tools as a part of cloud computing services. The main benefit of this solution is that customers can get started with machine learning applications quickly without installing specific software or provisioning their own servers. All the actual computations are handled by the provider’s own data centers.
MLaaS providers offer services for data transformation, predictive analytics, data visualization, and advanced machine learning algorithms. Currently, the major MLaaS platforms suggest ready-made solutions for the majority of popular machine learning applications, including recommender systems, forecasting, image and video analysis, advanced text analytics, machine translation, automated transcription, speech generation, and conversational agents.
If you want to develop an ML model for solving a very specific task (e.g., analyzing the impact of potential drugs), MLaaS platforms can assist you in building, training, and deploying your own machine learning model. You can use TensorFlow, PyTorch or another framework of your choice. Efficient training, automated model tuning, one-click deployment, scalability – all these can be ensured by MLaaS providers.
Do you like this in-depth educational content on applied machine learning? Subscribe to our Enterprise AI mailing list to be alerted when we release new material.
How does it work?
The key to the success of MLaaS platforms lies in the synergy effect – all stages of the machine learning process, including data storage and management, model development and deployment, performance monitoring and support, are handled by one provider, ensuring maximum efficiency of the whole machine learning process.
The functionality and characteristics of different MLaaS platforms vary but usually, you’ll get a cloud environment, which you can use to prepare your data, train, test, deploy, and manage your machine learning models:
- Data management. MLaaS platforms allow you to store input data for the machine learning models in the cloud, use open datasets, and import data from other storage locations.
- Model development. Here, again, lots of options are available. First of all, you can (1) develop your model from scratch using any of the most popular frameworks (e.g., TensorFlow, PyTorch) and open-source Python packages (e.g., scikit-learn); (2) develop a model using AutoML solutions; (3) use out-of-the-box algorithms; (4) import models; (5) leverage pre-trained ML models; or (5) use plug-and-play AI components. Next, you can either write code or use a visual interface for model development. In the code-free environment, you can create automated machine learning experiments in an easy-to-use interface and perform drag-and-drop experimenting in the visual interface.
- Training ML models. When you use MLaaS, your model training is usually fully managed by a cloud provider. That implies that you don’t need to worry about the underlying infrastructure, computing resources or model scalability. The provider’s data centers handle all the computations and manage the underlying infrastructure so that the models can be easily scaled.
- Model deployment. MLaaS platforms usually fully manage the ML model deployment. Moreover, you can deploy ML models you’ve developed and trained elsewhere. MLaaS providers can handle:
- packaging and debugging models;
- validating and profiling models;
- converting and optimizing models;
- deploying models as web services in the cloud or locally, to IoT devices, for data analytics, and for inferencing.
- Performance monitoring. With MLaaS you also get support after model deployment. This support might include:
- monitoring ML applications for operational and other ML related issues;
- providing continuous feedback on the model performance;
- capturing an end-to-end audit trail of the machine learning lifecycle;
- technical support from the MLaaS provider.
The key players in the market offer solutions that go far beyond basic machine learning models like regression, classification, and clustering. Using machine learning as a service, you can detect anomalies, build a recommender system, and perform ranking. Additionally, the MLaaS providers offer high-level APIs, services with trained models under the hood that you can feed your data into and get results. The APIs from major MLaaS platforms cover:
- Speech and text preprocessing, including speech recognition, topic extraction, intention analysis, sentiment analysis, low-quality audio handling, and machine translation.
- Image analysis, including object detection, face detection, face recognition, inappropriate content detection, and written text recognition.
- Video analysis, including activity detection, facial and sentiment analysis, and person tracking.
What are the major MLaaS platforms?
There are four key players in the MLaaS market:
- Amazon Machine Learning
- Azure Machine Learning
- Google Cloud Machine Learning
- IBM Watson Machine Learning
The capabilities and main characteristics of these platforms vary, and you can find a great overview of these solutions and the services each of these vendors provides in the Comparing Machine Learning As A Service article. Make sure to read through this article if you are considering using MLaaS and want to choose the platform that will be the best fit for your ML projects.
If you are interested in pricing policies of major MLaaS platforms, please check our article, where we provide an overview of free and paid services of major cloud service providers.
Who can use MLaaS?
First of all, machine learning as a service can be suitable for both beginners and experienced ML engineers. Machine learning newbies can benefit from the code-free visual interface, pre-trained models, and ready-made AI services, while ML pros can leverage the code-based environment to develop machine learning models from scratch.
Thus, it comes as no surprise that MLaaS is already being used across various industries, including healthcare, finance, retail, manufacturing, transportation, telecom, and others. Furthermore, it has seen uses across different business processes, such as risk analytics, fraud detection, marketing, advertising, supply chain optimization, and inventory management optimization, among others.
MLaaS platforms: pros and cons
Machine learning as a service has a number of prominent benefits, such as fast and low-cost compute options, freedom from the burden of building in-house infrastructure from scratch, no need to invest heavily in storage facilities and computing power, and no need to hire expensive ML engineers and data scientists.
However, MLaaS platforms also have some important drawbacks that keep lots of companies away from using them. First of all, MLaaS solutions might not fit the specific needs of the company. For example, if the company deploys event-driven machine learning, it might need a specific data management framework to align online and offline data, and this is almost impossible with MLaaS. Next, when using ready-made solutions provided by MLaaS vendors, a company doesn’t develop its in-house expertise, resulting in a lack of strategic advantage. Finally, with MLaaS, you are heavily dependent on the external provider, which can change its product lists, pricing options, and product or service characteristics with a detrimental effect on the activities of your company.
The MLaaS platforms can be the best choice for freelance data scientists, startups, or companies where machine learning is not an essential part of their activities. Big companies, especially in the tech industry and with a heavy focus on machine learning, tend to build in-house ML infrastructure that will satisfy their specific needs and requirements.
Enjoy this article? Sign up for more updates on applied ML.
We’ll let you know when we release more technical education.