In this series, I will talk about Microsoft cloud machine learning: Azure ML. I will explain the main components and concepts of Azure ML. In the first post, I will talk about the Machine Learning concepts and Azure ML.
What is Machine Learning:
Machine learning according to Wikipedia is:
“subfield of computer science that gives computers the ability to learn without being explicitly programmed“
The main concept comes from learning from data and then for new series of data, predict based on the past data behavior.
The best example is: hand writing recognition in a Post Office.
Computer will be feed by many different handwriting styles. For instance for the word “Referred” we may have different ways of writing it (see below image). A machine learning program will learn from all different writing styles, then in the new set of data, it should be able to distinguish it. So computer program will learn that the word “referred” can be written in different ways. Hence, for future letters, computer program will be able to distinguish different variation of writing “referred“.
Moreover, machine learning is a new trend in BI. Before this era, we mainly focused on “What is happened”, “Why is happened”, or “What is happening now”. The new trend that we looking at is :”What will be happen” and “How to make it happen”
The first level (What happened) has been used for many years in BI systems. Which is about checking what happened in the past without any level of analytics, while the second level fetchs the same data, but it will look at the real time or near real time data. It can be an example of internet of things. In the third level, the main aim is to see “why it happened” so we focus is on what if analysis.
The fourth level mainly is about the “What will happen” which machine learning will be used here. it is not an easy task but it worth the effort especially for future decision making. Finally, the last part is about the Recommendation, that based on the specification of customers what action/products/ so forth good for them.
For the first and the third level we can use BI tools such as Microsoft Power BI. the good example for second level is “IoT” or using “Gateways” in Power BI.
However, the main aim of current series is more on the fourth and the fifth level of analysis which is predictive and prescriptive analytics.
Machine Learning Cycle
To do machine learning, we should follow specific cycle as below:
The first step is to identify the business problem such as : sale prediction, customer churn and so forth. The next step is about the identifying the relevant data, what attribute has more impact on problem, gather data, clean data and load data. In the second step, ETL process may be applied. Finally, after gathering data and data wrangling, we have to choose the relevant algorithm based on the problem nature (will be explained later in this series). Finally, we split data some part for training model and some other for testing the mode. model will learn from the past data to better predict the upcoming data. Then, we evaluate the created model and deploy it.
In some cases, the model evaluation is not satisfactory, hence we have to reconsider the business problem, collect other data or choose other model.
This process applies for any other machine learning platform.
Azure Machine Learning
Azure ML is a cloud machine learning platform. It is part of Cortana analytics suite. Azure ML make the process of creating predictive, descriptive and prescriptive analysis much more easier.
Azure ML is in “Machine Learning and Analytics” part of Cortana.
The main specifications of using Azure ML are as below;
- Web based, accessible from anywhere
- If you using Cortana, for example Azure SQL database, Azure Virtual Machine and so on , it so easy to create analytics on it. for instance, you can get data from SQL Data Base in Azure and apply some analytics on them, then store the result in Azure again. Moreover, if you use Event hub or IoT hub, you can easily create analytics on live data (see http://radacad.com/part-4-live-streaming-weather-station-with-cortana-analytics-online-data-analytics-with-azure-ml)
- Create a fast prototype for machine Learning. Azure ML has a group of algorithms which easy to use (will explain in next parts), the drag and drop environment will make it easy to create a fast prototype.
- Flexibility in using algorithm,25 algorithms that already haven been used by Xbox team and Bing search team. also there is a possibility to write your own R or Python Codes there
- Create web service out of the created model by few clicks.
and so many others.
In the next post I will show the Azure ML environment and its main components.