Pular para o conteúdo principal

Ler experimentos MLflow

A mlflow-experiment fonte de dados fornece uma API DataFrameReader do Spark para carregar dados de execução de experimentos do MLflow em um DataFrame. Usuários do Databricks comumente o utilizam para analisar resultados de execuções de treinamento, comparar métricas entre experimentos e criar painéis com base no histórico de experimentos. Para obter mais informações, consulte Organizar execuções de treinamento com experimentos do MLflow.

Pré-requisitos

A leitura de dados de execução de experimentos do MLflow requer Databricks Runtime 6,0 ML e acima.

Uso

Os exemplos a seguir mostram como carregar e filtrar dados de experimento do MLflow usando a API do Spark DataFrame.

Carregar dados do experimento do Notebook

Para carregar dados do experimento do Notebook atual, chame load() sem argumentos.

Python
df = spark.read.format("mlflow-experiment").load()
display(df)

Carregar uso de dados IDs de experimentos

Para carregar dados de um ou mais experimentos de workspace, passe os IDs de experimento como uma string separada por vírgulas para load().

Python
df = spark.read.format("mlflow-experiment").load("3270527066281272")
display(df)

Carregar dados usando um nome de experimento

Para carregar dados por nome de experimento, resolva o nome para um ID usando o cliente MLflow e, em seguida, passe o ID para load().

Python
expId = mlflow.get_experiment_by_name("/Shared/diabetes_experiment/").experiment_id
df = spark.read.format("mlflow-experiment").load(expId)
display(df)

Filtrar dados com base em métricas e parâmetros

Após carregar os dados do experimento, use expressões de filtro padrão de DataFrame para consultar métricas e parâmetros.

Python
df = spark.read.format("mlflow-experiment").load("3270527066281272")
filtered_df = df.filter("metrics.loss < 0.01 AND params.learning_rate > '0.001'")
display(filtered_df)

Esquema de saída

O esquema retornado pela fonte de dados mlflow-experiment é fixo independentemente do experimento carregado:

root
|-- run_id: string
|-- experiment_id: string
|-- metrics: map
| |-- key: string
| |-- value: double
|-- params: map
| |-- key: string
| |-- value: string
|-- tags: map
| |-- key: string
| |-- value: string
|-- start_time: timestamp
|-- end_time: timestamp
|-- status: string
|-- artifact_uri: string

Recursos adicionais