In the 2018 Hype Cycle for Emerging Technologies, Gartner classified Deep Learning or Deep Neural Networks as a transformational technology in its hype, among 1700 other emerging technologies. Today, in 2020, Gartner reclassifies Deep Learning as a matured technology in both the hype cycle for Data Science & Machine Learning and the hype cycle for Artificial Intelligence. Expansion of the cloud computing concept and minor and major cloud computing platforms were definitely major contributing factors to rocket this AI technology to this height.
What made Deep Learning the shift from On-premises to Cloud?
Time Vs. Computational Power is an inversely proportional relationship in on-premises machine learning and deep learning models. Therefore, it is unprofitable for AI-centric research institutes and AI and data analytics companies to invest exorbitantly for on-premises compute resources and for external computational power accelerators such as GPUs.
Moreover, on-premises resources lacked the elasticity to scale in and out on project-basis. An additional cost had to be borne for provisioning High performance I/O between the hardware and for copious volume of storage.
On the other hand, running an entire pipeline from cleaning data, performing feature engineering, training models, then deploying those models, and monitoring them for drift over time and retraining as necessary could be taken care of end-to-end on the cloud. Many cloud providers deliver dedicated machine learning platforms that cater to the whole machine learning lifecycle. These were the driving factors that forced Deep Learning Cloud Solutions to shift from On-premises infrastructure to the cloud.
How to choose the ideal cloud platform for your Deep Learning requirements?
There are several factors that you should consider before selecting a cloud provider for your deep learning project.
1. Mind the location of your data sets
If your data sets are bulk or you process big data, you do not need to ship the data halfway around the world to build the deep learning model, because extra distance means added latency. Therefore, the ideal case is to maintain your data on a high-speed network, similar to the network speed of the model-building software. Thus, it is beneficial if your model-building software and the data resides with the same cloud provider on the same availability zone.
2. Reap the benefit of web-based model building environments
It is beneficial if your data set and the model development environment are on the same cloud to minimize the latency on data movement.
3. Capability to scale-in and scale-out
The capability to access extra resources such as GPUs, FPGAs, and TPUs on the requirement basis by training jobs can shorten the data training periods.
4. Feasibility to automate feature engineering and AutoML features
If you are a non-expert or a newbie to the AI field, consider if your cloud provider could provide automatic feature engineering or AutoML on their cloud platform. In most cases, AutoML can outperform hand-designed models and can produce faster solutions.
5. Support Deep Learning Frameworks you use
TensorFlow, Keras, Caffe, PyTorch, and Microsoft Cognitive Toolkit are the top Deep Learning Frameworks considered in 2020. Most of the cloud providers support these external frameworks at least in one language and some cloud providers have their own collection of algorithms or tuned versions of the above frameworks. Therefore, explore the frameworks and the languages which the cloud provider offers to use within those frameworks before fixing upon a cloud platform.
6. Pre-trained models and tuned AI services
You can save both time and cost, if your cloud provider offers pre-trained models, tuned AI services such as language translation, text-to-speech, speech-to-text, etc. and Transfer Learning on the platform. But of course, you will have to consider their price model before investing in nice-to-have features.
7. Support monitoring and management of model deployments and experiments
A management console to compare and graph objective function values of experiments against test data sets and training data sets is a definite feature that can eliminate your manual workload. A cloud provider should support model deployment and monitoring of the baseline training data sets to retract models at the expiration of data validity.
Cloud Solutions for Deep Learning
Given below is a list of cloud providers that you can select as Deep Learning infrastructure or platform providers in 2020.
Machine Learning and Deep Learning specific cloud providers
Machine Learning specific cloud providers have narrowed down their platform specifically for AI, Machine Learning, and Deep Learning related infrastructure and services. Those cloud platforms are fine-tuned to address DL related issues and limitations in a more granular level than the general cloud providers.
- Deep Learning Studio (DLS)
- Colaboratory (Colab)
- GPU Eater
Final Thoughts for Deep Learning Cloud Solutions
On-premises Deep Learning infrastructure can offer great flexibility. But, on a huge upfront investment and spiking costs along the way; therefore, could be ideal for large AI and data analytics centered businesses.
Organizations that are on kick-start of the Deep Learning journey can benefit immensely on a cloud platform. You can lower the financial barrier ahead of DL infrastructure and can occupy enough time to refine processes and requirements to operate on large-scale (and switch later to on-premises based upon business growth) while continuing successful DL projects on the cloud.