Partilhar via


MLflow e Azure Machine Learning

APLICA-SE A:Azure CLI ml extension v2 (current)Python SDK azure-ai-ml v2 (current)

Este artigo descreve os recursos do MLflow, uma estrutura de código aberto que gerencia o ciclo de vida completo do aprendizado de máquina. O MLflow usa um conjunto consistente de ferramentas para treinar e servir modelos em diferentes plataformas. Use o MLflow se seus experimentos forem executados localmente, em um destino de computação remoto, em uma máquina virtual ou em uma instância de computação do Azure Machine Learning.

Os espaços de trabalho do Azure Machine Learning são compatíveis com MLflow, portanto, você usa um espaço de trabalho do Azure Machine Learning da mesma forma que usa um servidor MLflow. Esta compatibilidade oferece as seguintes vantagens:

  • O Azure Machine Learning não hospeda instâncias de servidor MLflow, mas usa as APIs MLflow diretamente.
  • Use um espaço de trabalho do Azure Machine Learning como seu servidor de controle para qualquer código MLflow, seja ele executado ou não no Azure Machine Learning. Basta configurar o MLflow para apontar para o espaço de trabalho onde o rastreamento acontece.
  • Execute qualquer rotina de treinamento que use MLflow no Aprendizado de Máquina do Azure sem fazer alterações.

Gorjeta

Ao contrário do SDK do Azure Machine Learning v1, o SDK do Azure Machine Learning v2 não inclui a funcionalidade de registo. Use o registo MLflow para manter as suas rotinas de treino independentes da nuvem, portáteis e independentes do Azure Machine Learning.

O que é rastreamento

Quando você trabalha com trabalhos, o Aprendizado de Máquina do Azure rastreia automaticamente informações sobre experimentos, como código, ambiente e dados de entrada e saída. Mas modelos, parâmetros e métricas são específicos para cada cenário, portanto, os construtores de modelos precisam configurar seu rastreamento.

Os metadados de rastreamento salvos variam de acordo com o experimento e podem incluir:

  • Código
  • Detalhes do ambiente, como versão do sistema operacional e pacotes Python
  • Dados de entrada
  • Configurações de parâmetros
  • Modelos
  • Métricas de avaliação
  • Visualizações de avaliação como matrizes de confusão e gráficos de importância
  • Resultados da avaliação, incluindo algumas previsões de avaliação

Benefícios do rastreamento de experimentos

Quer treine modelos com trabalhos no Azure Machine Learning ou interativamente em blocos de notas, o acompanhamento de experiências ajuda-o a:

  • Organize todos os seus experimentos de aprendizado de máquina em um só lugar. Em seguida, pesquise e filtre experimentos e faça uma busca detalhada para ver detalhes sobre experimentos anteriores.
  • Compare experimentos, analise resultados e depure o treinamento do modelo.
  • Reproduza ou execute novamente experimentos para validar os resultados.
  • Colabore mais facilmente, porque você vê o que outros colegas de equipe estão fazendo, compartilha resultados de experimentos e acessa dados de experimentos programaticamente.

Rastreando com MLflow

Os espaços de trabalho do Azure Machine Learning são compatíveis com MLflow. Essa compatibilidade significa que você usa o MLflow para controlar execuções, métricas, parâmetros e artefatos em espaços de trabalho sem alterar suas rotinas de treinamento ou adicionar qualquer sintaxe específica da nuvem. Para saber como usar o MLflow para controlar experimentos e execuções em espaços de trabalho do Azure Machine Learning, consulte Controlar experimentos e modelos com MLflow.

O Azure Machine Learning usa o controle de MLflow para registrar métricas e armazenar artefatos para seus experimentos. Quando você está conectado ao Aprendizado de Máquina do Azure, todo o rastreamento de MLflow aparece no espaço de trabalho que você usa.

Para saber como habilitar o registro em log para monitorar métricas de execução em tempo real com MLflow, consulte Métricas de log, parâmetros e arquivos com MLflow. Você também consulta e compara experimentos e execuções com MLflow.

O MLflow no Azure Machine Learning fornece uma maneira de centralizar o rastreamento. Conecte o MLflow aos espaços de trabalho do Azure Machine Learning mesmo quando você trabalha localmente ou em uma nuvem diferente. O espaço de trabalho do Azure Machine Learning fornece um local centralizado, seguro e escalável para armazenar métricas e modelos de treinamento.

O MLflow em Azure Machine Learning permite que você:

Rastreamento com MLflow em R

O suporte a MLflow em R tem estas limitações:

  • O acompanhamento do MLflow está limitado ao acompanhamento de métricas, parâmetros e modelos de experiências em trabalhos do Azure Machine Learning.
  • Não há suporte para treinamento interativo em notebooks RStudio, Posit (anteriormente RStudio Workbench) ou Jupyter com kernels R.
  • Não há suporte para gerenciamento e registro de modelos. Use a CLI do Azure Machine Learning ou o estúdio do Azure Machine Learning para registro e gerenciamento de modelos.

Para obter exemplos de como usar o cliente de rastreamento MLflow com modelos R no Azure Machine Learning, consulte Treinar modelos R usando a CLI do Azure Machine Learning (v2).

Rastreando com MLflow em Java

O suporte a MLflow em Java tem estas limitações:

  • O acompanhamento do MLflow é limitado ao acompanhamento de métricas e parâmetros de experimentos em trabalhos do Azure Machine Learning.
  • Artefatos e modelos não podem ser rastreados. Em vez disso, use o mlflow.save_model método com a outputs pasta em trabalhos para salvar modelos ou artefatos que você deseja capturar.

Para obter um exemplo de Java que usa o cliente de rastreamento MLflow com o servidor de rastreamento do Azure Machine Learning, consulte azuremlflow-java.

Exemplos de blocos de anotações para rastreamento de MLflow

Registo de modelo com MLflow

O Azure Machine Learning dá suporte ao MLflow para gerenciamento de modelos. Se você estiver familiarizado com o cliente MLflow, poderá usá-lo para gerenciar todo o ciclo de vida do modelo. Para saber mais sobre como gerenciar modelos com a API MLflow no Azure Machine Learning, consulte Gerenciar registros de modelo no Azure Machine Learning com MLflow.

Exemplo de bloco de anotações para registro de modelo MLflow

O gerenciamento de modelos com MLflow mostra como gerenciar modelos em registros.

Implantação de modelo com MLflow

Implante modelos MLflow no Aprendizado de Máquina do Azure para obter uma experiência aprimorada. O Azure Machine Learning dá suporte à implantação de modelos MLflow em pontos de extremidade em tempo real e por lotes sem precisar especificar um ambiente ou um script de avaliação.

O SDK do MLflow, a CLI do Azure Machine Learning, o SDK do Azure Machine Learning para Python e o estúdio do Azure Machine Learning dão suporte à implantação do modelo MLflow. Para obter mais informações sobre como implantar modelos MLflow no Azure Machine Learning para inferência em tempo real e em lote, consulte Diretrizes para implantar modelos MLflow.

Exemplos de blocos de anotações para implantação do modelo MLflow

Formação com Projetos MLflow (pré-visualização)

Aviso

O suporte para MLproject arquivos (Projetos MLflow) no Azure Machine Learning será totalmente desativado em setembro de 2026. O MLflow ainda é totalmente suportado e ainda é a maneira recomendada de rastrear cargas de trabalho de aprendizado de máquina no Azure Machine Learning.

À medida que você continua a usar o MLflow, recomendamos que você faça a transição de arquivos para Trabalhos do Azure Machine LearningMLproject, usando a CLI do Azure ou o SDK do Azure Machine Learning para Python (v2). Para obter mais informações sobre trabalhos do Azure Machine Learning, consulte Rastrear experimentos e modelos de ML com MLflow.

Importante

Esta funcionalidade está atualmente em pré-visualização pública. Esta versão de pré-visualização é fornecida sem um contrato de nível de serviço e não a recomendamos para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas.

Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.

Envie trabalhos de treinamento para o Azure Machine Learning usando Projetos MLflow. Envie trabalhos localmente com o acompanhamento do Azure Machine Learning ou migre seus trabalhos para a nuvem usando a computação do Azure Machine Learning.

Saiba como enviar trabalhos de treinamento que usam Projetos MLflow para espaços de trabalho do Azure Machine Learning para acompanhamento em Train with MLflow Projects no Azure Machine Learning (visualização).

Exemplos de blocos de anotações para projetos MLflow

MLflow vs recursos de ferramentas de cliente do Azure Machine Learning

A tabela a seguir mostra as operações do ciclo de vida do aprendizado de máquina que você pode fazer com o SDK do MLflow e as ferramentas de cliente do Azure Machine Learning.

Caraterística MLflow SDK CLI/SDK do Azure Machine Learning v2 estúdio do Azure Machine Learning
Rastreie e registre métricas, parâmetros e modelos
Recuperar métricas, parâmetros e modelos Você pode baixar apenas artefatos e modelos.
Submeter trabalhos de formação Você pode usar projetos MLflow (visualização).
Enviar trabalhos de treinamento com ativos de dados do Azure Machine Learning
Envie trabalhos de treinamento com pipelines de aprendizado de máquina
Gerencie experimentos e execuções
Gerenciar modelos MLflow Algumas operações não são suportadas.
Gerenciar modelos não-MLflow
Implantar modelos MLflow no Azure Machine Learning (online e em lote) Não é possível implantar modelos MLflow para inferência em lote neste momento. 2
Implantar modelos não-MLflow no Azure Machine Learning

1 Para obter mais informações, consulte Gerenciar registros de modelo no Azure Machine Learning com MLflow.

2 Para obter uma alternativa, consulte Implantar e executar modelos MLflow em trabalhos do Spark.