Azure Machine Learning

What is Machine Learning?

Let me start by What is Machine Learning. Well, this is the world in this world we have humans and computers. We humans learn from past experiences whereas computer learns by following instruction which we program. The question is can we make computer learn from past experience?

And the answer is YES, but that experience has a name which is Data thus computer learns from previous data and that is Machine Learning.

Machine learning models fall into two broad categories: supervised and unsupervised. In supervised learning, the model is “trained” with a large volume of data and algorithms are then used to predict an outcome from future inputs. Most supervised learning models use regression algorithms to compute an outcome from a continuous set of possible outcomes (for example, your score on a test), or classification algorithms to compute the probability of an outcome from a finite set of possible outcomes (for example, the probability that an e-mail is spam or a credit-card transaction is fraudulent). In unsupervised learning, the computer isn’t trained, but is presented with a set of data and challenged to find relationships in it. K-Means Clustering is a common unsupervised learning algorithm. For a great explanation of how it works, see offers a great example of machine learning in action. Created by Microsoft, the site uses advanced image-recognition techniques to analyze photos you upload and then uses an ML model to “predict” the ages of the people in the photos.

Azure Machine Learning is a cloud-based predictive-analytics service that offers a streamlined experience for data scientists of all skill levels. It’s accompanied by the Azure Machine Learning Studio (ML Studio), which is a browser-based tool that provides an easy to use, drag-and-drop interface for building machine-learning models. It comes with a library of time-saving experiments and features best-in-class algorithms developed and tested in the real world by Microsoft businesses such as Bing. And its built-in support for R and Python means you can build custom scripts to customize your model. Once you’ve built and trained your model in the ML Studio, you can easily expose it as a Web service that is consumable from a variety of programming languages, or share it with the community by placing it in the Cortana Intelligence Gallery.

ML Studio simplifies machine learning by providing a drag-and-drop model in which you build workflow. With ML Studio and the rich of assortment of modules it offers for modeling workflow, you can often build sophisticated models without writing a single line of code. However, it allows you to insert R and Python code anywhere in the workflow, providing infinite flexibility in what you can model.

ML starts with data, which can come from a variety of sources. The data typically needs to be “cleaned” before it is used, and ML Studio includes modules to help with the cleaning. (Examples of cleaning include removing rows with missing data, replacing missing data algorithmically, removing duplicate rows, and removing rows containing “outliers.” In practice, cleaning the data can be very time-intensive and often consumes 50% of the time required to build the model.) Once the data is ready, you select an algorithm and “train” the model by allowing it to iterate over the data and find patterns in it. After that comes scoring and evaluating the model, which tells you how well the model is able to predict outcomes. All of this is performed visually in ML Studio. Once the model is ready, a few button clicks deploy it as a Web service so it can be called from client apps.

ML Studio provides canned implementations of 25 of the classic algorithms used in machine learning. It divides them into four categories.

Anomaly detection is the identification of items, events, or observations which do not conform to an expected pattern or other items in a dataset. A classic example is examining a dataset representing banking transactions and detecting potentially fraudulent transactions in that group.

Regression algorithms seek to establish and quantify relationships between variables. By establishing a relationship between a dependent variable and one or more independent variables, regression analysis can enable the value of a dependent variable to be predicted given a set of inputs with a quantifiable accuracy. A great example can be seen at, a site that lets you upload a photo and then guesses your age with uncanny accuracy. The site uses Azure Machine Learning and combines classic regression with advanced image recognition.

The purpose of classification algorithms is to identify the category to which an observation belongs based on training data consisting of observations which have already been classified (assigned to a category). A great example is determining whether an e-mail belongs to the “spam” category or the “not-spam” category.

Clustering seeks to group a set of objects in such a way that objects in the same group (called a cluster) are more similar to each other than to those in other groups (clusters).

The Azure ML Cheat Sheet helps you pick the right algorithm for a model, even if you’re not a trained data scientist. One example is if you want to use a set of input values to predict an output value from a continuous set of values (e.g., a person’s age), use linear regression. But if you’re more interested in the distribution of the output, you might use fast forest quantile regression instead. An example of when you would use the latter is using growth charts to assess child development. “Abby’s height is in the 10% quantile of the heights of kids her age.” Classification algorithms, by contrast, are used to predict a value from a discrete set of values — for example, classifying an e-mail as spam or not spam. Link to CheatSheet

Once deployed as a Web service, a model can be used with simple REST calls over HTTP. This enables developers to build “smart apps” that get their intelligence from ML. In the next lab, students will build and train an ML model, deploy it as a Web service, and then write a client app that uses it.

Good book — and free here

Create a free account on Microsoft Azure Machine Learning Studio here.

Thank you,