This post is by Mustafa Kasap, a Senior Software Design Engineer at Microsoft.
We are very happy to announce the availability of Azure ML Hands-On Lab content on GitHub and we are open for community contributions. Keeping developers in mind, this content is aimed at providing general information about ML, and uses Azure ML as the toolset. We have tried to make this content broadly accessible and do not assume any prior knowledge of these concepts. An initial presentation is provided with basic concepts including theoretical and practical definitions of ML and common use case scenarios. The rest of the content consists of hands-on lab materials with step-by-step instructions right from how to activate an Azure ML subscription. We will soon be adding additional labs including some interesting examples of how you can integrate Azure ML into real life scenarios.
Current lab sections and brief descriptions are provided below.
Lab 1. Setting Up the Development Environment
With the Azure ML service as the base, different type of tools are used in our labs. Existing tools and development languages popular among ML solution developers are considered. In this lab session, we demonstrate how to subscribe to Azure ML, how to install the most popular local ML solution development environments and take care of dependencies.
Lab 2. Introduction to R, Python & Data Synth
After a brief introduction on Python and R and how to execute code on a local machine, we show how to transfer and execute such code on Azure ML. Since true big data sets can be somewhat challenging to analyze and visualize, we use a simple dataset in our lab sessions. We show how to use spreadsheets to visualize and gain insights from our sample dataset. Along with synthetic data, we also use real world public datasets for developing ML models. We reference sample open big data sources and how to transfer such data into the Azure ML workspace.
Lab 3. Azure ML Experiments & Data Interaction
This lab aims to show how to create a simple end-to-end Azure ML experiment and connect it to a data source. We explore major data source types and how to access them through the Azure ML workspace. We also cover basic data interaction techniques.
Lab 4. Develop and Consume Azure ML Models
We develop a sample Azure ML model with synthetic data. The model is published as a web service, where it can then be consumed by any application. We develop a C# console application to use the published web service endpoint. The model we developed is tested with a new data set to observe its behavior.
Lab 5. Custom Scripts (R & Python) in Azure ML
We explore data synthesis through both Python and R modules. Using the script execution capability of Azure ML, we show how to get a current list of installed packages.
Lab 6. Evaluate Model Performance in Azure ML
Once an Azure ML model is developed, we explore its performance. How should Azure ML models be evaluated? What are key criteria used to evaluate models? These questions and more are answered with different types of ML algorithms.
Lab 7. Azure ML Batch Score, Retraining, Production & Automation
We develop and train an ML solution with data. What if this data changes over time? How to keep models up-to-date? How to use Azure ML models to predict values of more than one sample? How to perform batch scoring? This lab session provides answers to these questions, as we walk through our samples in a step-by-step fashion.
Lab 8. Recommendation System
We generate synthetic data for products, product features and user ratings and show how to use the Azure ML recommendation system to provide intelligent suggestions to target consumers of a product.
We hope you find our labs a useful way to get started with ML and data science. Please share your feedback through the comments below.