Want to build artificial intelligence (AI) into your app, but don’t want to have to collect your own data or train your own models? The cloud has a solution for you. Cloud-based AI services have emerged as one of the hottest service offerings from the major public clouds, which are eagerly inviting developers to make use of them. But while there are good reasons to use cloud AI in some cases, there are also some arguments to be made for avoiding it. In fact, there are so many reasons why AI in the cloud does not seem as beneficial as other types of cloud-based services that I sometimes suspect cloud AI will turn out to be a fad, or at least prove less popular than the cloud providers hope. Here’s why.
What Is Cloud AI?
When I talk about cloud-based artificial intelligence, I mean any type of cloud-based service that is designed to help developers integrate AI or machine learning into their applications.
Today, all of the major public cloud providers offer a suite of AI services and resources that developers can use to do everything from building speech and image recognition into their apps, to training custom machine-learning models, to parsing large data sets. (You might say that the latter functionality is really a form of data analytics, not AI, but the cloud providers are increasingly pitching it as an AI solution.)
Why Use Cloud AI?
Generally speaking, cloud AI offers the same types of advantages as other cloud-based services.
It eliminates the need to set up and manage your own infrastructure for hosting AI applications. It gives you instant access to pre-baked configurations, models and AI-relevant data curated by someone else, which is especially beneficial if your team lacks in-house AI expertise. You pay for it on a monthly basis instead of having to make large upfront investments, as you would if you built your own AI infrastructure from scratch.
You could say the same things about the benefits of most services that run in the cloud, as compared to their on-premises alternatives.
The Shortcomings of Cloud AI
Cloud artificial intelligence is also subject to many of the same drawbacks as most cloud services, like additional security challenges and potentially higher total cost of ownership.
Yet, cloud AI also has some drawbacks that you don’t face with most other types of cloud services, which is why I suspect cloud AI might turn out to be less of a big deal than some folks imagine.
1. Data privacy
AI depends on data--lots of data. Thus, when you do AI in the cloud, you need to move lots of data into the cloud.
Generally speaking, storing data in the cloud is not inherently problematic. It poses some additional security challenges, but they are usually easy enough to solve.
However, when it comes to AI applications, the data you need to upload to the cloud and pass through a cloud vendor's AI engine may be particularly sensitive. For example, if you are using a cloud-based image- or voice-recognition service to upload pictures or voice recordings of customers and identify individuals based on that data, you get into some especially sticky territory regarding privacy and compliance.
This is not to say that you can't safely upload data into the cloud for AI purposes, even if the data is highly sensitive. But it does make things extra complicated.
2. Speed and performance
AI's data-hungry nature poses a second challenge for cloud-based AI applications: Moving large volumes of data over the network takes a long time, and there is not much that cloud vendors or end users can do about it.
Edge computing is a partial solution, but it's not always practical to implement, especially for smaller-scale AI projects or applications.
Network roadblocks aren't a problem for all cloud AI use cases. If all of your data is "born" in the cloud, running it through AI models in the cloud makes sense. But for organizations that collect data from other locations and need to process it using AI technology, network bandwidth limitations could lead to poor performance. By extension, cloud AI's promise of delivering instantaneous, automated decisions will be undercut.
Most cloud-based services pose a risk of lock-in to one extent or another. However, the cloud AI services available today are highly vendor-specific--much more so than most other types of cloud services.
It’s easy enough to migrate an EC2 virtual server to Azure. But you’ll have to rewrite your application code if you want to switch from Azure Computer Vision to AWS Rekognition.
There's a chance this will change in the future, if cloud vendors decide to make their AI services more compatible with each other. But I wouldn't place a bet on that happening. For now, if you build an application that depends on a particular cloud AI service, you are probably going to find yourself dependent on that specific service and vendor for a long time.
4. Limited features
You can do some cool things with cloud AI services. But, today, the extent of AI functionality available from the major public cloud providers is rather limited.
Being able to categorize images using AI or translate speech to text is great. But it's not exactly earth-shattering technology. It's stuff that companies have been doing for decades using custom-built solutions; what has changed is that cloud AI now makes it easier to implement.
Thus, I suspect that many organizations looking to deploy advanced or sophisticated AI workloads in the cloud will find that the cloud AI services available are ill-suited to meet their needs. They will need to do a lot of custom coding to get those services to do what they want, which defeats one of the main purposes of using the cloud in the first place: convenience.
Cloud AI is a powerful new phenomenon, but it has clear limitations. My bet is that, while basic cloud AI services will gain significant followings, developers with more complex or large-scale AI needs will find that the cloud is not a good solution for them, despite all the hype currently surrounding AI and the cloud.