Calibration Assignment Submission (Azure Machine Learning)

From Expertiza_Wiki
Jump to navigation Jump to search

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'.<ref name="Introduction to machine learning on Microsoft Azure">"Introduction to machine learning on Microsoft Azure"</ref>

Introduction

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.

Azure Machine Learning workflow

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

Data Collection & Management

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

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

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

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

  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

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:

Experiments

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

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

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

Trained Models

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

Settings

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.

Cortana Analytics Gallery

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. <ref name="Predictive Analytics with Microsoft Azure Machine Learning: Build and Deploy Actionable Solutions in Minutes">"Predictive Analytics with Microsoft Azure Machine Learning: Build and Deploy Actionable Solutions in Minutes"</ref> 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<ref name="Cortana Analytics Gallery">"Cortana Analytics Gallery"</ref>.

Azure Marketplace

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:<ref name="Microsoft Azure Machine Learning Review - RobustTechHouse">"Microsoft Azure Machine Learning Review - RobustTechHouse"</ref>

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

The summary comparison between various machine learning platforms has been summarized below<ref name="Machine Learning as a Service - Benchmark">"Machine Learning as a Service - Benchmark"</ref>

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

3: Amazon Simple Storage Service (Amazon S3), provides developers and IT teams with secure, durable, highly-scalable object storage<ref name="Amazon Simple Storage Service (S3) - Object Storage">"Amazon Simple Storage Service (S3) - Object Storage"</ref>.

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

Videos

References

<references/>