Condividi tramite


Esperimento MLflow

L'origine dati dell'esperimento MLflow fornisce un'API standard per caricare i dati di esecuzione dell'esperimento MLflow. È possibile caricare i dati dall'esperimento del notebook oppure usare il nome o l'ID esperimento di MLflow.

Requisiti

Databricks Runtime 6.0 ML o versione successiva.

Caricare dati dall'esperimento del notebook

Per caricare i dati dall'esperimento del notebook, usare load().

Python

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

Scala

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

Caricare i dati usando GLI ID esperimento

Per caricare i dati da uno o più esperimenti dell'area di lavoro, specificare gli ID esperimento come illustrato.

Python

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

Scala

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

Caricare i dati usando il nome dell'esperimento

È anche possibile passare il nome dell'esperimento load() al metodo .

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)

Filtrare i dati in base a metriche e parametri

Negli esempi di questa sezione viene illustrato come filtrare i dati dopo il caricamento da un esperimento.

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)

Schema

Lo schema del dataframe restituito dall'origine dati è:

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