Azure Machine Learning
The Microsoft Azure service for machine learning, organised around a workspace that holds assets and compute.
Azure Machine Learning is the machine learning service on Microsoft Azure. Work is organised inside a workspace, which holds the data assets, compute resources, jobs, models and endpoints belonging to a project. Training runs as jobs against compute the workspace defines, and trained models are deployed as endpoints from the same place.
The workspace is the organising idea
Azure Machine Learning is Microsoft's machine learning service on Azure, and its structure is worth learning before anything else because everything sits inside it.
A workspace is the container for a project. It holds:
- Data assets, the registered data sets available.
- Compute, the machines available to run work.
- Jobs, the record of what has been run.
- Models, the registered trained results.
- Endpoints, the deployed models serving predictions.
Because these live together, the question of what a project consists of has an answer. That is a real improvement on a project spread across storage accounts, virtual machines and somebody's notebook.
Compute is separate from jobs
A job describes what to run. A compute resource describes where.
Keeping these apart is a deliberate separation with practical value. The same training job can be sent to a small cluster for a test run and a large one for the real thing, without the job being modified.
Compute clusters can also scale to zero when idle, so a cluster defined for occasional training does not cost anything between runs.
Registered data assets
Rather than pointing a job at a storage path, data is registered as an asset with a name and a version.
Two things follow. Jobs refer to the asset rather than the location, so reorganising storage does not break them. And because assets carry versions, the record of which data a model was trained on exists.
That second point matters more than it appears. When a model's behaviour has to be explained months later, knowing precisely which version of the data produced it is often the necessary information.
Jobs, including pipelines
Training runs as a job: the service provisions the compute, runs the code, records the outputs and releases the resource.
Multi step work runs as a pipeline job, chaining preparation, training and evaluation so the sequence reruns reliably rather than being executed by hand in order.
Endpoints
A registered model is deployed as a managed endpoint. The service hosts it, handles scaling and answers prediction requests.
This removes the engineering work of building a serving service, which is substantial and is not machine learning work.
Who uses it
Azure Machine Learning is used by teams building machine learning on Azure, especially where data already sits in Azure storage and identity is managed through Azure. The workspace structure also suits organisations that need project assets and versions recorded.
Points to consider
It is an Azure service and is designed around Azure. That is efficient inside that environment and specific to it.
There is more structure to learn than in a library. Workspaces, assets, compute definitions and environments all have to be understood before a first job runs, which is more setup than running a training script locally.
Cost needs watching. Compute clusters that scale to zero are economical; endpoints are billed while they exist whether or not requests arrive.
Getting started
The Microsoft documentation includes a quickstart that creates a workspace, sets up compute and runs a first training job, followed by guides on data assets, pipelines and endpoint deployment. Running one job against a small compute cluster demonstrates how the pieces relate.
Key features of Azure Machine Learning
Capabilities described in the official documentation.
A workspace holding everything
Data assets, compute, jobs, models and endpoints for a project all belong to one workspace.
Compute defined separately from jobs
Compute resources are created in the workspace and referenced by jobs, so the two are configured independently.
Registered data assets
A data set is registered by name and version, so a job refers to it rather than to a storage path.
Managed endpoints
A trained model is deployed as an endpoint that the service hosts and scales for prediction requests.
Advantages of Azure Machine Learning
Factual advantages that follow from the features above.
Project assets stay together
Because a workspace holds everything, what a project consists of is visible rather than spread across services.
Jobs are portable across compute
Since compute is referenced rather than embedded, the same job can run on a different resource without being rewritten.
Data references survive moves
Referring to a registered asset by name means a job does not break when underlying storage is reorganised.
It fits the Azure estate
Documented links to Azure storage, identity and monitoring avoid building those connections separately.
Common use cases for Azure Machine Learning
Situations the official documentation describes this tool as being used for.
Training on cloud compute
A job runs on a compute cluster in the workspace, which scales up for the run and back down afterwards.
Serving a model to an application
A managed endpoint hosts a trained model so applications request predictions from it.
Keeping a record of data versions
Registered data assets record which version of a data set a model was trained on.
Running a repeatable pipeline
A pipeline job chains preparation, training and evaluation steps so the whole sequence reruns reliably.
Official website
Everything on this page is based on the official documentation for Azure Machine Learning. You can read the source here.
Azure Machine Learning official documentation