Quais são os destinos de computação no Azure Machine Learning?

Um destino de computação é um recurso ou ambiente de computação designado onde você executa seu script de treinamento ou hospeda sua implantação de serviço. Esse local pode ser sua máquina 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 variável em diferentes destinos de computação. Em um ciclo de vida típico de desenvolvimento de modelo, você pode:

  1. Comece por desenvolver e experimentar uma pequena quantidade de dados. Nesta etapa, use seu ambiente local, como um computador local ou uma máquina virtual (VM) baseada em nuvem, como seu destino de computação.
  2. Aumente a escala para dados maiores ou faça treinamento distribuído usando um desses destinos de computação de treinamento.
  3. Depois que seu modelo estiver pronto, implante-o em um ambiente de hospedagem na Web com um desses destinos de computação de implantação.

Os recursos de computação que você usa para seus destinos de computação são anexados a um espaço de trabalho. Recursos de computação diferentes da máquina local são compartilhados pelos usuários do espaço de trabalho.

Treinamento de alvos computacionais

À medida que você amplia seu treinamento em conjuntos de dados maiores ou executa treinamento distribuído, use a computação do Aprendizado de Máquina do Azure para criar um cluster de um ou vários nós que é dimensionado automaticamente cada vez que você envia um trabalho. Você também pode anexar seu próprio recurso de computação, embora o suporte para diferentes cenários possa variar.

Os alvos de computação podem ser reutilizados de um trabalho de treinamento para o próximo. Por exemplo, depois de anexar uma VM remota ao seu espaço de trabalho, você pode reutilizá-la para vários trabalhos. Para pipelines de aprendizado de máquina, use a etapa de pipeline apropriada para cada destino de computação.

Você pode usar qualquer um dos seguintes recursos para um destino de computação de treinamento para a maioria dos trabalhos. Nem todos os recursos podem ser usados para aprendizado de máquina automatizado, pipelines de aprendizado de máquina 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 outros treinamentos.

Objetivos de formação Aprendizagem automática de máquina Pipelines de 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 (através do SDK) Sim Sim
Azure Machine Learning Kubernetes Sim Sim
VM remota Sim Sim  
Piscinas Apache Spark (pré-visualização) 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  
Azure Batch   Sim  

Gorjeta

A instância de computação tem um disco do 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 Aprendizado de Máquina do Azure cria um contêiner do Docker que hospeda o modelo e os recursos associados necessários para usá-lo. Esse contêiner é 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 Utilizado para Suporte de GPU Description
Pontos finais do Azure Machine Learning Inferência em tempo real

Inferência de lote
Sim Cálculos totalmente gerenciados para computação em tempo real (endpoints online gerenciados) e pontuação em lote (endpoints em lote) em computação sem servidor.
Azure Machine Learning Kubernetes Inferência em tempo real

Inferência de lote
Sim Execute cargas de trabalho de inferência em clusters Kubernetes locais, na nuvem e de borda.
Destino de computação Utilizado para Suporte de GPU Description
Serviço Web local Teste/depuração   Use para testes limitados e solução de problemas. A aceleração de hardware depende do uso de bibliotecas no sistema local.
Azure Machine Learning Kubernetes Inferência em tempo real Sim Execute cargas de trabalho de inferência na nuvem.
Azure Container Instances 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 requer que você gerencie um cluster.

Adequado apenas para modelos com menos de 1 GB de tamanho.

Suportado no designer.

Nota

Ao escolher uma SKU de cluster, primeiro aumente a escala e, em seguida, diminua. Comece com uma máquina que tenha 150% da RAM que o seu modelo requer, perfile o resultado e encontre uma máquina que tenha o desempenho que você precisa. Depois de aprender isso, aumente o número de máquinas para atender à sua necessidade de inferência simultânea.

Computação do Azure Machine Learning (gerenciada)

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. Os clusters de computação do Azure Machine Learning, a computação sem servidor e as instâncias de computação são os únicos cálculos gerenciados.

Não há necessidade de criar computação sem servidor. Você pode criar instâncias de computação ou clusters de computação do Azure Machine Learning a partir de:

Nota

Em vez de criar um cluster de computação, 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 são automaticamente parte do seu espaço de trabalho, ao contrário de outros tipos de destinos de computação.

Funcionalidade Cluster de cálculo Instância de computação
Cluster de um ou vários nós Cluster de nó único
Dimensiona automaticamente cada vez que você envia um trabalho
Gerenciamento automático de cluster e agendamento de tarefas
Suporte para recursos de CPU e GPU

Nota

Para evitar cobranças quando a computação estiver ociosa:

Série e tamanhos de VM suportados

Importante

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

Estas séries serão aposentadas em 31 de agosto de 2023:

Estas séries serão aposentadas em 31 de agosto de 2024:

Ao selecionar um tamanho de nó para um recurso de computação gerenciado no Aprendizado de Máquina do Azure, você pode escolher entre os tamanhos de VM selecionados disponíveis no Azure. O Azure oferece uma variedade de tamanhos para Linux e Windows para diferentes cargas de trabalho. Para saber mais, consulte Tipos e tamanhos de VM.

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

  • Algumas séries de VM não são suportadas no Azure Machine Learning.
  • Algumas séries de VMs, como GPUs e outras SKUs especiais, podem não aparecer inicialmente na sua lista de VMs disponíveis. Mas você ainda pode usá-los, depois de solicitar uma alteração de cota. Para obter mais informações sobre como solicitar cotas, consulte Solicitar aumentos de cota e limite. Consulte a tabela a seguir para saber mais sobre as séries suportadas.
Série VM suportada Categoria Apoiado por
DDSv4 Fins gerais Computação de clusters e instância
DV2 Fins gerais Computação de clusters e instância
DV3 Fins gerais Computação de clusters e instância
DSv2 Fins gerais Computação de clusters e instância
DSv3 Fins gerais Computação de clusters e instância
EAv4 Com otimização de memória Computação de clusters e instância
Ev3 Com otimização de memória Computação de clusters e instância
ESv3 Com otimização de memória Computação de clusters e instância
FSv2 Com otimização de computação Computação de clusters e instância
FX Com otimização de computação Clusters de computação
H Computação de elevado desempenho Computação de clusters e instância
HB Computação de elevado desempenho Computação de clusters e instância
HBv2 Computação de elevado desempenho Computação de clusters e instância
HBv3 Computação de elevado desempenho Computação de clusters e instância
HC Computação de elevado desempenho Computação de clusters e instância
LSv2 Com otimização de armazenamento Computação de clusters e instância
M Com otimização de memória Computação de clusters e instância
N.º GPU Computação de clusters e instância
Promoção NC GPU Computação de clusters e instância
NCv2 GPU Computação de clusters e instância
NCv3 GPU Computação de clusters e instância
ND GPU Computação de clusters e instância
NDv2 GPU Computação de clusters e instância
NV GPU Computação de clusters e instância
NVv3 GPU Computação de clusters e instância
NCasT4_v3 GPU Computação de clusters e instância
NDasrA100_v4 GPU Computação de clusters e instância

Embora o Azure Machine Learning ofereça suporte a essas séries de VMs, elas podem não estar disponíveis em todas as regiões do Azure. Para verificar se as séries de VM estão disponíveis, consulte Produtos disponíveis por região.

Nota

O Azure Machine Learning não suporta todos os tamanhos de VM suportados pelo Azure Compute. Para listar os tamanhos de VM disponíveis, use o seguinte método:

Nota

O Azure Machine Learning não suporta todos os tamanhos de VM suportados pelo Azure Compute. Para listar os tamanhos de VM disponíveis, use um dos seguintes métodos:

Se você usar os destinos de computação habilitados para GPU, é importante garantir que os drivers CUDA corretos estejam instalados no ambiente de treinamento. Use a tabela a seguir para determinar a versão CUDA correta a ser usada:

Arquitetura GPU Série de VMs do Azure Versões CUDA suportadas
Ampere NDA100_v4 11.0+
Turing NCT4_v3 10.0+
Volta NCv3, NDv2 9.0+
Pascal NCv2, ND 9.0+
Maxwell • NV, NVv3 9.0+
Kepler NC, NC Promo 9.0+

Além de garantir que a versão CUDA e o hardware sejam compatíveis, certifique-se também de que a versão CUDA é compatível com a versão da estrutura de aprendizado de máquina que você está usando:

Isolamento de computação

A computação do Azure Machine Learning oferece tamanhos de VM isolados a um tipo de hardware específico e dedicados a um único cliente. Os tamanhos de VM isolados são mais adequados para cargas de trabalho que exigem um alto grau de isolamento das cargas de trabalho de outros clientes por motivos que incluem o cumprimento de requisitos normativos e de conformidade. A utilização de um tamanho isolado garante que sua VM seja a única em execução nessa instância específica do servidor.

As ofertas atuais de VM isoladas incluem:

  • Standard_M128ms
  • Standard_F72s_v2
  • Standard_NC24s_v3
  • Standard_NC24rs_v3 (compatível com RDMA)

Para saber mais sobre isolamento, consulte 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 . Pode criar este tipo de destino de computação fora do Azure Machine Learning e, em seguida, anexá-lo à área de trabalho. Os recursos de computação não gerenciados podem exigir etapas extras para você manter ou melhorar o desempenho de cargas de trabalho de aprendizado de máquina.

O Azure Machine Learning suporta os seguintes tipos de computação não geridos:

  • Máquinas virtuais remotas
  • Azure HDInsight
  • Azure Databricks
  • Azure Data Lake Analytics

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

Próximo passo