Comece a começar com os experimentos do MLflow

Este artigo apresenta uma visão geral de como usar o site MLflow em Databricks para executar automaticamente o treinamento log e rastrear parâmetros, métricas e modelos. Para obter mais detalhes sobre o uso do site MLflow para acompanhar o desenvolvimento do modelo, consulte Acompanhar ML e aprendizagem profunda treinamento execução.

MLflow é uma plataforma de código aberto para gerenciar o ciclo de vida machine learning de ponta a ponta. O MLflow fornece APIs simples para registrar métricas (por exemplo, perda de modelo), parâmetros (por exemplo, taxa de aprendizado) e modelos ajustados, facilitando a análise dos resultados do treinamento ou o aprimoramento de modelos posteriormente.

Instalar o MLflow

Se você estiver usando o Databricks Runtime for Machine Learning, o MLflow já estará instalado. Caso contrário, instale o pacote MLflow do PyPI.

Automaticamente log treinamento execução para MLflow

Com o Databricks Runtime 10.4 LTS ML e acima, o Databricks Autologging é habilitado por default e captura automaticamente parâmetros do modelo, métricas, arquivos e informações de linhagem quando você ensina modelos de uma variedade de bibliotecas populares de aprendizado de máquina.

Com o Databricks Runtime 9.1 LTS ML, o MLflow fornece mlflow.<framework>.autolog() APIs para registrar automaticamente o código de treinamento escrito em muitas estruturas de ML. Você pode chamar essa API antes de executar o código de treinamento para métricas, parâmetros e artefatos de modelo específicos registrados em modelos.

Observação

modelo Keras também são suportados em mlflow.tensorflow.autolog().

# Also autoinstruments tf.keras
import mlflow.tensorflow
mlflow.tensorflow.autolog()
import mlflow.xgboost
mlflow.xgboost.autolog()
import mlflow.lightgbm
mlflow.lightgbm.autolog()
import mlflow.sklearn
mlflow.sklearn.autolog()

Se o ajuste for realizado com pyspark.ml, as métricas e os modelos serão automaticamente registrados em MLflow. Consulte Apache Spark MLlib e MLflow acompanhamento automatizado.

Ver resultados

Depois de executar seu código machine learning , você pode view os resultados usando a barra lateral de execução do Experimento. Consulte Exibir experimento Notebook para obter instruções sobre como visualizar o experimento, execução e revisão Notebook usado no início rápido.

Acompanhar métricas, parâmetros e modelos adicionais

Você pode logs informações adicionais invocando diretamente as APIs de logsde acompanhamento do MLflow.

métricas numéricas

  import mlflow
  mlflow.log_metric("accuracy", 0.9)

Parâmetros de treinamento

  import mlflow
  mlflow.log_param("learning_rate", 0.001)

modelos

import mlflow.sklearn
mlflow.sklearn.log_model(model, "myModel")
  import mlflow.spark
  mlflow.spark.log_model(model, "myModel")
import mlflow.xgboost
mlflow.xgboost.log_model(model, "myModel")
import mlflow.tensorflow
mlflow.tensorflow.log_model(model, "myModel")
import mlflow.keras
mlflow.keras.log_model(model, "myModel")
import mlflow.pytorch
mlflow.pytorch.log_model(model, "myModel")
import mlflow.spacy
mlflow.spacy.log_model(model, "myModel")

Outros artefatos (arquivos)

   import mlflow
   mlflow.log_artifact("/tmp/my-file", "myArtifactPath")

Notebooks de Exemplo

Observação

Com o Databricks Runtime 10.4 LTS ML e acima, o Databricks Autologging está habilitado por default e o código neste exemplo de Notebook não é necessário. O notebook de exemplo nesta seção foi projetado para uso com o Databricks Runtime 9.1 LTS ML.

A maneira recomendada de começar a usar o acompanhamento do MLflow com Python é usar a API MLflow autolog() . Com os recursos de registro automático do MLflow, uma única linha de código logs automaticamente o modelo resultante, os parâmetros usados para criar o modelo e uma pontuação do modelo. O Notebook a seguir mostra como configurar uma execução usando registro automático.

Notebook do Python de início rápido de registro automático do MLflow

Abra o bloco de anotações em outra guia

Se você precisar de mais controle sobre os logss métricas para cada execução de treinamento ou quiser logs artefatos adicionais, como tabelas ou gráficos, poderá usar as funções de API de criação de logsdo MLflow demonstradas no Notebook a seguir.

Python Notebook de início rápido da API de log do MLflow

Abra o bloco de anotações em outra guia