Using the Designer
The course is part of these learning paths
Machine learning is a notoriously complex subject that usually requires a great deal of advanced math and software development skills. That’s why it’s so amazing that Azure Machine Learning lets you train and deploy machine learning models without any coding, using a drag-and-drop interface. With this web-based software, you can create applications for predicting everything from customer churn rates to image classifications to compelling product recommendations.
In this course, you will learn the basic concepts of machine learning and then follow hands-on examples of choosing an algorithm, running data through a model, and deploying a trained model as a predictive web service.
- Create an Azure Machine Learning workspace
- Train a machine learning model using the drag-and-drop interface
- Deploy a trained model to make predictions based on new data
- Anyone who is interested in machine learning
- General technical knowledge
- A Microsoft Azure account is recommended (sign up for free trial at https://azure.microsoft.com/free if you don’t have an account)
The GitHub repository for this course is at https://github.com/cloudacademy/azureml-intro.
I hope you enjoyed learning about Azure Machine Learning. Let’s do a quick review of what you learned.
Machine learning is the process of feeding lots of real-world data into a program that tries to make generalizations about the data. It then uses these generalizations to make predictions when it’s given new data. A label is the “answer” that a machine learning model uses to test the accuracy of a given prediction. The Coefficient of Determination, or R squared, is one way to measure accuracy. It’s always a number between 0 and 1. A 1 means that the model’s predictions perfectly fit the data.
Azure Machine Learning supports three types of algorithms: regression, classification, and clustering. Regression is used when you want to predict a number. Classification is used when you want to classify data into two or more categories. Clustering is used to find patterns in unlabeled data.
An Azure Machine Learning workspace is a place where we can put everything related to a machine learning project. If you want to use the studio, which includes the drag-and-drop interface, then you have to choose the Enterprise edition for the workspace.
You build a machine learning experiment in the studio by connecting modules into a pipeline that data flows through. Some examples of modules are Dataset, Clean Missing Data, Linear Regression Algorithm, Split Data, Train Model, Score Model, and Evaluate Model.
Overfitting occurs when a model matches training data so closely that it doesn’t generalize well to other data. At a minimum, you should divide your data into training and test datasets, and then check your model’s accuracy against the test dataset.
We covered some of the basic pre-processing steps that are often necessary to prepare your data for use with a machine learning model. For missing values, you should experiment with different methods of handling them, such as removing rows where they occur or replacing them with a value.
When you deploy a trained model as a web service, Azure ML creates an inference pipeline. You have a choice of creating either a real-time inference pipeline or a batch inference pipeline. With a real-time pipeline, you submit a new row of data, and it’ll respond with a prediction in real-time. With a batch pipeline, you can submit lots of new rows of data, and it’ll take a while to process them, but it’ll return the predictions for all of them at the same time.
An Azure Machine Learning datastore contains the connection information to a datastore in Azure Storage or any of the other supported Azure data services. An Azure ML dataset is a pointer to a specific file in a datastore or other data source.
Using an Azure ML dataset allows you to create multiple versions of the same dataset. It also allows you to monitor for data drift. If the patterns in new data start to drift away from the patterns in the data that was used to train a model, then the model’s predictions will get worse over time. When you monitor a dataset, you create a baseline dataset and then compare new data to it on a regular basis to see if there’s been data drift.
You can choose from three types of resources for training a model: compute instances, compute clusters, and attached compute. You can also choose whether to use CPUs or GPUs. GPUs will typically train a model much faster than CPUs will, especially if it’s a deep learning model. The default type of compute target is a compute cluster, which is an Azure Kubernetes Service cluster that can scale up or down as needed.
Attached compute is an option that lets you attach a cluster that you’ve created using another service, such as Azure Databricks or Azure HDInsight.
When you deploy a model as a web service, you need to configure a deployment target. At the moment, the only type that’s available when you’re using the Machine Learning Designer is an Azure Kubernetes Service cluster. Other options are available with the Azure ML SDK.
If you want to add your own custom code to an experiment, you can use either the Execute Python Script module or the Execute R Script module, depending on which language you want to use.
Now you know how to create an Azure Machine Learning workspace, train a machine learning model using the drag-and-drop interface, and deploy a trained model to make predictions based on new data.
To learn more about Azure Machine Learning, you can read Microsoft’s documentation. Also watch for new machine learning courses on Cloud Academy, because we’re always publishing new courses.
Please give this course a rating, and if you have any questions or comments, please let us know. Thanks and have fun with Azure Machine Learning!
Guy launched his first training website in 1995 and he's been helping people learn IT technologies ever since. He has been a sysadmin, instructor, sales engineer, IT manager, and entrepreneur. In his most recent venture, he founded and led a cloud-based training infrastructure company that provided virtual labs for some of the largest software vendors in the world. Guy’s passion is making complex technology easy to understand. His activities outside of work have included riding an elephant and skydiving (although not at the same time).