Configurar um ambiente de desenvolvimento Python para o Azure Machine Learning (v1)
APLICA-SE A: Python SDK azureml v1
Saiba como configurar um ambiente de desenvolvimento Python para o Azure Machine Learning.
A tabela a seguir mostra cada ambiente de desenvolvimento abordado neste artigo, juntamente com prós e contras.
Environment | Prós | Contras |
---|---|---|
Ambiente local | Controle total do seu ambiente de desenvolvimento e dependências. Execute com qualquer ferramenta de compilação, ambiente ou IDE de sua escolha. | Demora mais tempo a começar. Os pacotes SDK necessários devem ser instalados e um ambiente também deve ser instalado se você ainda não tiver um. |
A máquina virtual de ciência de dados (DSVM) | Semelhante à instância de computação baseada em nuvem (Python e SDK são pré-instalados), mas com outras ferramentas populares de ciência de dados e aprendizado de máquina pré-instaladas. Fácil de dimensionar e combinar com outras ferramentas e fluxos de trabalho personalizados. | Uma experiência de introdução mais lenta em comparação com a instância de computação baseada em nuvem. |
Instância de computação do Azure Machine Learning | A maneira mais fácil de começar. O SDK inteiro já está instalado na VM do espaço de trabalho e os tutoriais do bloco de anotações estão pré-clonados e prontos para serem executados. | Falta de controle sobre seu ambiente de desenvolvimento e dependências. Custo extra incorrido para Linux VM (VM pode ser interrompida quando não está em uso para evitar cobranças). Veja os detalhes dos preços. |
Azure Databricks | Ideal para executar fluxos de trabalho intensivos de aprendizagem automática em grande escala na plataforma escalável Apache Spark. | Overkill para aprendizado de máquina experimental ou experimentos e fluxos de trabalho de menor escala. Custo extra incorrido para o Azure Databricks. Veja os detalhes dos preços. |
Este artigo também fornece dicas de uso para as seguintes ferramentas:
Jupyter Notebooks: Se você já estiver usando Jupyter Notebooks, o SDK tem alguns extras que você deve instalar.
Visual Studio Code: Se você usar o Visual Studio Code, a extensão do Azure Machine Learning inclui suporte extensivo à linguagem Python e recursos para tornar o trabalho com o Azure Machine Learning muito mais conveniente e produtivo.
Pré-requisitos
- Espaço de trabalho do Azure Machine Learning. Se não tiver um, pode criar uma área de trabalho do Azure Machine Learning através do portal do Azure, da CLI do Azure e dos modelos do Azure Resource Manager.
Somente local e DSVM: criar um arquivo de configuração de espaço de trabalho
O arquivo de configuração do espaço de trabalho é um arquivo JSON que informa ao SDK como se comunicar com seu espaço de trabalho do Azure Machine Learning. O ficheiro tem o nome config.json e tem o seguinte formato:
{
"subscription_id": "<subscription-id>",
"resource_group": "<resource-group>",
"workspace_name": "<workspace-name>"
}
Esse arquivo JSON deve estar na estrutura de diretórios que contém seus scripts Python ou Jupyter Notebooks. Ele pode estar no mesmo diretório, em um subdiretório chamado .azureml
, ou em um diretório pai.
Para usar esse arquivo do seu código, use o Workspace.from_config
método. Esse código carrega as informações do arquivo e se conecta ao seu espaço de trabalho.
Crie um arquivo de configuração de espaço de trabalho em um dos seguintes métodos:
Portal do Azure
Baixe o arquivo: no portal do Azure, selecione Baixar config.json na seção Visão geral do seu espaço de trabalho.
SDK do Python do Azure Machine Learning
Crie um script para se conectar ao seu espaço de trabalho do Azure Machine Learning e use o
write_config
método para gerar seu arquivo e salvá-lo como .azureml/config.json. Certifique-se de substituirsubscription_id
,resource_group
, eworkspace_name
com o seu próprio.APLICA-SE 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')
Computador local ou ambiente de VM remoto
Você pode configurar um ambiente em um computador local ou máquina virtual remota, como uma instância de computação do Azure Machine Learning ou VM de Ciência de Dados.
Para configurar um ambiente de desenvolvimento local ou VM remota:
Crie um ambiente virtual Python (virtualenv, conda).
Nota
Embora não seja necessário, é recomendável usar Anaconda ou Miniconda para gerenciar ambientes virtuais Python e instalar pacotes.
Importante
Se você estiver no Linux ou macOS e usar um shell diferente de bash (por exemplo, zsh), poderá receber erros ao executar alguns comandos. Para contornar esse problema, use o
bash
comando para iniciar um novo shell bash e executar os comandos lá.Ative seu ambiente virtual Python recém-criado.
Instale o SDK Python do Azure Machine Learning.
Para configurar seu ambiente local para usar seu espaço de trabalho do Azure Machine Learning, crie um arquivo de configuração de espaço de trabalho ou use um existente.
Agora que você tem seu ambiente local configurado, está pronto para começar a trabalhar com o Azure Machine Learning. Consulte o guia de introdução do Python do Azure Machine Learning para começar.
Jupyter Notebooks
Ao executar um servidor Jupyter Notebook local, é recomendável que você crie um kernel IPython para seu ambiente virtual Python. Isso ajuda a garantir o comportamento esperado de importação de kernel e pacote.
Habilitar kernels IPython específicos do ambiente
conda install notebook ipykernel
Crie um kernel para seu ambiente virtual Python. Certifique-se de substituir
<myenv>
pelo nome do seu ambiente virtual Python.ipython kernel install --user --name <myenv> --display-name "Python (myenv)"
Inicie o servidor Jupyter Notebook
Consulte o repositório de blocos de anotações do Azure Machine Learning para começar a usar o Azure Machine Learning e o Jupyter Notebooks. Consulte também o repositório orientado pela comunidade, AzureML-Examples.
Visual Studio Code
Para usar o Visual Studio Code para desenvolvimento:
Instalar o Visual Studio Code.
Instale a extensão de código do Visual Studio do Azure Machine Learning (visualização).
Importante
Esta funcionalidade está atualmente em pré-visualização pública. Esta versão de pré-visualização é fornecida sem um contrato de nível de serviço e não a recomendamos para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas.
Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.
Depois de ter a extensão de código do Visual Studio instalada, use-a para:
- Gerenciar seus recursos do Azure Machine Learning
- Iniciar o Visual Studio Code remotamente conectado a uma instância de computação (visualização)
- Executar e depurar experimentos
- Implante modelos treinados (CLI v2).
Instância de computação do Azure Machine Learning
A instância de computação do Azure Machine Learning é uma estação de trabalho do Azure segura e baseada na nuvem que fornece aos cientistas de dados um servidor Jupyter Notebook, JupyterLab e um ambiente de aprendizado de máquina totalmente gerenciado.
Não há nada para instalar ou configurar para uma instância de computação.
Crie um a qualquer momento a partir do seu espaço de trabalho do Azure Machine Learning. Forneça apenas um nome e especifique um tipo de VM do Azure. Experimente agora com Criar recursos para começar.
Para saber mais sobre instâncias de computação, incluindo como instalar pacotes, consulte Criar e gerenciar uma instância de computação do Azure Machine Learning.
Gorjeta
Para evitar incorrer em encargos para uma instância de computação não utilizada, interrompa a instância de computação. Ou habilite o desligamento ocioso para a instância de computação.
Além de um servidor Jupyter Notebook e JupyterLab, você pode usar instâncias de computação no recurso de bloco de anotações integrado dentro do estúdio de Aprendizado de Máquina do Azure.
Você também pode usar a extensão Azure Machine Learning Visual Studio Code para se conectar a uma instância de computação remota usando o VS Code.
Máquina Virtual de Ciência de Dados
A VM de Ciência de Dados é uma imagem de máquina virtual (VM) personalizada que você pode usar como um ambiente de desenvolvimento. Ele foi projetado para o trabalho de ciência de dados que é pré-configurado ferramentas e software como:
- Pacotes como TensorFlow, PyTorch, Scikit-learn, XGBoost e o SDK do Azure Machine Learning
- Ferramentas populares de ciência de dados, como o Spark Standalone e o Drill
- Ferramentas do Azure, como a CLI do Azure, AzCopy e Storage Explorer
- Ambientes de desenvolvimento integrados (IDEs), como Visual Studio Code e PyCharm
- Servidor Notebook Jupyter
Para obter uma lista mais abrangente das ferramentas, consulte o Guia de ferramentas de VM de Ciência de Dados.
Importante
Se você planeja usar a VM de Ciência de Dados como um destino de computação para seus trabalhos de treinamento ou inferência, apenas o Ubuntu é suportado.
Para usar a VM de Ciência de Dados como um ambiente de desenvolvimento:
Crie uma VM de Ciência de Dados usando um dos seguintes métodos:
Use o portal do Azure para criar uma DSVM Ubuntu ou Windows .
Utilizar a CLI do Azure
Para criar uma VM de Ciência de Dados do Ubuntu, use o seguinte comando:
# 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
Para criar uma DSVM do Windows, use o seguinte comando:
# 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
Ative o ambiente conda que contém o SDK do Azure Machine Learning.
Para Ubuntu Data Science VM:
conda activate py36
Para VM de Ciência de Dados do Windows:
conda activate AzureML
Para configurar a VM de Ciência de Dados para usar seu espaço de trabalho do Azure Machine Learning, crie um arquivo de configuração de espaço de trabalho ou use um existente.
Semelhante aos ambientes locais, você pode usar o Visual Studio Code e a extensão Azure Machine Learning Visual Studio Code para interagir com o Azure Machine Learning.
Para obter mais informações, consulte Máquinas virtuais de ciência de dados.
Próximos passos
- Treine e implante um modelo no Azure Machine Learning com o conjunto de dados MNIST.
- Consulte a referência do SDK do Azure Machine Learning para Python.