Эксперимент MLflow
Источник данных эксперимента MLflow предоставляет стандартный API для загрузки данных эксперимента MLflow. Вы можете загрузить данные из эксперимента записной книжки или использовать имя эксперимента MLflow или идентификатор эксперимента.
Требования
Databricks Runtime 6.0 ML или более поздней версии.
Загрузка данных из эксперимента в блокноте
Чтобы загрузить данные из эксперимента в записной книжке, используйте load()
.
Питон
df = spark.read.format("mlflow-experiment").load()
display(df)
Scala
val df = spark.read.format("mlflow-experiment").load()
display(df)
Загрузка данных с помощью идентификаторов экспериментов
Чтобы загрузить данные из одного или нескольких экспериментов рабочей области, укажите идентификаторы экспериментов, как показано ниже.
Питон
df = spark.read.format("mlflow-experiment").load("3270527066281272")
display(df)
Scala
val df = spark.read.format("mlflow-experiment").load("3270527066281272,953590262154175")
display(df)
Загрузка данных с помощью имени эксперимента
Вы также можете передать имя эксперимента в метод load()
.
Питон
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)
Фильтрация данных на основе метрик и параметров
В примерах этого раздела показано, как фильтровать данные после загрузки из эксперимента.
Питон
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)
Схема
Схема кадра данных, возвращаемого источником данных:
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