Experimento de MLflow
A fonte de dados de experimento do MLflow fornece uma API padrão para carregar dados de execução de experimentos do MLflow. Você pode carregar dados do experimento do notebook ou pode usar o nome do experimento do MLflow ou a ID do experimento.
Requisitos
Databricks Runtime 6.0 ML ou superior.
Carregar dados do experimento do notebook
Para carregar dados do experimento do notebook, use 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 as IDs do experimento
Para carregar dados de um ou mais experimentos de workspace, 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 método load()
.
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 os dados com base em métricas e parâmetros
Os exemplos nesta seção mostram como filtrar dados após 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