The meal was fantastic, the service was friendly and professional, the setting was cozy, and the company was engaging. As the evening ended, however, there was a slight hiccup as my credit card was declined. There was more than enough money in my account to cover the cost of the (very delicious) dinner, so what was going on? The issue, which was solved via a quick phone call to the bank, was that an algorithm dedicated to fraud detection determined that the transaction’s location was outside of my established pattern and temporarily prevented completion at the point of sale.
You can learn more about fraud detection by reading “5 Keys to Using AI and Machine Learning in Fraud Detection”.
My restaurant moment is an example of machine learning in action. My bank’s development team didn’t create software that stored a static listing of every place I might travel with an approve or deny setting; a fraud detection system ‘learned’ my spending and location patterns and dynamically intervened when I attempted an action that was outside of that pattern.
Machine learning is arguably the most successful implementation of the broad research effort known as artificial intelligence. In popular culture, this is represented by malicious robots and computer systems that take over the world. In real life, machine learning gives software the ability to modify actions based on various types of feedback instead of strict, programmatic rules. As simple as this may sound, it’s a very powerful innovation which increases the usefulness of software in exciting ways.
In this post, we’ll explore Microsoft Azure’s approach to machine learning which gives organizations of all sizes the ability to add dynamic capabilities to a variety of solutions. Before you continue reading this, we suggest you check out our post outlining The Benefits of Machine Learning in the Cloud. Machine Learning is a vast topic so instead of trying to ‘boil the ocean’ we’ll focus on how it is practiced on Azure using Azure Machine Learning Studio (more about that later).
But before diving in, let’s quote from David Chappell’s introduction, which is an excellent starting point for those of us who’re new to Machine Learning:
[Machine Learning] …applies statistical techniques to large amounts of data, looking for the best pattern to solve your problem. It then generates an implementation—code—that can recognize that pattern. This generated code is referred to as a model, and it can be called by applications that need to solve this problem. With fraud detection, for example, the calling application must provide the right information about a transaction, such as age, amount, where [a credit card] was issued, and where it’s being used. The model created through machine learning then returns an indication of whether this transaction is likely to be fraudulent.
Full at – David Chappell’s Introduction for Technical Professionals
Using Chappell’s introduction as a guide, let’s identify the key components of machine learning:
At a high-level, here’s the workflow:
- Ingestion of raw data (for example, information about credit card spending patterns) into a pre-processing system
- Application of pre-processing methods to data (making the data usable by the system by removing errors, duplicates, etc.)
- Presenting the prepared data to a learning algorithm
- Iteration to discover the best model (i.e., the model that produces the most accurate results and the fewest false positives)
- Selection of a candidate model
- Deployment of the model
- Exposure of the model via API to applications (such as the fraud detection engine)
Let’s visualize this:
Until very recently, each of these steps could only be performed by a data scientist and, the scalability and utility of the deployed solution were limited by the infrastructure an organization could devote to this complex series of storage and compute-intensive tasks. With Azure, it’s possible for individuals and organizations of all sizes to benefit from the power of machine learning. It’s also possible for IT professionals to enter the world of Machine Learning and rapidly add value. Azure Machine Learning Studio provides the platform for each step from data pre-processing, through the selection of the best model to the deployment of that model to the applications that consume it.
We’ll spend a bit more time with Machine Learning Studio later. First, let’s talk about Azure’s full portfolio of Machine Learning offerings:
Machine Learning on Microsoft Azure
Azure offers two Machine Learning solutions with different capabilities and advantages:
- Machine Learning Studio (for building ML solutions using a collaborative, drag and drop interface and pre-built models – ideal for those who’re new to ML)
- Machine Learning Service (a more open platform for creating ML solutions using Python and other open source tooling – ideal for those who are experienced building ML solutions and want to take advantage of public-cloud scalability)
Machine Learning Studio
Machine Learning Studio offers a no-coding-required environment for building ML experiments that, once verified as successful, can be connected to production applications via web service APIs.
“Azure Machine Learning Studio gives you an interactive, visual workspace to easily build, test, and iterate on a predictive analysis model. You drag-and-drop datasets and analysis modules onto an interactive canvas, connecting them together to form an experiment, which you run in Machine Learning Studio. To iterate on your model design, you edit the experiment, save a copy if desired, and run it again. When you’re ready, you can convert your training experiment to a predictive experiment, and then publish it as a web service so that your model can be accessed by others.”
Machine Learning Studio is a learning and solution platform where you can create ML experiments while taking advantage of excellent resources such as the Azure AI Gallery.
If you’re an absolute beginner with ML and Azure Machine Learning Studio, I suggest this tutorial, “Machine learning tutorial: Create your first data science experiment in Azure Machine Learning Studio“.
Another excellent resource is the Cloud Academy course, “Introduction to Azure Machine Learning”.
Azure Machine Learning Studio is a versatile platform but the no-code approach to ML can’t meet every need. To address a broader range of scenarios and provide a cloud-native, but familiar toolkit for architecting ML applications, Microsoft has created the Azure Machine Learning Service.
Azure Machine Learning Service
Azure Machine Learning Service is the platform for experienced builders of ML models who want the power of cloud-scale computing:
Azure Machine Learning service fully supports open-source technologies, so you can use tens of thousands of open-source Python packages with machine learning components such as TensorFlow and scikit-learn. Rich tools, such as Jupyter notebooks or the Visual Studio Code Tools for AI , make it easy to interactively explore data, transform it, and then develop and test models. Azure Machine Learning service also includes features that automate model generation and tuning to help you create models with ease, efficiency, and accuracy.
The key difference between Machine Learning Studio and Machine Learning Service is the latter’s support for industry standard open source tooling (such as TensorFlow) to create ML models. This gives an ML developer the ability to use familiar and tested methods while taking full advantage of the scalability of Azure. Models can be built on local machines and deployed to Azure (using containers, for example) once testing is complete. Note that models built using Azure Machine Learning Studio cannot be deployed or managed by Azure Machine Learning Service.
To get started with Azure Machine Learning Service, I suggest reviewing the tutorial “Train a classification model with automated machine learning in Azure Machine Learning service“.
Azure Machine Learning Studio: The Best Place for Beginners to Start
I’m assuming most people reading this post are new to ML (perhaps some of you have been tasked with skilling up to meet a business need). With that in mind, we’ll spend some time exploring Machine Learning Studio which, in my opinion, is the best entry point for ML on Azure – and among the best learning tools available – for those who aren’t data scientists or Machine Learning experts.
Microsoft provides many helpful tutorials designed to familiarize users with both Azure Machine Learning and the principles and best practices of Machine Learning as a field. I suggest using the “Simple Experiment” tutorial to perform a high-level overview of the Machine Learning Studio workflow.
The experiment introduces us to the data preparation and presentation steps we described earlier:
- Creating a model
- Training a model
- Scoring (I.e., refining), testing and deploying a model
Upon login, you’ll see this interface:
By selecting NEW at the bottom left-hand corner of the interface and choosing “Experiment”, you’ll be presented with options for creating a blank experiment or choosing from a library of existing sample models:
I chose “Blank Experiment”. Note the options shown on the left navigation pane:
In the simple experiment tutorial, a table of raw auto price data is dragged and dropped into the data ingestion interface and used to walk you through the process of building a usable model:
By right-clicking the raw data item, you can visualize the data:
To complete the walkthrough, and learn more about building, testing and deploying a model, I encourage you to finish the simple experiment tutorial.
To give you an idea of what a complete workflow looks like, here’s a sample dataset with auto import data:
Azure Machine Learning Studio and Machine Learning Service firmly place the Azure platform at the heart of this revolution.
If you’re interested in deepening your knowledge on Azure Machine Learning, then the Cloud Academy’s Using Azure AI Services to Build Customer Solutions Learning Path.
Watch this short video on how to build a recommendation engine in Azure, taken from the same learning path to get a sense of what you’ll learn.
If you enjoyed this post, you might also like:
New Content: AWS Data Analytics – Specialty Certification, Azure AI-900 Certification, Plus New Learning Paths, Courses, Labs, and More
This month our Content Team released two big certification Learning Paths: the AWS Certified Data Analytics - Speciality, and the Azure AI Fundamentals AI-900. In total, we released four new Learning Paths, 16 courses, 24 assessments, and 11 labs. New content on Cloud Academy At any ...
New Content: Azure DP-100 Certification, Alibaba Cloud Certified Associate Prep, 13 Security Labs, and Much More
This past month our Content Team served up a heaping spoonful of new and updated content. Not only did our experts release the brand new Azure DP-100 Certification Learning Path, but they also created 18 new hands-on labs — and so much more! New content on Cloud Academy At any time, y...
New Content: Alibaba, Azure AZ-303 and AZ-304, Site Reliability Engineering (SRE) Foundation, Python 3 Programming, 16 Hands-on Labs, and Much More
This month our Content Team did an amazing job at publishing and updating a ton of new content. Not only did our experts release the brand new AZ-303 and AZ-304 Certification Learning Paths, but they also created 16 new hands-on labs — and so much more! New content on Cloud Academy At...
New Content: AWS, Azure, Typescript, Java, Docker, 13 New Labs, and Much More
This month, our Content Team released a whopping 13 new labs in real cloud environments! If you haven't tried out our labs, you might not understand why we think that number is so impressive. Our labs are not “simulated” experiences — they are real cloud environments using accounts on A...
New Content: AZ-500 and AZ-400 Updates, 3 Google Professional Exam Preps, Practical ML Learning Path, C# Programming, and More
This month, our Content Team released tons of new content and labs in real cloud environments. Not only that, but we introduced our very first highly interactive "Office Hours" webinar. This webinar, Acing the AWS Solutions Architect Associate Certification, started with a quick overvie...
OWASP Top 10 Vulnerabilities
Over the last few years, more than 10,000 Open Web Application Security Project (OWASP) vulnerabilities have been reported into the Common Vulnerabilities and Exposures (CVE®) database each year. This is a list of common identifiers for publicly known cybersecurity vulnerabilities. Curr...
AI and Machine Learning: How They Are Changing the Content Industry
Machine learning falls under an array of artificial intelligence (AI) technologies that learn how to do certain tasks with the intention of automating them. These systems use historical data to predict future patterns and execute their tasks according to accurate data gathered. The more...
Cloud Academy Content Roadmap Updates
Welcome to our Q1 2020 roadmap. This is the content we plan to build over the next three months, between February 1 - and April 30, 2020. Let's look at some of our roadmap highlights. Atlassian Bamboo for CI/CD We had a lot of requests for practical guides on how to apply DevOps tool...
AWS Machine Learning Services
The speed at which machine learning (ML) is evolving within the cloud industry is exponentially growing, and public cloud providers such as AWS are releasing more and more services and feature updates to run in parallel with the trend and demand of this technology within organizations t...
What is Deep Learning and Does Your Enterprise Need It?
What is Deep Learning? The most frequent question asked by my students is: Do I need to learn deep learning? Beyond the buzzwords bounced back and forth in blog posts and news articles, deep learning is probably the most revolutionary technology of the last century. Discovered in the ...
4 Key Takeaways from Google Cloud Next ’19
Google Cloud Next ’19 was the flagship Google Cloud Platform developers conference, held in San Francisco’s Moscone Center. I was lucky enough to attend it with Cloud Academy, and got the chance to check out tons of breakout sessions and get great insight firsthand. Next ’19 was my...
How to Build an Intelligent Chatbot with Python and Dialogflow
Chatbots are a powerful example of artificial intelligence (AI) in use today. Just think about Google Assistant and how intelligent the platform became thanks to machine learning. But, what is a chatbot? How do you create a custom bot for your website? Which technologies can you use to ...