What is an Azure Machine Learning workspace?
The workspace is the top-level resource for Azure Machine Learning, providing a centralized place to work with all the artifacts you create when you use Azure Machine Learning. The workspace keeps a history of all training runs, including logs, metrics, output, and a snapshot of your scripts. You use this information to determine which training run produces the best model.
Once you have a model you like, you register it with the workspace. You then use the registered model and scoring scripts to deploy to Azure Container Instances, Azure Kubernetes Service, or to a field-programmable gate array (FPGA) as a REST-based HTTP endpoint. You can also deploy the model to an Azure IoT Edge device as a module.
Pricing and features available depend on whether Basic or Enterprise edition is selected for the workspace. You select the edition when you create the workspace. You can also upgrade from Basic to Enterprise edition.
A taxonomy of the workspace is illustrated in the following diagram:
The diagram shows the following components of a workspace:
A workspace can contain Azure Machine Learning compute instances, cloud resources configured with the Python environment necessary to run Azure Machine Learning.
User roles enable you to share your workspace with other users, teams or projects.
Compute targets are used to run your experiments.
When you create the workspace, associated resources are also created for you.
Experiments are training runs you use to build your models.
Pipelines are reusable workflows for training and retraining your model.
Datasets aid in management of the data you use for model training and pipeline creation.
Once you have a model you want to deploy, you create a registered model.
Use the registered model and a scoring script to create a deployment endpoint.
Tools for workspace interaction
You can interact with your workspace in the following ways:
- On the web:
- In any Python environment with the Azure Machine Learning SDK for Python.
- In any R environment with the Azure Machine Learning SDK for R (preview).
- On the command line using the Azure Machine Learning CLI extension
- Azure Machine Learning VS Code Extension
Machine learning with a workspace
Machine learning tasks read and/or write artifacts to your workspace.
- Run an experiment to train a model - writes experiment run results to the workspace.
- Use automated ML to train a model - writes training results to the workspace.
- Register a model in the workspace.
- Deploy a model - uses the registered model to create a deployment.
- Create and run reusable workflows.
- View machine learning artifacts such as experiments, pipelines, models, deployments.
- Track and monitor models.
You can also perform the following workspace management tasks:
|Workspace management task||Portal||Studio||Python SDK / R SDK||CLI||VS Code|
|Create a workspace||✓||✓||✓||✓|
|Manage workspace access||✓||✓|
|Upgrade to Enterprise edition||✓||✓|
|Create and manage compute resources||✓||✓||✓||✓|
|Create a Notebook VM||✓|
Moving your Azure Machine Learning workspace to a different subscription, or moving the owning subscription to a new tenant, is not supported. Doing so may cause errors.
When you create a workspace, you decide whether to create it with Basic or Enterprise edition. The edition determines the features available in the workspace. Among other features, Enterprise edition gives you access to Azure Machine Learning designer and the studio version of building automated machine learning experiments. For more details and pricing information, see Azure Machine Learning pricing.
There are multiple ways to create a workspace:
- Use the Azure portal for a point-and-click interface to walk you through each step.
- Use the Azure Machine Learning SDK for Python to create a workspace on the fly from Python scripts or Jupiter notebooks
- Use an Azure Resource Manager template or the Azure Machine Learning CLI when you need to automate or customize the creation with corporate security standards.
- If you work in Visual Studio Code, use the VS Code extension.
The workspace name is case-insensitive.
Upgrade to Enterprise edition
You can upgrade your workspace from Basic to Enterprise edition using Azure portal. You cannot downgrade an Enterprise edition workspace to a Basic edition workspace.
When you create a new workspace, it automatically creates several Azure resources that are used by the workspace:
- Azure Container Registry: Registers docker containers that you use during training and when you deploy a model. To minimize costs, ACR is lazy-loaded until deployment images are created.
- Azure Storage account: Is used as the default datastore for the workspace. Jupyter notebooks that are used with your Azure Machine Learning compute instances are stored here as well.
- Azure Application Insights: Stores monitoring information about your models.
- Azure Key Vault: Stores secrets that are used by compute targets and other sensitive information that's needed by the workspace.
In addition to creating new versions, you can also use existing Azure services.
If you want to use an existing Azure Storage account, it cannot be a premium account (Premium_LRS and Premium_GRS). It also cannot have a hierarchical namespace (used with Azure Data Lake Storage Gen2). Neither premium storage or hierarchical namespace are supported with the default storage account of the workspace. You can use premium storage or hierarchical namespace with non-default storage accounts.
To get started with Azure Machine Learning, see:
- Azure Machine Learning overview
- Create a workspace
- Manage a workspace
- Tutorial: Get started creating your first ML experiment with the Python SDK
- Tutorial: Get started with Azure Machine Learning with the R SDK
- Tutorial: Create your first classification model with automated machine learning (Available only in Enterprise edition workspaces)
- Tutorial: Predict automobile price with the designer (Available only in Enterprise edition workspaces)