O que são destinos de computação no Azure Machine Learning?

Um destino de computação é um recurso de computação ou um ambiente designado em que você executa o script de treinamento ou hospeda a implantação do serviço. Essa localização pode ser o computador local ou um recurso de computação baseado em nuvem. O uso de destinos de computação facilita a alteração posterior do ambiente de computação sem a necessidade de alterar o código.

O Azure Machine Learning tem suporte variado nos diferentes destinos de computação. Em um ciclo de vida típico de desenvolvimento de modelo, você pode:

  1. Começar desenvolvendo o modelo e experimentando com um pequeno volume de dados. Nesta fase, use o ambiente local, como um computador local ou uma VM (máquina virtual) baseada em nuvem, como o destino de computação.
  2. Escale verticalmente para dados maiores ou faça um treinamento distribuído usando um desses destinos de computação de treinamento.
  3. Depois que o modelo estiver pronto, implante-o em um ambiente de hospedagem na Web com um destes destinos de computação de implantação.

Os recursos de computação usados para os destinos de computação são anexados a um workspace. Os destinos de computação diferentes do computador local são compartilhados pelos usuários do workspace.

Destinos de computação de treinamento

Ao escalar verticalmente o treinamento em conjuntos de dados maiores ou fazer um treinamento distribuído, use a computação do Azure Machine Learning para criar um cluster de vários nós ou de nó único que será escalado automaticamente sempre que você enviar um trabalho. Você também pode anexar um recurso de computação próprio, embora o suporte para diferentes cenários possa variar.

Os destinos de computação podem ser reutilizados pelos trabalhos de treinamento. Por exemplo, após anexar uma VM remota ao seu workspace, você pode reutilizá-la para vários trabalhos. Para pipelines de machine learning, use a etapa do pipeline apropriada para cada destino de computação.

Você pode usar qualquer um dos recursos a seguir para um destino de computação de treinamento para a maioria dos trabalhos. Nem todos os recursos podem ser usados para machine learning automatizado, pipelines de machine learning ou designer. O Azure Databricks pode ser usado como um recurso de treinamento para execuções locais e pipelines de aprendizado de máquina, mas não como um destino remoto para outro treinamento.

Destinos de treinamento Machine learning automatizado Pipelines do aprendizado de máquina Designer do Azure Machine Learning
Computador local Sim    
Cluster de computação do Azure Machine Learning Sim Sim Sim
Computação sem servidor do Azure Machine Learning Sim Sim Sim
Instância de computação do Azure Machine Learning Sim (por meio do SDK) Sim Yes
Kubernetes do Azure Machine Learning Yes Sim
VM remota Sim Sim  
Pools do Spark do Synapse (versão prévia) Sim (somente no modo local do SDK) Sim  
Azure Databricks Sim (somente no modo local do SDK) Sim  
Azure Data Lake Analytics   Sim  
Azure HDInsight   Sim  
Lote do Azure   Sim  

Dica

A instância de computação tem um disco de SO de 120 GB. Se você ficar sem espaço em disco, use o terminal para limpar pelo menos 1-2 GB antes de parar ou reiniciar a instância de computação.

Destinos de computação para inferência

Ao executar a inferência, o Azure Machine Learning cria um contêiner do Docker que hospeda o modelo e os recursos associados necessários para usá-lo. Em seguida, esse contêiner será usado em um destino de computação.

O destino de computação que você usa para hospedar seu modelo afeta o custo e a disponibilidade do ponto de extremidade implantado. Use esta tabela para escolher um destino de computação apropriado.

Destino de computação Usado para Suporte de GPU Descrição
Pontos de Extremidade do Machine Learning Inferência em tempo real

Inferência de lote
Sim Computação totalmente gerenciada para tempo real (pontos de extremidade online gerenciados) e pontuação em lote (pontos de extremidade em lote) na computação sem servidor.
Kubernetes do Azure Machine Learning Inferência em tempo real

Inferência de lote
Sim Execute cargas de trabalho de inferência em clusters Kubernetes locais, de nuvem e borda.
Destino de computação Usado para Suporte de GPU Descrição
Serviço Web local Teste/depuração   Use para teste e solução de problemas limitados. A aceleração de hardware depende do uso de bibliotecas no sistema local.
Kubernetes do Azure Machine Learning Inferência em tempo real Sim Execute cargas de trabalho de inferência na nuvem.
Instâncias de Contêiner do Azure Inferência em tempo real

Recomendado apenas para fins de desenvolvimento/teste.
  Use para cargas de trabalho baseadas em CPU de baixa escala que exigem menos de 48 GB de RAM. Não exige que você gerencie um cluster.

Adequado apenas para modelos com menos de 1 GB.

Com suporte no designer.

Observação

Ao escolher uma SKU de cluster, primeiro escale verticalmente e, em seguida, escale horizontalmente. Comece com um computador que tenha 150% da RAM de que seu modelo requer, perfile o resultado e localize um computador que tenha o desempenho de que você precisa. Depois de aprender isso, aumente o número de computadores para atender à sua necessidade de inferência simultânea.

Computação (gerenciada) do Azure Machine Learning

O Azure Machine Learning cria e gerencia os recursos de computação gerenciados. Esse tipo de computação é otimizado para cargas de trabalho de aprendizado de máquina. Clusters de computação do Azure Machine Learning, computação sem servidor e instâncias de computação são as únicas computações gerenciadas.

Não é necessário criar computação sem servidor. Você pode criar instâncias de computação ou clusters de cálculo do Azure Machine Learning por meio dos seguintes:

Observação

Em vez de criar um cluster de cálculo, use a computação sem servidor para descarregar o gerenciamento do ciclo de vida da computação para o Azure Machine Learning.

Quando criados, esses recursos de computação passam a fazer parte automaticamente do seu workspace, ao contrário de outros tipos de destinos de computação.

Funcionalidade Cluster de computação Instância de computação
Cluster de vários nós ou de nó único Cluster de nó único
É escalado automaticamente toda vez que você envia um trabalho
Gerenciamento automático de clusters e agendamento de trabalhos
Suporte para recursos de CPU e GPU

Observação

Para evitar encargos quando a computação estiver ociosa:

Séries e tamanhos de VM com suporte

Importante

Se sua instância de computação ou clusters de computação forem baseados em alguma dessas séries, recrie com outro tamanho de VM antes da data de desativação para evitar a interrupção do serviço.

Essas séries serão desativadas em 31 de agosto de 2023:

Essas séries serão desativadas em 31 de agosto de 2024:

Ao selecionar um tamanho de nó para um recurso de computação gerenciado no Azure Machine Learning, você pode escolher entre os tamanhos de VM selecionados no Azure. O Azure oferece uma variedade de tamanhos para o Linux e o Windows em diferentes cargas de trabalho. Para saber mais, confira Tipos e tamanhos de VM.

Há algumas exceções e limitações para escolher um tamanho de VM:

  • Não há suporte para algumas séries de VMs no Azure Machine Learning.
  • Algumas séries de VM, como GPUs e outras SKUs especiais, podem inicialmente não aparecer em sua lista de VMs disponíveis. No entanto, você ainda poderá usá-las após solicitar uma alteração de cota. Para obter mais informações sobre a solicitação de cotas, confira Cota de solicitação e aumentos de limite. Veja a tabela a seguir para saber mais sobre as séries com suporte.
Séries de VMs com suporte Categoria Com suporte por
DDSv4 Propósito geral Clusters e instância de computação
Dv2 Propósito geral Clusters e instância de computação
Dv3 Propósito geral Clusters e instância de computação
DSv2 Propósito geral Clusters e instância de computação
DSv3 Propósito geral Clusters e instância de computação
EAv4 Otimizado para memória Clusters e instância de computação
Ev3 Otimizado para memória Clusters e instância de computação
ESv3 Otimizado para memória Clusters e instância de computação
FSv2 Computação otimizada Clusters e instância de computação
FX Computação otimizada Clusters de cálculo
H Computação de alto desempenho Clusters e instância de computação
HB Computação de alto desempenho Clusters e instância de computação
HBv2 Computação de alto desempenho Clusters e instância de computação
HBv3 Computação de alto desempenho Clusters e instância de computação
HC Computação de alto desempenho Clusters e instância de computação
LSv2 Otimizado para armazenamento Clusters e instância de computação
M Otimizado para memória Clusters e instância de computação
NC GPU Clusters e instância de computação
Promocional NC GPU Clusters e instância de computação
NCv2 GPU Clusters e instância de computação
NCv3 GPU Clusters e instância de computação
ND GPU Clusters e instância de computação
NDv2 GPU Clusters e instância de computação
NV GPU Clusters e instância de computação
NVv3 GPU Clusters e instância de computação
NCasT4_v3 GPU Clusters e instância de computação
NDasrA100_v4 GPU Clusters e instância de computação

Embora o Azure Machine Learning dê suporte a essas séries de VMs, elas podem não estar disponíveis em todas as regiões do Azure. Para verificar se a série de VMs está disponível, confira Produtos disponíveis por região.

Observação

O Azure Machine Learning não dá suporte a todos os tamanhos de VM com suporte na computação do Azure. Para listar os tamanhos de VM disponíveis, use o seguinte método:

Observação

O Azure Machine Learning não dá suporte a todos os tamanhos de VM com suporte na computação do Azure. Para listar os tamanhos de VM disponíveis, use um dos seguintes métodos:

Se você usar destinos de computação habilitados para GPU, recomendamos garantir a instalação de drivers adequados do CUDA no ambiente de treinamento. Considere a seguinte tabela para determinar a versão adequada do CUDA a ser usada:

Arquitetura da GPU Série de VMs do Azure Versões do CUDA compatíveis
Ampere NDA100_v4 11.0+
Turing NCT4_v3 10.0+
Volta NCv3 e NDv2 9.0+
Pascal NCv2 e ND 9.0+
Maxwell NV e NVv3 9.0+
Kepler NC e NC Promocional 9.0+

Além de garantir que a versão e o hardware do CUDA são compatíveis, verifique também se a versão do CUDA é compatível com a versão da estrutura de machine learning que você está usando:

Isolamento de computação

A computação do Azure Machine Learning oferece tamanhos de VM isolados para um tipo de hardware específico e dedicados a um só cliente. Os tamanhos de VM isolados são mais adequados para cargas de trabalho que exigem um alto grau de isolamento de cargas de trabalho de outros clientes por motivos que incluem o cumprimento de requisitos de conformidade e regulatórios. Utilizar um tamanho isolado garante que a sua VM só seja executada na instância de servidor específica.

As ofertas atuais de VMs isoladas incluem:

  • Standard_M128ms
  • Standard_F72s_v2
  • Standard_NC24s_v3
  • Standard_NC24rs_v3 (com capacidade para RDMA)

Para saber mais sobre o isolamento, confira Isolamento na nuvem pública do Azure.

Computação não gerenciada

O Azure Machine Learning não gerencia um destino de computação não gerenciado. Você cria esse tipo de destino de computação fora do Azure Machine Learning e o anexa ao seu workspace. Os destinos de computação não gerenciados podem exigir etapas adicionais para manter ou aprimorar o desempenho de cargas de trabalho de machine learning.

O Azure Machine Learning é compatível com os seguintes tipos de computação:

  • Máquinas virtuais remotas
  • Azure HDInsight
  • Azure Databricks
  • Análise Azure Data Lake

Para obter mais informações, consulte Gerenciar recursos de computação.

Próxima etapa