1. Home
  2. Training Library
  3. Microsoft Azure
  4. Courses
  5. Designing Azure Solutions Using Platform Services

Choosing the Right A.I. Service

The course is part of these learning paths

Architecting Microsoft Azure Solutions
Start course
1h 13m

This course is focused on creating practical solutions using Azure technologies in areas such as AI, messaging, the Internet of Things, and video media. This will require familiarity with dozens of Azure solutions.

This course will take you through all of the relevant technologies and ensure you know which ones to pick to solve specific problems. This course is for developers, engineering managers, and cloud architects looking to get a better understanding of Azure services.

Whether your app deals with artificial intelligence, managing IoT devices, video media, or push notifications for smartphones, Azure has an answer for every use case. This course will help you get the most out of your Azure account by preparing you to make use of many different solutions.

Learning Objectives

  • Design solutions using Azure AI technologies

  • Design solutions for IoT applications using Azure technologies

  • Create a scalable messaging infrastructure using Azure messaging technologies

  • Design media solutions using Azure media technologies and file encoding

Intended Audience

  • People who want to become Azure cloud architects


  • General knowledge of IT architecture


Knowing which Azure AI service will fit your needs first requires understanding the problem you are trying to solve. While there is considerable overlap in what the different solutions can do, you can save yourself a lot of stress by picking the optimal product from the start.

Fortunately, some Azure AI services are quite narrow in focus. They should stand out if your needs are in that particular domain. The three I am referring to here are Azure Bot Service, Microsoft Genomics, and Azure Search. If you are looking to create a bot that interacts with users, work on sequencing genomes, or create a tool for searching heterogeneous data, then you should know where to turn.

The challenge comes when you have a more open-ended or nuanced problem. For example, let’s say your company has accumulated a lot of data over time and wants to see if there may be some value in analyzing it. This is a broad question that requires a deep understanding of both your business and the data itself. Which Azure data-related solution will offer the most value? Perhaps you could create some sort of facilities or office automation system using Azure Cognitive Services. Or perhaps you could make predictions about visitors to your site by using Machine Learning Studio. Or perhaps you really want to run large scale ETL operations on your data for some brand new business case or software service.

There is a more general point I am trying to make here with all of these hypothetical examples. Big data and machine learning are popular terms today. Often they can become solutions looking for a problem. In many cases, companies really have no practical need for investing the time and resources needed to make use of machine learning technologies, even in cases where you have relatively easy to use solutions in Microsoft Azure. So really, the first question to ask when trying to figure out which Azure AI solution to use is, “Do I actually even need to get into ML and big data analysis at all?” Smaller companies in particular can often get more value with less effort out of a few smart employees working with Excel.

But let’s say you have crossed that threshold and have a strong business case for digging into Azure’s more comprehensive solutions. The way to determine which tool is relevant is to first clarify your understanding of the problem you are trying to solve.

If you are in a very early stage where the work is exploratory meaning there is no clear desired outcome or deliverable, then what you want is something that can just give you insight into your data. This is not what Azure Machine Learning services or studio are really designed for - rather ML is more about using data to predict something. In this scenario, you do not even know what you want to predict. You would be better off using one of Azure’s many analytics services such as Data Catalog, Data Lake Analytics, Stream Analytics, or Azure Analysis Services.

Once you have narrowed down the problem to being of a specific type, now you can start thinking about Azure AI solutions. For example, if you know you want to make some kind of prediction by training an algorithm against data, then Azure Machine Learning is the way to go. The specific choice of whether or not to use Machine Learning Studio or not really depends on the state of your data and data science team. As Studio is a “drag and drop” system it is not going to be as flexible as Azure Machine Learning Services which gives you more control over how you prepare your data. If you are doing more resource-intensive training work on a more complex or long-range data science task, you should consider Azure Batch AI.

As implied early Azure Data Bricks is the best solution for ETL, especially if you have some familiarity with Spark. Lastly, Azure Cognitive services is for when you are ready to take the results of your analytical work and incorporate it into an application.

So to summarize, ask yourself what you are trying to do with your data. Do you want to make a prediction? Look at Machine Learning services. Do you want to transform data into some more usable form? Check out Data Bricks. Do you want to incorporate some understanding of your data into an app to make it more intelligent? Try Cognitive Services. And finally, if you are unsure of exactly what you want to do, first ask whether or not you need any AI service at all and consider using Azure Analytics Services to get a better understanding of your data.

So that about wraps it up for section 1. Congrats on making it this far. We’re going to continue on now with a few lessons on Azure and the Internet of Things. It should be a blast. See you there.

About the Author

Jonathan Bethune is a senior technical consultant working with several companies including TopTal, BCG, and Instaclustr. He is an experienced devops specialist, data engineer, and software developer. Jonathan has spent years mastering the art of system automation with a variety of different cloud providers and tools. Before he became an engineer, Jonathan was a musician and teacher in New York City. Jonathan is based in Tokyo where he continues to work in technology and write for various publications in his free time.