Configurare un ambiente di sviluppo Python per Azure Machine Learning (v1)
Si applica a: Python SDK azureml v1
Informazioni su come configurare un ambiente di sviluppo Python per Azure Machine Learning.
La tabella seguente illustra ogni ambiente di sviluppo trattato in questo articolo, insieme a pro e contro.
Ambiente | Vantaggi | Svantaggi |
---|---|---|
Ambiente locale | Controllo completo dell'ambiente di sviluppo e delle dipendenze. Esecuzione con qualsiasi strumento di compilazione, ambiente o ambiente di sviluppo integrato di propria scelta. | Richiede più tempo per iniziare. Devono essere installati i pacchetti SDK necessari e anche un ambiente se non ne è già disponibile uno. |
Data Science Virtual Machine (DSVM) | Analogamente all'istanza di calcolo basata sul cloud (Python e l'SDK sono preinstallati), ma con altri strumenti di data science e apprendimento automatico diffusi preinstallati. Facile da ridimensionare e combinare con altri strumenti e flussi di lavoro personalizzati. | Un'esperienza iniziale più lenta rispetto all'istanza di calcolo basata sul cloud. |
Istanza di calcolo di Azure Machine Learning | Modo più semplice per iniziare. L'intero SDK è già installato nella macchina virtuale dell'area di lavoro e le esercitazioni sui notebook sono pre-clonate e pronte per l'esecuzione. | Mancanza di controllo sull'ambiente di sviluppo e sulle dipendenze. Costi aggiuntivi sostenuti per la macchina virtuale Linux; la macchina virtuale può essere arrestata quando non è in uso per evitare addebiti. Vedi i dettagli sui prezzi. |
Azure Databricks | Ideale per l'esecuzione di flussi di lavoro di apprendimento automatico intensivi e di larga scala nella piattaforma Apache Spark scalabile. | Eccessivo per l'apprendimento automatico sperimentale o esperimenti e flussi di lavoro su scala più ridotta. Costi aggiuntivi sostenuti per Azure Databricks. Vedi i dettagli sui prezzi. |
Questo articolo fornisce anche suggerimenti di utilizzo per gli strumenti seguenti:
Jupyter Notebook: se si usa già i notebook di Jupyter, SDK include alcune funzionalità aggiuntive che è necessario installare.
Visual Studio Code: se si usa Visual Studio Code, l’estensione Azure Machine Learning include un ampio supporto del linguaggio per Python e funzionalità per rendere l'uso di Azure Machine Learning molto più comodo e produttivo.
Prerequisiti
- Area di lavoro di Azure Machine Learning. Se non è disponibile, è possibile creare un'area di lavoro di Azure Machine Learning tramite il portale di Azure, l’interfaccia della riga di comando di Azure e i modelli di Azure Resource Manager.
Solo Data Science Virtual Machine e locale: creare un file di configurazione dell'area di lavoro
Il file di configurazione dell'area di lavoro è un file JSON che indica all'SDK come comunicare con l'area di lavoro di Azure Machine Learning. Il file è denominato config.json e ha il formato seguente:
{
"subscription_id": "<subscription-id>",
"resource_group": "<resource-group>",
"workspace_name": "<workspace-name>"
}
Questo file JSON deve trovarsi nella struttura della directory che contiene gli script di Python o i notebook di Jupyter. Può trovarsi nella stessa directory, in una sottodirectory chiamata .azureml
o in una directory padre.
Per usare questo file dal codice, usare il metodo Workspace.from_config
. Questo codice carica le informazioni dal file e si connette all'area di lavoro.
Creare un file di configurazione dell'area di lavoro seguendo uno dei metodi seguenti:
Azure portal
Scaricare il file: nel portale di Azure selezionare Scarica config.json dalla sezione Panoramica dell'area di lavoro.
Python SDK di Azure Machine Learning
Creare uno script per connettersi all'area di lavoro di Azure Machine Learning e usare il metodo
write_config
per generare il file e salvarlo come .azureml/config.json. Assicurarsi di sostituire gli elementisubscription_id
,resource_group
eworkspace_name
con i propri.SI APPLICA A: Python SDK azureml v1
from azureml.core import Workspace subscription_id = '<subscription-id>' resource_group = '<resource-group>' workspace_name = '<workspace-name>' try: ws = Workspace(subscription_id = subscription_id, resource_group = resource_group, workspace_name = workspace_name) ws.write_config() print('Library configuration succeeded') except: print('Workspace not found')
Ambiente del computer locale o della macchina virtuale remota
È possibile configurare un ambiente in un computer locale o in una macchina virtuale remota, ad esempio un'istanza di calcolo di Azure Machine Learning o Data Science Virtual Machine.
Per configurare un ambiente di sviluppo locale o una macchina virtuale remota:
Creare un ambiente virtuale Python (virtualenv, conda).
Nota
Sebbene non sia necessario, è consigliabile usare Anaconda o Miniconda per gestire gli ambienti virtuali Python e installare i pacchetti.
Importante
Se si usa Linux o macOS con una shell diversa da bash, ad esempio zsh, possono verificarsi errori durante l'esecuzione di alcuni comandi. Per risolvere questo problema, usare il comando
bash
per avviare una nuova shell bash ed eseguire i comandi nella shell.Attivare l'ambiente virtuale Python appena creato.
Installare il Software Development Kit Python di Azure Machine Learning.
Per configurare l'ambiente locale per l'uso dell'area di lavoro di Azure Machine Learning, creare un file di configurazione dell'area di lavoro o usarne uno esistente.
Dopo aver configurato l'ambiente locale, è possibile iniziare a usare Azure Machine Learning. Per iniziare, vedere la guida introduttiva di Python di Azure Machine Learning.
Jupyter Notebook
Quando si esegue un server Jupyter Notebook locale, è consigliabile creare un kernel IPython per l'ambiente virtuale Python. Ciò consente di garantire il comportamento del kernel e dell’importazione del pacchetto previsto.
Abilitare i kernel IPython specifici dell'ambiente
conda install notebook ipykernel
Creare un kernel per l'ambiente virtuale Python. Assicurarsi di sostituire
<myenv>
con il nome dell'ambiente virtuale Python.ipython kernel install --user --name <myenv> --display-name "Python (myenv)"
Avviare il server Jupyter Notebook
Vedere il repository di notebook di Azure Machine Learning per iniziare a usare Azure Machine Learning e i Jupyter Notebook. Vedere anche il repository basato sulla community AzureML-Examples.
Visual Studio Code
Per usare Visual Studio Code per lo sviluppo:
Installare Visual Studio Code.
Installare l'estensione Azure Machine Learning per Visual Studio Code (anteprima).
Importante
Questa funzionalità è attualmente in anteprima pubblica. Questa versione di anteprima viene fornita senza contratto di servizio, pertanto se ne sconsiglia l’uso per i carichi di lavoro in ambienti di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero presentare funzionalità limitate.
Per altre informazioni, vedere le Condizioni supplementari per l'uso delle anteprime di Microsoft Azure.
Dopo aver installato l'estensione di Visual Studio Code, usarla per:
- Gestire le risorse di Azure Machine Learning
- Avviare Visual Studio Code in modalità remota connessa a un'istanza di calcolo (anteprima)
- Fare ed eseguire il debug degli esperimenti
- Distribuire modelli sottoposti a training (CLI v2).
Istanza di calcolo di Azure Machine Learning
L’istanza di ambiente di calcolo di Azure Machine Learning è una workstation di Azure sicura basata sul cloud che fornisce agli scienziati dei dati un server Jupyter Notebook, JupyterLab e un ambiente di apprendimento automatico completamente gestito.
Non è necessaria alcuna installazione o configurazione per un'istanza di ambiente di calcolo.
Crearne una in qualsiasi momento dall'interno dell'area di lavoro di Azure Machine Learning. Specificare solo un nome e un tipo di macchina virtuale di Azure. Provare ora con Creare risorse per iniziare.
Per altre informazioni sulle istanze di ambiente di calcolo, tra cui come installare i pacchetti, vedere Creare e gestire un'istanza di ambiente di calcolo di Azure Machine Learning.
Suggerimento
Per evitare addebiti per un'istanza di ambiente di calcolo inutilizzata, arrestarla. In alternativa, abilitare l'arresto per inattività per l'istanza di ambiente di calcolo.
Oltre a un server Jupyter Notebook e JupyterLab, è possibile usare le istanze di ambiente di calcolo nella funzionalità notebook integrata all'interno di studio di Azure Machine Learning.
È anche possibile usare l'estensione Visual Studio Code di Azure Machine Learning per connettersi a un'istanza di ambiente di calcolo remota usando VS Code.
Data Science Virtual Machine
La Data Science Virtual Machine è un'immagine di macchina virtuale personalizzata che è possibile usare come ambiente di sviluppo. È progettata per il lavoro di data science che ha strumenti e software preconfigurati come:
- Pacchetti come TensorFlow, PyTorch, Scikit-learn, XGBoost e SDK di Azure Machine Learning
- Strumenti di data science comuni come Spark Standalone e Drill
- Strumenti di Azure come l'interfaccia della riga di comando di Azure, AzCopy e Storage Explorer
- Ambienti di sviluppo integrato (IDE) come Visual Studio Code e PyCharm
- Server Jupyter Notebook
Per un elenco più completo degli strumenti, vedere la guida agli strumenti della Data Science Virtual Machine.
Importante
Se si prevede di usare la Data Science VM come destinazione di calcolo per i processi di training o inferenza, è supportato solo Ubuntu.
Per usare la Data Science Virtual Machine come ambiente di sviluppo:
Creare una Data Science VM seguendo uno dei metodi seguenti:
Usare il portale di Azure per creare una Data Science Virtual Machine Ubuntu o Windows.
Creare una Data Science VM usando modelli di Resource Manager.
Usare l'interfaccia della riga di comando di Azure
Per creare una Data Science VM Ubuntu usare il comando seguente:
# create a Ubuntu Data Science VM in your resource group # note you need to be at least a contributor to the resource group in order to execute this command successfully # If you need to create a new resource group use: "az group create --name YOUR-RESOURCE-GROUP-NAME --location YOUR-REGION (For example: westus2)" az vm create --resource-group YOUR-RESOURCE-GROUP-NAME --name YOUR-VM-NAME --image microsoft-dsvm:linux-data-science-vm-ubuntu:linuxdsvmubuntu:latest --admin-username YOUR-USERNAME --admin-password YOUR-PASSWORD --generate-ssh-keys --authentication-type password
Per creare una Data Science VM Windows usare il comando seguente:
# create a Windows Server 2016 DSVM in your resource group # note you need to be at least a contributor to the resource group in order to execute this command successfully az vm create --resource-group YOUR-RESOURCE-GROUP-NAME --name YOUR-VM-NAME --image microsoft-dsvm:dsvm-windows:server-2016:latest --admin-username YOUR-USERNAME --admin-password YOUR-PASSWORD --authentication-type password
Attivare l'ambiente conda contenente il Software Development Kit di Azure Machine Learning.
Per la Data Science VM Ubuntu:
conda activate py36
Per la Data Science VM Windows:
conda activate AzureML
Per configurare la Data Science VM per l'uso dell'area di lavoro di Azure Machine Learning, creare un file di configurazione dell'area di lavoro o usarne uno esistente.
Analogamente agli ambienti locali, è possibile usare Visual Studio Code e l’estensione Visual Studio Code di Azure Machine Learning per interagire con Azure Machine Learning.
Per altre informazioni, vedere Data Science Virtual Machine.
Passaggi successivi
- Eseguire il training e distribuire un modello in Azure Machine Learning con il set di dati MNIST.
- Vedere la documentazione di riferimento del Software Development Kit di Azure Machine Learning per Python.