Freigeben über


MLflow-Experiment

Die MLflow-Experimentdatenquelle stellt eine Standard-API zum Laden von Ausführungsdaten des MLflow-Experiments bereit. Sie können Daten aus dem Notizbuchexperiment laden, oder Sie können den Namen oder die Experiment-ID des MLflow-Experiments verwenden.

Anforderungen

Databricks Runtime 6.0 ML oder höher.

Laden von Daten aus dem Notizbuchexperiment

Verwenden Sie load(), um Daten aus dem Notebook-Experiment zu laden.

Python

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

Scala

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

Daten mit Experiment-IDs laden

Wenn Sie Daten aus einem oder mehreren Arbeitsbereichsexperimenten laden möchten, geben Sie die Experiment-IDs wie dargestellt an.

Python

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

Scala

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

Daten mit dem Experimentnamen laden

Sie können den Experimentnamen auch an die load() Methode übergeben.

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)

Filtern von Daten basierend auf Metriken und Parametern

Die Beispiele in diesem Abschnitt zeigen, wie Sie Daten nach dem Laden aus einem Experiment filtern können.

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

Das Schema des von der Datenquelle zurückgegebenen DataFrames lautet:

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