Introdução ao Azure Machine Learning para Visual Studio CodeGet started with Azure Machine Learning for Visual Studio Code

Neste artigo, você aprenderá a usar a extensão para Azure Machine Learning para Visual Studio Code para treinar e implantar o aprendizado de máquina e modelos de aprendizado profundo.In this article, you'll learn how to use the extension for Azure Machine Learning for Visual Studio Code to train and deploy machine learning and deep learning models.

O serviço de Azure Machine Learning fornece suporte para experimentos que você executa localmente e em destinos de computação remota.The Azure Machine Learning service provides support for experiments that you run locally and on remote compute targets. Para cada fase experimental, pode manter um registo de várias execuções, muitas vezes, o que precisar tentar iterativamente técnicas diferentes, hiperparâmetros e muito mais.For every experiment, you can keep track of multiple runs as often you need to iteratively try different techniques, hyperparameters, and more. Pode utilizar o Azure Machine Learning para controlar métricas personalizadas e experimente execuções, ativar a capacidade de reprodução de ciência de dados e auditability.You can use Azure Machine Learning to track custom metrics and experiment runs, enabling data science reproducibility and auditability.

Você também pode implantar esses modelos para suas necessidades de teste e produção.You can also deploy these models for your testing and production needs.

Pré-requisitosPrerequisites

Instalar a extensão para Azure Machine Learning para Visual Studio CodeInstall the extension for Azure Machine Learning for Visual Studio Code

Quando você instala a extensão de Azure Machine Learning, mais duas extensões são instaladas automaticamente (se você tiver acesso à Internet).When you install the Azure Machine Learning extension, two more extensions are automatically installed (if you have internet access). Eles são a extensão de conta do Azure e a extensão Microsoft Python.They're the Azure Account extension and the Microsoft Python extension.

Para trabalhar com Azure Machine Learning, você precisa transformar Visual Studio Code em um IDE (ambiente de desenvolvimento integrado) do Python.To work with Azure Machine Learning, you need to turn Visual Studio Code into a Python-integrated development environment (IDE). Você precisa da extensão Microsoft Python para usar o Python no Visual Studio Code.You need the Microsoft Python extension to use Python in Visual Studio Code. Essa extensão é instalada automaticamente com a extensão Azure Machine Learning.This extension is automatically installed with the Azure Machine Learning extension. A extensão torna Visual Studio Code um IDE excelente e funciona em qualquer sistema operacional com uma variedade de intérpretes de Python.The extension makes Visual Studio Code an excellent IDE, and it works on any operating system with a variety of Python interpreters. A extensão do Microsoft Python usa toda a potência do Visual Studio Code para fornecer preenchimento automático, IntelliSense, refiapo, depuração e teste de unidade.The Microsoft Python extension uses all of the power of Visual Studio Code to provide autocomplete, IntelliSense, linting, debugging, and unit testing. A extensão também permite que você alterne facilmente entre ambientes Python, incluindo ambientes virtuais e Conda.The extension also allows you to easily switch between Python environments, including virtual and conda environments. Para obter mais informações sobre como editar, executar e depurar o código Python, consulte o tutorial do Python Hello-World.For more information about editing, running, and debugging Python code, see the Python hello-world tutorial.

Para instalar a extensão de Azure Machine Learning:To install the Azure Machine Learning extension:

  1. Abra o Visual Studio Code.Open Visual Studio Code.

  2. Em um navegador da Web, acesse Azure Machine Learning para Visual Studio Code extensão (versão prévia).In a web browser, go to Azure Machine Learning for Visual Studio Code extension (preview).

  3. Nessa página da Web, selecione instalar.On that web page, select Install.

  4. Na guia extensão, selecione instalar.On the extension tab, select Install.

  5. Uma guia de boas-vindas para a extensão é aberta no Visual Studio Code e o símbolo do Azure (descrito em vermelho na captura de tela a seguir) é adicionado à barra de atividade.A welcome tab for the extension opens in Visual Studio Code, and the Azure symbol (outlined in red in the following screenshot) is added to the activity bar.

    Ícone do Azure na barra de atividades do Visual Studio Code

  6. Na caixa de diálogo, selecione entrar e siga os prompts para autenticar com o Azure.In the dialog box, select Sign In and follow the prompts to authenticate with Azure.

    A extensão de conta do Azure, que foi instalada junto com a Azure Machine Learning para Visual Studio Code extensão, ajuda você a se autenticar com sua conta do Azure.The Azure Account extension, which was installed along with the Azure Machine Learning for Visual Studio Code extension, helps you authenticate with your Azure account. Para obter uma lista de comandos, consulte a página da extensão de conta do Azure.For a list of commands, see the page for the Azure Account extension.

Dica

Confira a extensão IntelliCode para Visual Studio Code (versão prévia).Check out the IntelliCode extension for Visual Studio Code (preview). O IntelliCode fornece um conjunto de recursos assistidos por ia para o IntelliSense no Python, como inferir as conclusões automáticas mais relevantes com base no contexto de código atual.IntelliCode provides a set of AI-assisted capabilities for IntelliSense in Python, such as inferring the most relevant autocompletions based on the current code context.

Instalar o SDK do Azure Machine LearningInstall the Azure Machine Learning SDK

  1. Verifique se o Python 3,5 ou posterior está instalado e é reconhecido pelo Visual Studio Code.Make sure that Python 3.5 or later is installed and is recognized by Visual Studio Code. Se você instalá-lo agora, reinicie Visual Studio Code e Selecione um intérprete Python.If you install it now, restart Visual Studio Code and select a Python interpreter.

  2. Na janela do terminal integrado, especifique o intérprete Python a ser usado.In the integrated terminal window, specify the Python interpreter to use. Ou selecione Enter para usar o intérprete Python padrão.Or select Enter to use your default Python interpreter.

    Escolher o intérprete

  3. No canto inferior direito da janela, uma notificação é exibida, indicando que o SDK do Azure Machine Learning está sendo instalado automaticamente.In the lower-right corner of the window, a notification appears, indicating that the Azure Machine Learning SDK is being automatically installed. O ambiente do Python recém-criado é local e privado, e tem os pré-requisitos de Visual Studio Code para trabalhar com o serviço Azure Machine Learning.The newly created Python environment is local and private, and it has the Visual Studio Code prerequisites for working with the Azure Machine Learning service.

    Instalar o SDK do Azure Machine Learning para Python

Introdução ao Azure Machine LearningGet started with Azure Machine Learning

Antes de começar a treinar e implantar modelos de aprendizado de máquina no Visual Studio Code, você precisa criar um espaço de trabalho de serviço do Azure Machine Learning na nuvem.Before you start training and deploying machine learning models in Visual Studio Code, you need to create an Azure Machine Learning service workspace in the cloud. Este espaço de trabalho conterá seus modelos e recursos.This workspace will contain your models and resources.

Para criar um espaço de trabalho e adicionar seu primeiro experimento:To create a workspace and add your first experiment:

  1. Na barra de atividade do Visual Studio Code, selecione o ícone do Azure.On the Visual Studio Code activity bar, select the Azure icon. A barra lateral Azure Machine Learning é exibida.The Azure Machine Learning sidebar appears.

    Criar um espaço de trabalhoCreate a workspace

  2. Clique com o botão direito do mouse em sua assinatura do Azure e selecione criar espaço de trabalho.Right-click your Azure subscription and select Create Workspace. Uma lista é exibida.A list appears. Na imagem animada de exemplo, o nome da assinatura é avaliação gratuitae o espaço de trabalho é TeamWorkspace.In the example animated image, the subscription name is Free Trial, and the workspace is TeamWorkspace.

  3. Selecione um grupo de recursos na lista ou crie um novo usando o assistente na paleta de comandos.Select a resource group from the list or create a new one by using the wizard in the command palette.

  4. No campo, digite um nome exclusivo e claro para o novo espaço de trabalho.In the field, type a unique and clear name for your new workspace. Na imagem de exemplo, o espaço de trabalho é denominado TeamWorkspace.In the example image, the workspace is named TeamWorkspace.

  5. Selecione Enter para criar o novo espaço de trabalho.Select Enter to create the new workspace. Ele aparece na árvore, abaixo do nome da assinatura.It appears in the tree, below the subscription name.

  6. Clique com o botão direito do mouse no nó experimento e escolha criar experimento no menu de contexto.Right-click the Experiment node, and choose Create Experiment from the context menu. Os experimentos controlam suas execuções usando Azure Machine Learning.Experiments keep track of your runs using Azure Machine Learning.

  7. No campo, insira um nome para o experimento.In the field, enter a name for your experiment. Nas capturas de tela de exemplo, o experimento é denominado MNIST.In the example screenshots, the experiment is named MNIST.

  8. Selecione Enter para criar o novo experimento.Select Enter to create the new experiment. O experimento aparece na árvore, abaixo do nome do espaço de trabalho.The experiment appears in the tree, below the workspace name.

  9. Em um espaço de trabalho, você pode clicar com o botão direito do mouse em um experimento para defini-lo como o experimento ativo .In a workspace, you can right-click an experiment to set it as the Active experiment. O experimento ativo é o experimento atual.The Active experiment is your current experiment. A pasta aberta no Visual Studio Code será vinculada a este experimento na nuvem.Your open folder in Visual Studio Code will be linked to this experiment in the cloud. Essa pasta deve conter seus scripts Python locais.This folder should contain your local Python scripts.

Agora, suas métricas-chave serão armazenadas no histórico do experimento.Now your key metrics will be stored within the experiment history. Da mesma forma, os modelos que você treinar serão automaticamente carregados para Azure Machine Learning e armazenados junto com suas métricas de teste e logs.Similarly, the models you train will be automatically uploaded to Azure Machine Learning and stored alongside your experiment metrics and logs.

Anexar uma pasta no Visual Studio CodeAttach a folder in Visual Studio Code

Criar e gerir os destinos de computaçãoCreate and manage compute targets

Com Azure Machine Learning para Visual Studio Code, você pode preparar seus dados, treinar modelos e implantá-los localmente e em destinos de computação remota.With Azure Machine Learning for Visual Studio Code, you can prepare your data, train models, and deploy them both locally and on remote compute targets.

A extensão dá suporte a vários destinos de computação remota para Azure Machine Learning.The extension supports several remote compute targets for Azure Machine Learning. Para obter mais informações, consulte a lista completa de destinos de computação com suporte para Azure Machine Learning.For more information, see the full list of supported compute targets for Azure Machine Learning.

Criar destinos de computação para Azure Machine Learning no Visual Studio CodeCreate compute targets for Azure Machine Learning in Visual Studio Code

Para criar um destino de computação:To create a compute target:

  1. Na barra de atividade do Visual Studio Code, selecione o ícone do Azure.On the Visual Studio Code activity bar, select the Azure icon. A barra lateral Azure Machine Learning é exibida.The Azure Machine Learning sidebar appears.

  2. Na vista de árvore, expanda a sua subscrição do Azure e a área de trabalho do serviço Azure Machine Learning.In the tree view, expand your Azure subscription and Azure Machine Learning service workspace. Na imagem de exemplo a seguir, o nome da assinatura é avaliação gratuitae o espaço de trabalho é TeamWorkspace.In the following example image, the subscription name is Free Trial, and the workspace is TeamWorkspace.

  3. Sob o nó de área de trabalho, clique com botão direito a computação nó e escolha criar computação.Under the workspace node, right-click the Compute node and choose Create Compute.

  4. Escolha o tipo de destino de computação da lista.Choose the compute target type from the list.

  5. Na paleta de comandos, selecione um tamanho de máquina virtual.On the command palette, select a virtual machine size.

  6. Na paleta de comandos, no campo, insira um nome para o destino de computação.On the command palette, in the field, enter a name for the compute target.

  7. No arquivo de configuração JSON que é aberto em uma nova guia, especifique as propriedades avançadas.In the JSON config file that opens on a new tab, specify any advanced properties. Você pode especificar propriedades como uma contagem máxima de nós.You can specify properties such as a maximum node count.

  8. Quando terminar de configurar o destino de computação, no canto inferior direito da janela, selecione Enviar.When you finish configuring your compute target, in the lower-right corner of the window, select Submit.

Aqui está um exemplo de como criar um AMLCompute (computação de Azure Machine Learning):Here's an example of how to create an Azure Machine Learning compute (AMLCompute):

Criar computação AML no Visual Studio CodeCreate AML compute in Visual Studio Code

O arquivo de configuração de execuçãoThe run configuration file

A extensão de Visual Studio Code cria automaticamente um destino de computação local e executa configurações para seus ambientes local e Docker no computador local.The Visual Studio Code extension automatically creates a local compute target and run configurations for your local and docker environments on your local computer. Você pode encontrar os arquivos de configuração de execução no nó de destino de computação associado.You can find the run configuration files under the associated compute target node.

Dar formação e otimizar modelosTrain and tune models

Use Azure Machine Learning para Visual Studio Code (visualização) para iterar rapidamente em seu código, percorrer e depurar e usar sua solução para controle do código-fonte.Use Azure Machine Learning for Visual Studio Code (preview) to rapidly iterate on your code, step through and debug, and use your solution for source code control.

Para executar seu experimento localmente usando Azure Machine Learning:To run your experiment locally by using Azure Machine Learning:

  1. Na barra de atividade do Visual Studio Code, selecione o ícone do Azure.On the Visual Studio Code activity bar, select the Azure icon. A barra lateral Azure Machine Learning é exibida.The Azure Machine Learning sidebar appears.

  2. Na vista de árvore, expanda a sua subscrição do Azure e a área de trabalho do serviço Azure Machine Learning.In the tree view, expand your Azure subscription and Azure Machine Learning service workspace.

  3. No nó do espaço de trabalho, expanda o nó computação e clique com o botão direito do mouse na configuração de execução da computação que você deseja usar.Under the workspace node, expand the Compute node and right-click the Run Config of the compute you want to use.

  4. Selecione execute experimentação.Select Run Experiment.

  5. No explorador de arquivos, selecione o script que você deseja executar.From the File Explorer, select the script you want to run.

  6. Selecione Exibir execução do experimento para ver o portal de Azure Machine Learning integrado para monitorar suas execuções e ver seus modelos treinados.Select View Experiment Run to see the integrated Azure Machine Learning portal to monitor your runs and see your trained models.

Aqui está um exemplo de como executar um experimento localmente:Here's an example of how to run an experiment locally:

Executar um experimento localmenteRun an experiment locally

Usar computações remotas para experimentos em Visual Studio CodeUse remote computes for experiments in Visual Studio Code

Para usar um destino de computação remota para treinamento, você precisa criar um arquivo de configuração de execução.To use a remote compute target for training, you need to create a run configuration file. Este ficheiro diz ao Azure Machine Learning não só onde executar a sua experimentação, mas também como preparar o ambiente.This file tells Azure Machine Learning not only where to run your experiment but also how to prepare the environment.

O ficheiro de dependências de condaThe conda dependencies file

Por padrão, um novo ambiente Conda é criado para você e suas dependências de instalação são gerenciadas.By default, a new conda environment is created for you, and your installation dependencies are managed. No entanto, você deve especificar suas dependências e suas versões no arquivo aml_config/conda_dependencies. yml .However, you must specify your dependencies and their versions in the aml_config/conda_dependencies.yml file.

O trecho a seguir do aml_config/conda_dependencies. yml padrão especifica tensorflow=1.12.0.The following snippet from the default aml_config/conda_dependencies.yml specifies tensorflow=1.12.0. Se você não especificar a versão da dependência, a versão mais recente será usada.If you don't specify the version of the dependency, the latest version will be used. Pode adicionar dependências adicionais no ficheiro de configuração.You can add additional dependencies in the config file.

# The dependencies defined in this file will be automatically provisioned for runs with userManagedDependencies=False.

name: project_environment
dependencies:
  # The python interpreter version.

  # Currently Azure ML only supports 3.5.2 and later.

- python=3.6.2
- tensorflow=1.12.0

- pip:
    # Required packages for AzureML execution, history, and data preparation.

  - --index-url https://azuremlsdktestpypi.azureedge.net/sdk-release/Preview/E7501C02541B433786111FE8E140CAA1
  - --extra-index-url https://pypi.python.org/simple
  - azureml-defaults

Para executar seu experimento com Azure Machine Learning em um destino de computação remota:To run your experiment with Azure Machine Learning on a remote compute target:

  1. Na barra de atividade do Visual Studio Code, selecione o ícone do Azure.On the Visual Studio Code activity bar, select the Azure icon. A barra lateral Azure Machine Learning é exibida.The Azure Machine Learning sidebar appears.

  2. Na vista de árvore, expanda a sua subscrição do Azure e a área de trabalho do serviço Azure Machine Learning.In the tree view, expand your Azure subscription and Azure Machine Learning service workspace.

  3. Na janela do editor, clique com o botão direito do mouse em seu script Python e selecione AML: Executar como experimento no Azure.In the editor window, right-click your Python script, and select AML: Run as Experiment in Azure.

  4. Na paleta de comandos, selecione o destino de computação.On the command palette, select the compute target.

  5. Na paleta de comandos, no campo, insira o nome da configuração de execução.On the command palette, in the field, enter the run configuration name.

  6. Edite o arquivo conda_dependencies. yml para especificar as dependências de tempo de execução do experimento.Edit the conda_dependencies.yml file to specify the experiment's runtime dependencies. Em seguida, no canto inferior direito da janela, selecione Enviar.Then in the lower-right corner of the window, select Submit.

  7. Selecione Exibir execução do experimento para ver o portal de Azure Machine Learning integrado para monitorar suas execuções e ver seus modelos treinados.Select View Experiment Run to see the integrated Azure Machine Learning portal to monitor your runs and see your trained models.

Aqui está um exemplo de como executar um experimento em um destino de computação remota:Here's an example of how to run an experiment on a remote compute target:

Executar um experimento em um destino remotoRun an experiment on a remote target

Implementar e gerir modelosDeploy and manage models

No Azure Machine Learning, você pode implantar e gerenciar seus modelos de aprendizado de máquina na nuvem e na borda.In Azure Machine Learning, you can deploy and manage your machine learning models in the cloud and at the edge.

Registrar seu modelo para Azure Machine Learning de Visual Studio CodeRegister your model to Azure Machine Learning from Visual Studio Code

Agora que você treinou seu modelo, você pode registrá-lo em seu espaço de trabalho.Now that you've trained your model, you can register it in your workspace. Você pode acompanhar e implantar modelos registrados.You can track and deploy registered models.

Para registrar seu modelo:To register your model:

  1. Na barra de atividade do Visual Studio Code, selecione o ícone do Azure.On the Visual Studio Code activity bar, select the Azure icon. A barra lateral Azure Machine Learning é exibida.The Azure Machine Learning sidebar appears.

  2. Na vista de árvore, expanda a sua subscrição do Azure e a área de trabalho do serviço Azure Machine Learning.In the tree view, expand your Azure subscription and Azure Machine Learning service workspace.

  3. Sob o nó de área de trabalho, clique com botão direito modelos e escolha modelo registar.Under the workspace node, right-click Models and choose Register Model.

  4. Na paleta de comandos, no campo, insira um nome de modelo.On the command palette, in the field, enter a model name.

  5. Na lista, escolha se deseja carregar um arquivo de modelo (para modelos únicos) ou uma pasta de modelo (para modelos com vários arquivos, como TensorFlow).From the list, choose whether to upload a model file (for single models) or a model folder (for models with multiple files, such as TensorFlow).

  6. Selecione o ficheiro ou pasta.Select your folder or file.

  7. Quando terminar de configurar as propriedades do modelo, no canto inferior direito da janela, selecione Enviar.When you finish configuring your model properties, in the lower-right corner of the window, select Submit.

Aqui está um exemplo de como registrar seu modelo para Azure Machine Learning:Here's an example of how to register your model to Azure Machine Learning:

Registrando um modelo para AMLRegistering a Model to AML

Implantar seu serviço de Visual Studio CodeDeploy your service from Visual Studio Code

No Visual Studio Code, você pode implantar seu serviço Web para:In Visual Studio Code, you can deploy your web service to:

  • ACI (instâncias de contêiner do Azure) para teste.Azure Container Instances (ACI) for testing.
  • AKS (serviço kubernetes do Azure) para produção.Azure Kubernetes Service (AKS) for production.

Você não precisa criar um contêiner ACI para testar com antecedência, pois os contêineres ACI são criados em tempo real.You don't need to create an ACI container to test in advance, because ACI containers are created on the fly. No entanto, você precisa configurar clusters AKS com antecedência.However, you do need to configure AKS clusters in advance. Para obter mais informações, consulte implantar modelos com o serviço de Azure Machine Learning.For more information, see Deploy models with the Azure Machine Learning service.

Para implantar um serviço Web:To deploy a web service:

  1. Na barra de atividade do Visual Studio Code, selecione o ícone do Azure.On the Visual Studio Code activity bar, select the Azure icon. A barra lateral Azure Machine Learning é exibida.The Azure Machine Learning sidebar appears.

  2. Na vista de árvore, expanda a sua subscrição do Azure e a sua área de trabalho do serviço do Azure Machine Learning.In the tree view, expand your Azure subscription and your Azure Machine Learning service workspace.

  3. Sob o nó de área de trabalho, expanda o modelos nó.Under the workspace node, expand the Models node.

  4. Clique com o botão direito do mouse no modelo que você deseja implantar e escolha implantar serviço do modelo registrado no menu de contexto.Right-click the model you want to deploy, and choose Deploy Service from Registered Model from the context menu.

  5. Na paleta de comandos, escolha o destino de computação no qual você deseja implantar.On the command palette, choose the compute target you want to deploy to.

  6. Na paleta de comandos, no campo, insira um nome para esse serviço.On the command palette, in the field, enter a name for this service.

  7. Na paleta de comandos, selecione a tecla Enter no teclado para procurar e selecionar o arquivo de script.On the command palette, select the Enter key on your keyboard to browse for and select the script file.

  8. Na paleta de comandos, selecione a tecla Enter no teclado para procurar e selecionar o arquivo de dependência Conda.On the command palette, select the Enter key on your keyboard to browse for and select the conda dependency file.

  9. Quando terminar de configurar suas propriedades de serviço, no canto inferior direito da janela, selecione Enviar para implantar.When you finish configuring your service properties, in the lower-right corner of the window, select Submit to deploy. No arquivo de propriedades do serviço, você pode especificar um arquivo do Docker local ou um arquivo Schema. JSON.In the service properties file, you can specify a local docker file or a schema.json file.

O serviço web agora é implementado.The web service is now deployed.

Veja um exemplo de como implantar um serviço Web:Here's an example of how to deploy a web service:

Implantar um serviço WebDeploy a web service

Usar atalhos de tecladoUse keyboard shortcuts

Você pode usar o teclado para acessar Azure Machine Learning recursos no Visual Studio Code.You can use the keyboard to access Azure Machine Learning features in Visual Studio Code. O atalho de teclado mais importante a ser informado é Ctrl + Shift + P, que exibe a paleta de comandos.The most important keyboard shortcut to know is Ctrl+Shift+P, which displays the command palette. Na paleta de comandos, você tem acesso a todas as funcionalidades de Visual Studio Code, incluindo atalhos de teclado para as operações mais comuns.From the command palette, you have access to all of the functionality of Visual Studio Code, including keyboard shortcuts for the most common operations.

Atalhos de teclado para Azure Machine Learning Visual Studio CodeKeyboard shortcuts for Azure Machine Learning for Visual Studio Code

Passos SeguintesNext steps