Experimento de MLflow
El origen de datos del experimento de MLflow proporciona una API estándar para cargar datos de ejecución del experimento de MLflow. Puede cargar datos desde el cuaderno del experimentoo usar el nombre o el identificador del experimento de MLflow.
Requisitos
Databricks Runtime 6.0 ML o superior.
Carga de datos desde el experimento del cuaderno
Para cargar datos desde el experimento del cuaderno, use load()
.
Pitón
df = spark.read.format("mlflow-experiment").load()
display(df)
Scala
val df = spark.read.format("mlflow-experiment").load()
display(df)
Carga de datos mediante identificadores de experimento
Para cargar datos de uno o varios experimentos de área de trabajo, especifique los identificadores del experimento como se muestra.
Pitón
df = spark.read.format("mlflow-experiment").load("3270527066281272")
display(df)
Scala
val df = spark.read.format("mlflow-experiment").load("3270527066281272,953590262154175")
display(df)
Carga de datos mediante el nombre del experimento
También puede pasar el nombre del experimento al método load()
.
Pitón
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)
Filtrado de datos basados en métricas y parámetros
Los ejemplos de esta sección muestran cómo puede filtrar los datos después de cargarlos desde un experimento.
Pitón
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
El esquema del dataFrame devuelto por el origen de datos es:
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