Criar metas de computação para formação de modelos e implantação no estúdio Azure Machine Learning

Neste artigo, aprenda a criar e gerir alvos de computação no estúdio Azure Machine. Também pode criar e gerir alvos de computação com:

Pré-requisitos

O que é um alvo computacional?

Com a Azure Machine Learning, pode treinar o seu modelo numa variedade de recursos ou ambientes, coletivamente referidos como metas de computação. Um alvo de computação pode ser uma máquina local ou um recurso em nuvem, como um Azure Machine Learning Compute, Azure HDInsight ou uma máquina virtual remota. Também pode criar metas de computação para a implementação do modelo, conforme descrito em "Onde e como implementar os seus modelos".

Ver metas de cálculo

Para ver todos os alvos de cálculo para o seu espaço de trabalho, utilize os seguintes passos:

  1. Navegue para o estúdio Azure Machine Learning.

  2. Em Gestão, selecione Compute.

  3. Selecione separadores no topo para mostrar cada tipo de alvo de computação.

    Ver lista de alvos de computação

Criar alvo de cálculo

Siga os passos anteriores para ver a lista de alvos de computação. Em seguida, use estes passos para criar um alvo de computação:

  1. Selecione o separador na parte superior correspondente ao tipo de cálculo que irá criar.

  2. Se não tiver alvos de cálculo, selecione Criar no meio da página.

    Criar alvo de cálculo

  3. Se vir uma lista de recursos de computação, selecione +Novo acima da lista.

    Selecione novo

  4. Preencha o formulário para o seu tipo de cálculo:

  1. Selecione Criar.

  2. Ver o estado da operação de criação selecionando o alvo do cálculo na lista:

    Ver estado do cálculo a partir de uma lista

Instância computacional

Use os passos acima para criar a instância de computação. Em seguida, preencha o formulário da seguinte forma:

Criar uma nova instância computacional

Campo Descrição
Nome da computação
  • O nome é necessário e deve ter entre 3 a 24 caracteres de comprimento.
  • Os caracteres válidos são letras maiúsculas e minúsculas, dígitos e o - personagem.
  • O nome deve começar com uma carta
  • O nome tem de ser único em todos os cálculos existentes dentro de uma região de Azure. Verá um alerta se o nome que escolher não for único
  • Se - o caráter é usado, então precisa ser seguido por pelo menos uma letra mais tarde no nome
  • Tipo de máquina virtual Escolha CPU ou GPU. Este tipo não pode ser alterado após a criação
    Tamanho da máquina virtual Os tamanhos de máquina virtual suportados podem ser restringidos na sua região. Consulte a lista de disponibilidades
    Ativar/desativar o acesso ao SSH O acesso ao SSH é desativado por predefinição. O acesso ao SSH não pode ser. mudou após a criação. Certifique-se de que permite o acesso se planeia depurar interativamente com o vs Code Remote
    Definições avançadas Opcional. Configurar uma rede virtual. Especifique o grupo de Recursos, rede virtual e sub-rede para criar a instância computacional dentro de uma Rede Virtual Azure (vnet). Para mais informações, consulte estes requisitos de rede para vnet. Utilize também definições avançadas para especificar um script de configuração.

    Clusters computacional

    Crie um cluster de computação de nó único ou multi-nós para a sua formação, inferenculação de lote ou cargas de aprendizagem de reforço. Use os passos acima para criar o cluster de cálculo. Em seguida, preencha o formulário da seguinte forma:

    Campo Descrição
    Nome da computação
  • O nome é necessário e deve ter entre 3 a 24 caracteres de comprimento.
  • Os caracteres válidos são letras maiúsculas e minúsculas, dígitos e o - personagem.
  • O nome deve começar com uma carta
  • O nome tem de ser único em todos os cálculos existentes dentro de uma região de Azure. Verá um alerta se o nome que escolher não for único
  • Se - o caráter é usado, então precisa ser seguido por pelo menos uma letra mais tarde no nome
  • Tipo de máquina virtual Escolha CPU ou GPU. Este tipo não pode ser alterado após a criação
    Prioridade da máquina virtual Escolha prioridade dedicada ou baixa. As máquinas virtuais de baixa prioridade são mais baratas, mas não garantem os nós de computação. O seu trabalho pode ser antecipado.
    Tamanho da máquina virtual Os tamanhos de máquina virtual suportados podem ser restringidos na sua região. Consulte a lista de disponibilidades
    Número mínimo de nós Número mínimo de nós que pretende providenciar. Se quiser um número dedicado de nós, desemote a contagem aqui. Poupe dinheiro definindo o mínimo para 0, para que não pague por nenhum nós quando o cluster estiver inativo.
    Número máximo de nós Número máximo de nós que pretende providenciar. O cálculo irá autodimensionar-se automaticamente para um máximo desta contagem de nós quando um trabalho é submetido.
    Definições avançadas Opcional. Configurar uma rede virtual. Especifique o grupo de Recursos, rede virtual e sub-rede para criar a instância computacional dentro de uma Rede Virtual Azure (vnet). Para mais informações, consulte estes requisitos de rede para vnet. Também anexar identidades geridas para conceder acesso a recursos

    Configurar identidade gerida

    Os clusters de computação Azure Machine Learning também suportam identidades geridas para autenticar o acesso aos recursos do Azure sem incluir credenciais no seu código. Existem dois tipos de identidades geridas:

    • Uma identidade gerida atribuída pelo sistema é ativada diretamente no cluster de cálculo de Aprendizagem de Máquinas Azure. O ciclo de vida de uma identidade atribuída ao sistema está diretamente ligado ao cluster compute. Se o cluster de cálculo for eliminado, o Azure limpa automaticamente as credenciais e a identidade em Azure AD.
    • Uma identidade gerida atribuída ao utilizador é um recurso autónomo da Azure fornecido através do serviço de Identidade Gerida Azure. Pode atribuir uma identidade gerida atribuída ao utilizador a vários recursos, e persiste durante o tempo que quiser.

    Durante a criação do cluster ou ao editar detalhes do cluster compute, nas definições Avançadas, alternar Atribuir uma identidade gerida e especificar uma identidade atribuída ao sistema ou identidade atribuída ao utilizador.

    Utilização de identidade gerida

    A identidade gerida por defeito é a identidade gerida atribuída pelo sistema ou a primeira identidade gerida atribuída pelo utilizador.

    Durante uma corrida existem duas aplicações de identidade:

    1. O sistema utiliza uma identidade para configurar os suportes de armazenamento do utilizador, o registo de contentores e as lojas de dados.

      • Neste caso, o sistema utilizará a identidade gerida por defeito.
    2. O utilizador aplica uma identidade para aceder a recursos a partir do código para uma execução submetida

      • Neste caso, forneça o client_id correspondente à identidade gerida que pretende utilizar para recuperar uma credencial.
      • Em alternativa, obtenha a identificação do cliente atribuído pelo utilizador através da variável ambiente DEFAULT_IDENTITY_CLIENT_ID.

      Por exemplo, para recuperar um símbolo para uma loja de dados com a identidade gerida por defeito:

      client_id = os.environ.get('DEFAULT_IDENTITY_CLIENT_ID')
      credential = ManagedIdentityCredential(client_id=client_id)
      token = credential.get_token('https://storage.azure.com/')
      

    Aglomerados de inferência

    Importante

    A utilização do Serviço Azure Kubernetes com Azure Machine Learning tem várias opções de configuração. Alguns cenários, como o networking, requerem configuração e configuração adicionais. Para obter mais informações sobre a utilização da AKS com Azure ML, consulte Criar e anexar um cluster de serviço Azure Kubernetes.

    Crie ou anexe um cluster Azure Kubernetes Service (AKS) para inferenização em larga escala. Utilize os passos acima para criar o cluster AKS. Em seguida, preencha o formulário da seguinte forma:

    Campo Descrição
    Nome da computação
  • O nome é necessário. O nome deve ter entre 2 a 16 caracteres.
  • Os caracteres válidos são letras maiúsculas e minúsculas, dígitos e o - personagem.
  • O nome deve começar com uma carta
  • O nome tem de ser único em todos os cálculos existentes dentro de uma região de Azure. Verá um alerta se o nome que escolher não for único
  • Se - o caráter é usado, então precisa ser seguido por pelo menos uma letra mais tarde no nome
  • Kubernetes Service Selecione Create New e preencha o resto do formulário. Ou selecione Use existente e, em seguida, selecione um cluster AKS existente a partir da sua subscrição.
    Region Selecione a região onde o cluster será criado
    Tamanho da máquina virtual Os tamanhos de máquina virtual suportados podem ser restringidos na sua região. Consulte a lista de disponibilidades
    Finalidade do cluster Selecione Produção ou Teste de Dev
    Número de nós O número de nós multiplicados pelo número de núcleos (vCPUs) da máquina virtual deve ser superior ou igual a 12.
    Configuração de rede Selecione Advanced para criar o cálculo dentro de uma rede virtual existente. Para obter mais informações sobre a AKS numa rede virtual, consulte o isolamento da Rede durante o treino e inferência com pontos finais privados e redes virtuais.
    Ativar a configuração SSL Utilize isto para configurar o certificado SSL no cálculo

    Cálculo anexo

    Para utilizar alvos de cálculo criados fora do espaço de trabalho Azure Machine Learning, deve anexá-los. A fixação de um alvo de computação torna-o disponível para o seu espaço de trabalho. Utilize o cálculo anexado para anexar um alvo de computação para o treino. Utilize clusters de inferência para anexar um cluster AKS para inferenar.

    Utilize os passos acima para anexar um cálculo. Em seguida, preencha o formulário da seguinte forma:

    1. Insira um nome para o alvo do cálculo.

    2. Selecione o tipo de computação a fixar. Nem todos os tipos de cálculo podem ser ligados a partir do estúdio Azure Machine Learning. Os tipos de cálculo que podem ser atualmente ligados para a formação incluem:

      • Uma máquina virtual Azure (para anexar uma máquina virtual de ciência de dados)
      • Azure Databricks (para utilização em gasodutos de aprendizagem automática)
      • Azure Data Lake Analytics (para utilização em gasodutos de aprendizagem automática)
      • Azure HDInsight
    3. Preencha o formulário e forneça valores para as propriedades necessárias.

      Nota

      A Microsoft recomenda que utilize as chaves SSH, que são mais seguras do que as palavras-passe. As palavras-passe são vulneráveis a ataques de força bruta. As chaves SSH dependem de assinaturas criptográficas. Para obter informações sobre como criar chaves SSH para utilização com Máquinas Virtuais Azure, consulte os seguintes documentos:

    4. Selecione Anexar.

    Passos seguintes

    Depois de um alvo ser criado e ligado ao seu espaço de trabalho, utiliza-o na configuração de execução com um ComputeTarget objeto:

    from azureml.core.compute import ComputeTarget
    myvm = ComputeTarget(workspace=ws, name='my-vm-name')