Azure Machine Learning (also known as Azure ML) is a fully cloud-based end-to-end service by Microsoft for big data processing including creating, testing, operationalizing and managing predictive analytics models in the cloud. Azure ML is now a part of Microsoft's big data and advanced analytics offering 'Cortana Analytics Suite'.[1]

Introduction

edit

Azure ML offers features such as visual composition, large pallet of modules, an extensive library of starting templates and powerful machine learning algorithms, a large collection of built-in transformation tasks, and support for frequently used data science programming languages like R and Python which makes building common predictive analytics models quick and easy. After developing the model, one can deploy it on Azure Cloud as a scalable and fault-tolerant web service using Azure's Machine Learning API. The web service created by Machine Learning API are nothing but REST APIs that allows accessing the model from almost anywhere including web sites and customer applications, As patterns in data change over time, or if the user wants to add some new source of data, the deployed model can be easily retrained and updated programmatically through Azure ML API. Azure ML provides all such facilities through an interactive visual workspace called Azure Machine Learning Studio.[1]

Azure Machine Learning workflow

edit

Azure ML has mainly three components in its workflow to build model and operationalize machine learning solution.

Data Collection & Management

edit

It allows to use data through blobs and tables (Azure Storage), relational data (Azure SQL Database), Hadoop (Azure HDInsight) and massive data stores (Azure Data Lake).

Machine Learning Service

edit

It allows to create Machine learning models through ML Studio web apps and output a web service that can run on a scheduled basis.

Embedded ML Model

edit

It allows to embed the developed machine learning models into other applications such as apps, websites or business intelligence tools.

Build and deploy machine learning models in Azure Machine Learning

edit

Azure Machine Learning has many different modules to help you build and deploy machine learning models in production. Following are the key steps to build and deploy a machine learning model in Azure[2]

  1. Import raw data
  2. Preprocess the data
  3. Do feature engineering and data labeling (for supervised learning such as classification)
  4. Train, score, and evaluate the model
  5. Model comparison and selection
  6. Save the trained model
  7. Create a predictive experiment
  8. Publish the web service in Azure Machine Learning

Azure Machine Learning Studio

edit

Azure Machine Learning Studio is an interactive, visual workspace to build, test, and iterate on a predictive analytics model. Following are the components of the Machine Learning Studio:[2]

Experiments

edit

It provides a list of experiments that have been created, run, and saved as drafts. It also includes a set of sample experiments to help jumpstart the projects.

Web Services

edit

It provides a list of experiments that are already published by the user. If no experiments have been published, this list will be empty.

Datasets

edit

It provides a list of sample datasets that ship with the product along with datasets uploaded by the user.

Trained Models

edit

It provides a list of any trained models that the user has saved from experiments.

Settings

edit

It includes a collection of settings so as to configure resources and account.

In Machine Learning Studio, the user can construct a predictive model by dragging and dropping datasets and analysis modules onto the interactive canvas, connecting them together with lines to show the flow of data and parameters through the workflow to form an experiment, which can be run in ML Studio. Thus, each experiment is complete workflow with all components required to build, test, and evaluate a predictive analytics model. One can iteratively update the model design by editing the experiment, saving the copy and running it again.

edit

Cortana Analytics (formerly called as Machine Learning Gallery) provides a gallery of sample machine learning models that one can use to quickly get started. Each model contains an experiment added by Microsoft, its partners or individual data scientists. [2] It also serves as a platform for users looking to learn from others, to get started developing their own solutions, or to contribute their own work to the advanced analytics community[3].

Azure Marketplace

edit

Machine Learning Studio enables a user to configure Machine Learning models using graphical user interfaces. Azure Marketplace, on the other hand, offers pre-packaged models that are ready to use. Some of the services that the Marketplace has to offer are listed below:[4]

Text Analytics

The Text Analytics API is a suite of text analytics services built using Azure Machine Learning. It can be used to detect sentiments, extract keyphrases and detect the language of the text provided.

Frequently brought together

This API can be used by website owners to help its customers discover items in its catalog that are bought together. It uses customer purchase history to provide "Frequently bought together" recommendations.

Binary classifier API

Binary Classifier API is an example built with Microsoft Azure Machine Learning that fits a logistic regression model to data input by the user and then outputs the predicted value for each of the observations in the data.  

Comparison

edit

The summary comparison between various machine learning platforms has been summarized below[5]

AWS machine learning Google Prediction API MS Azure Machine Learning
Data sources Text file uploaded into S3

AWS RDS

AWS Redshift

AWS S3 table

Text file uploaded into

Google storage

Google Spreadsheets

HTTPS requests

API update calls

Uploaded text files

Azure storage

SQL database

Web URL

Hadoop HiveQL

Data formats CSV file

S3 and Redshift database

Text file

Spreadsheet

JSON

CSV and text files

Hive SQL tables

Odata values

svmlight

arff

zip

RData

Dataset maximum size 100GB text file: 2.5 GB

HTTP request: 2 MB

10 GB
Data types boolean

categorical

numeric

string

numeric

string

boolean

categorical

datetime

numeric

timespan

string

Data visualization yes

table view

no Table, histogram,

statistical summary

Mathematical transformations no no yes
Feature normalization yes no yes using PCA
Orthonormalization no no yes
Missing value imputation yes indirectly chain feature

imputation model with main

prediction model

yes automatic replaces missing

strings with ""

replaces missing numbers

with 0

yes can replace with custom

values mean, median or mode.

Terms used in the above comparison

AWS 3: Amazon Simple Storage Service (Amazon S3), provides developers and IT teams with secure, durable, highly-scalable object storage[6].

Azure Machine Learning provides more flexibility in terms of the data formats that can be imported into its environment. It also supports more data visualization methods as compared to Amazon Machine Learning. The missing value imputaion can also be customized.

Further reading

edit

Videos

edit

References

edit
  1. ^ a b "Introduction to machine learning on Microsoft Azure". azure.microsoft.com. Retrieved 2016-02-06.
  2. ^ a b c Predictive Analytics with Microsoft Azure Machine Learning: Build and Deploy Actionable Solutions in Minutes. ISBN 978-1-4842-0446-7.
  3. ^ "Cortana Analytics Gallery". gallery.cortanaanalytics.com. Retrieved 2016-02-16.
  4. ^ "Microsoft Azure Machine Learning Review - RobustTechHouse". RobustTechHouse. Retrieved 2016-02-05.
  5. ^ "Machine Learning as a Service - Benchmark". Liquid. Retrieved 2016-02-09.
  6. ^ "Amazon Simple Storage Service (S3) - Object Storage". Amazon Web Services, Inc. Retrieved 2016-02-16.