Escolha o destino de computação apropriado

Concluído

No Azure Machine Learning, os destinos de computação são computadores físicos ou virtuais nos quais os trabalhos são executados.

Entender os tipos disponíveis de computação

O Azure Machine Learning dá suporte a vários tipos de computação para experimentação, treinamento e implantação. Ao ter vários tipos de computação, você pode selecionar o tipo mais apropriado de destino de computação para suas necessidades.

Diagrama de valores de hiperparâmetro diferentes, resultando em modelos diferentes executando o ajuste de hiperparâmetro.

  • Instância de Computação: comporta-se de forma semelhante a uma máquina virtual e é usada principalmente para rodar notebooks. É ideal para experimentação.
  • Clusters de computação: clusters de diversos nós de máquinas virtuais que aumentam ou diminuem a capacidade automaticamente de acordo com a demanda. Uma maneira econômica de executar scripts que precisam processar grandes volumes de dados. Os clusters também permitem que você use o processamento paralelo para distribuir a carga de trabalho e reduzir o tempo necessário para executar um script.
  • Clusters do Kubernetes: cluster baseado na tecnologia Kubernetes, que fornece mais controle sobre como a computação é configurada e gerenciada. Você pode anexar seu cluster do AKS (Kubernetes do Azure) autogerenciado para computação em nuvem ou um cluster do Kubernetes arc para cargas de trabalho locais.
  • de computação anexada: permite anexar a computação existente, como máquinas virtuais do Azure ou clusters do Azure Databricks ao seu workspace.
  • Computação sem servidor: uma computação sob demanda totalmente gerenciada que pode ser usada para tarefas de treinamento.

Nota

O Azure Machine Learning oferece a opção de criar e gerenciar sua própria computação ou usar a computação totalmente gerenciada pelo Azure Machine Learning.

Quando usar qual tipo de computação?

Em geral, há algumas práticas recomendadas que você pode seguir ao trabalhar com alvos de computação. Para entender como escolher o tipo apropriado de computação, vários exemplos são fornecidos. Lembre-se de que tipo de computação que você usa sempre depende de sua situação específica.

Escolher um destino de computação para experimentação

Imagine que você é um cientista de dados e é solicitado a desenvolver um novo modelo de machine learning. Você provavelmente tem um pequeno subconjunto dos dados de treinamento com os quais você pode experimentar.

Durante experimentação e desenvolvimento, você prefere trabalhar em um Jupyter Notebook. Uma experiência de notebook se beneficia mais de uma computação em execução contínua.

Muitos cientistas de dados estão familiarizados com a execução de notebooks em seu dispositivo local. Uma alternativa de nuvem gerenciada pelo Azure Machine Learning é uma instância de computação. Como alternativa, você também pode optar por computação Spark sem servidor para executar código Spark em notebooks, se quiser usar o poder de computação distribuída do Spark.

Escolher um destino de computação para produção

Após a experimentação, você pode treinar seus modelos executando scripts Python para se preparar para produção. Os scripts serão mais fáceis de automatizar e agendar quando você quiser treinar seu modelo continuamente ao longo do tempo. Você poderá executar scripts como trabalhos (pipeline).

Ao migrar para a produção, você deseja que o destino de computação esteja pronto para lidar com grandes volumes de dados. Quanto mais dados você usar, melhor será o modelo de machine learning.

Ao treinar modelos com scripts, você deseja um destino de computação sob demanda. Um cluster de computação escala automaticamente para cima quando os scripts precisam ser executados e reduz sua escala quando eles terminam de ser executados. Se você quiser uma alternativa que não precise criar e gerenciar, poderá usar o de computação sem servidor do Azure Machine Learning.

Escolher um destino de computação para implantação

O tipo de computação de que você precisa ao usar seu modelo para gerar previsões depende se você deseja previsões em lotes ou em tempo real.

Para previsões em lote, você pode executar um trabalho de pipeline no Azure Machine Learning. Destinos de computação, como clusters de computação e computação sem servidor do Azure Machine Learning, são ideais para trabalhos de pipeline, pois são sob demanda e escalonáveis.

Quando você deseja previsões em tempo real, precisa de um tipo de computação que esteja sendo executado continuamente. As implantações em tempo real, portanto, se beneficiam de uma computação mais leve (e, portanto, mais econômica). Os contêineres são ideais para implantações em tempo real. Quando você implanta seu modelo em um ponto de extremidade online gerenciado, o Azure Machine Learning cria e gerencia contêineres para executar seu modelo. Como alternativa, você pode anexar clusters do Kubernetes para gerenciar a computação necessária para gerar previsões em tempo real.