Experimentação do MLflow

A fonte de dados do experimento MLflow fornece uma API padrão para carregar dados de execução do experimento MLflow. Você pode carregar dados do experimento do bloco de anotações ou pode usar o nome do experimento MLflow ou a ID do experimento.

Requisitos

Databricks Runtime 6.0 ML ou superior.

Carregar dados da experiência do bloco de notas

Para carregar dados da experiência do bloco de notas, utilize load().

Python

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

Scala

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

Carregar dados usando IDs de experimento

Para carregar dados de um ou mais experimentos de espaço de trabalho, especifique as IDs do experimento conforme mostrado.

Python

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

Scala

val df = spark.read.format("mlflow-experiment").load("3270527066281272,953590262154175")
display(df)

Carregar dados usando o nome do experimento

Você também pode passar o nome do experimento para o load() método.

Python

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

Scala

val expId = mlflow.getExperimentByName("/Shared/diabetes_experiment/").get.getExperimentId
val df = spark.read.format("mlflow-experiment").load(expId)
display(df)

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

Os exemplos nesta seção mostram como você pode filtrar dados depois de carregá-los de um experimento.

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)

Scala

val df = spark.read.format("mlflow-experiment").load("3270527066281272")
val filtered_df = df.filter("metrics.loss < 1.85 AND params.num_epochs > '30'")
display(filtered_df)

Esquema

O esquema do DataFrame retornado pela fonte de dados é:

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