Azure data services part 3: Azure Machine Learning
In parts 1 and 2 of this mini-series, I wrote brief intros to HDInsight and Stream Insight, Azure's offerings for big data analytics and real-time analytics. Next up, Azure Machine Learning.
What it's for:
Azure Machine learning provides a GUI with drag and drop pre-built components for carrying out predictive analytics. You can also plug in custom elements such as R and Python scripts.
Use cases (plucked from the Azure Machine Learning gallery) include customer sentiment analysis, credit risk prediction, demand estimation, product recommendations, computer vision, fraud prevention, text classification… and many more.
The way you use Azure Machine Learning will normally break into two distinct phases.
There is an initial experimentation phase, where you conduct experiments with training data.
The end result of an Azure Machine Learning experiment (if all goes well) is a trained model, which is able to successfully classify or predict over new data. You can compare several different algorithms in one experiment to find the most successful approach.
This is followed by a production phase, where a trained model is published as a web service, which can process individual or batch requests.
Services can also be published in the product gallery or Azure Machine Learning Marketplace.
What it consists of:
Azure Machine Learning is a multi-tenanted service.
It is accessed through a Machine Learning 'workspace' in the portal, which provides a 'Machine Learning Studio' where you can construct experiments and publish trained models as Web API endpoints. Experiments are conducted by dragging components onto a canvas and configuring them in a properties panel.
The workspace makes use of a storage account.
A sample Azure Machine learning experiment.
How you get data into and out of it:
Data can be brought into a workspace for training from Azure Blob Storage, Azure Table Storage, Azure SQL Database, a Hive query, a web URL via HTTP, or an OData data feed provider.
It can be exported from an experiment into a Hive query, Azure Blob Storage, Azure Table Storage, or Azure SQL Database.
A published Azure Machine Learning Web API endpoint can be queried from anywhere you like. The input is the item or set of items you would like to classify or carry out a prediction for. The output is the prediction and data about the confidence with which this was made. In the case of batch requests, the input is the location of a storage account containing these items, and the output is saved to another storage account specified in the request.
How it's charged:
Azure Machine Learning is available in a free and a standard tier. The free tier limits modules per experiment, experiment duration, storage space, and nodes used to carry out experiments, and doesn't provide a production Web API.
The standard tier has a monthly fee per 'seat' (workspace), an hourly charge for using the Azure Machine Learning Studio to conduct experiments, and an hourly compute charge and transaction-volume charge for Azure Machine Learning Web API usage.
Sign up to the Azure Weekly to receive Azure related news and articles direct to your inbox or follow on Twitter:@azureweekly