Упорядочение учебных запусков с помощью экспериментов MLflow

Эксперименты — это единицы организации для выполнения обучения модели. Существует два типа экспериментов: эксперименты рабочей области и записной книжки.

  • Эксперимент рабочей области можно создать с помощью пользовательского интерфейса Машинного обучения Databricks или API MLflow. Эксперименты рабочей области не связаны ни с одной записной книжкой, и любая записная книжка может регистрировать запуски этих экспериментов с помощью идентификатора или имени эксперимента.
  • Эксперимент записной книжки связан с конкретной записной книжкой. Если при запуске цикла с помощью mlflow.start_run() активного эксперимента нет, Azure Databricks автоматически создает эксперимент записной книжки.

Чтобы просмотреть все эксперименты в рабочей области, к которым у вас есть доступ, выберите Машинное обучение > Эксперименты на боковой панели.

Страница экспериментов

Создание эксперимента рабочей области

В этом разделе описано создание эксперимента рабочей области с помощью пользовательского интерфейса Azure Databricks. Вы можете создать эксперимент рабочей области непосредственно из рабочей области или на странице "Эксперименты".

Вы также можете использовать API MLflow или поставщик Databricks Terraform с databricks_mlflow_experiment.

Инструкции по выполнению журнала в экспериментах рабочей области см . в статье "Пример записной книжки для ведения журнала".

  1. Щелкните Значок рабочей областирабочую область на боковой панели.

  2. Перейдите в папку, в которой нужно создать эксперимент.

  3. Щелкните правой кнопкой мыши папку и выберите "Создать > эксперимент MLflow".

  4. В диалоговом окне Create MLflow Experiment (Создание эксперимента MLflow) введите имя эксперимента и необязательное расположение артефакта. Если расположение артефакта не указано, то артефакты сохраняются в папке dbfs:/databricks/mlflow-tracking/<experiment-id>.

    В качестве расположения артефактов Azure Databricks поддерживает DBFS и хранилище BLOB-объектов Azure.

    Для сохранения артефактов в хранилище BLOB-объектов Azure укажите универсальный код ресурса (URI) в форме wasbs://<container>@<storage-account>.blob.core.windows.net/<path>. Артефакты, хранящиеся в хранилище BLOB-объектов Azure, не отображаются в пользовательском интерфейсе MLflow: их необходимо скачивать с помощью клиента хранилища BLOB-объектов.

    Примечание.

    Если артефакт хранится не в DBFS, он не отображается в пользовательском интерфейсе MLflow. Модели, которые хранятся не в DBFS, невозможно зарегистрировать в реестре моделей.

  5. Нажмите кнопку Создать. Появится пустой эксперимент.

Вы также можете создать новый эксперимент рабочей области на странице "Эксперименты". Чтобы создать эксперимент, используйте Создание раскрывающегося списка экспериментов раскрывающееся меню. В раскрывающемся меню можно выбрать эксперимент AutoML или пустой (пустой) эксперимент.

  • Эксперимент AutoML. Откроется страница "Настройка эксперимента AutoML". Сведения об использовании AutoML см. в разделе "Обучение моделей машинного обучения" с помощью пользовательского интерфейса AutoML Azure Databricks.

  • Пустой эксперимент. Откроется диалоговое окно Создание эксперимента MLflow. Введите имя и необязательное расположение артефакта в диалоговом окне, чтобы создать эксперимент рабочей области. Расположение артефакта по умолчанию — dbfs:/databricks/mlflow-tracking/<experiment-id>.

    Чтобы заносить в журнал запуски этого эксперимента, вызовите mlflow.set_experiment(), указав путь к эксперименту. Путь к эксперименту отображается в верхней части страницы эксперимента. Дополнительные сведения и пример записной книжки см . в примере записной книжки для ведения журнала.

Создание эксперимента записной книжки

При использовании команды mlflow.start_run() в записной книжке команда журналы метрики и параметры запуска регистрируются в активном эксперименте. Если активного эксперимента нет, Azure Databricks создает эксперимент записной книжки. Для эксперимента записной книжки используются те же имя и идентификатор, что и для соответствующей записной книжки. Идентификатор записной книжки — это числовой идентификатор в конце URL-адреса и идентификатора записной книжки.

Кроме того, можно передать путь рабочей области Azure Databricks к существующей записной книжке в mlflow.set_experiment() для создания эксперимента записной книжки.

Инструкции по выполнению журнала в экспериментах записной книжки см . в разделе "Пример записной книжки для ведения журнала".

Примечание.

При удалении эксперимента записной книжки с помощью API (например, MlflowClient.tracking.delete_experiment() в Python) записная книжка переносится в папку корзины.

Просмотр экспериментов

Каждый эксперимент, к которому у вас есть доступ, отображается на странице экспериментов. На этой странице можно просмотреть любой эксперимент. Щелкните имя эксперимента, чтобы открыть его страницу.

Другие способы открыть страницу эксперимента:

  • Открыть страницу эксперимента рабочей области можно из меню рабочей области.
  • Открыть страницу эксперимента записной книжки можно из меню записной книжки.

Чтобы выполнить поиск экспериментов, введите текст в поле "Фильтр экспериментов " и нажмите клавишу ВВОД или щелкните значок с увеличением стекла. Список экспериментов изменяется, чтобы отобразить только те эксперименты, которые содержат текст поиска в столбце "Имя", "Имя", "Расположение" или "Описание".

Щелкните имя любого эксперимента в таблице, чтобы отобразить его страницу:

Просмотр эксперимента

На странице эксперимента перечислены все связанные с ним запуски. В таблице можно открыть страницу запуска для любого запуска, связанного с экспериментом, щелкнув его имя запуска. В столбце Source (Источник) указана версия записной книжки, в которой был создан запуск. Также можно выполнять поиск и фильтрацию запусков по метрикам и параметрам.

Просмотр эксперимента рабочей области

  1. Щелкните Значок рабочей областирабочую область на боковой панели.
  2. Перейдите к папке, содержащей эксперимент.
  3. Щелкните имя эксперимента.

Просмотр эксперимента записной книжки

На правой боковой панели записной книжки щелкните значок Значок эксперимента"Эксперимент".

Откроется боковая панель циклов запуска эксперимента, на которой отображается сводка для каждого запуска, связанного с экспериментом записной книжки, включая параметры и метрики запуска. В верхней части боковой панели указано имя последнего эксперимента, в котором записная книжка регистрировала запуски (это может быть эксперимент записной книжки или рабочей области).

Просмотр метрик и параметров выполнения

С боковой панели можно перейти на страницу эксперимента или непосредственно к запуску.

  • Чтобы просмотреть эксперимент, щелкните правой кнопкой мыши Внешний канал рядом с запуском эксперимента.
  • Чтобы отобразить выполнение, щелкните имя запуска.

Управление экспериментами

Вы можете переименовать, удалить или управлять разрешениями для эксперимента, принадлежащим на странице экспериментов, странице эксперимента или меню рабочей области.

Примечание.

Невозможно напрямую переименовать, удалить или управлять разрешениями для эксперимента MLflow, созданного записной книжкой в папке Databricks Git. Эти действия необходимо выполнить на уровне папки Git.

Переименование эксперимента на странице экспериментов или на странице отдельного эксперимента

Внимание

Эта функция предоставляется в режиме общедоступной предварительной версии.

Чтобы переименовать эксперимент с страницы экспериментов или страницы эксперимента, щелкните и выберите Значок с тремя кнопками " Переименовать".

Переименование эксперимента в меню рабочей области

  1. Щелкните Значок рабочей областирабочую область на боковой панели.
  2. Перейдите к папке, содержащей эксперимент.
  3. Щелкните правой кнопкой мыши имя эксперимента и выберите "Переименовать".

Копирование имени эксперимента

Чтобы скопировать имя эксперимента, щелкните Значок копирования в верхней части страницы эксперимента. С помощью этого имени можно задать активный эксперимент MLflow в команде set_experiment MLflow.

Значок имени эксперимента

Вы также можете скопировать имя эксперимента с боковой панели эксперимента в записной книжке.

Удаление записной книжки эксперимента

Эксперименты записной книжки являются частью записной книжки и отдельно не удаляются. При удалении записной книжки удаляется и связанный с ней эксперимент. При удалении эксперимента записной книжки с помощью пользовательского интерфейса записная книжка также удаляется.

Чтобы удалить эксперименты записных книжек с помощью API, используйте API рабочей области, чтобы убедиться, что записная книжка и эксперимент удаляются из рабочей области.

Удаление эксперимента рабочей области из меню рабочей области

  1. Щелкните Значок рабочей областирабочую область на боковой панели.
  2. Перейдите к папке, содержащей эксперимент.
  3. Щелкните правой кнопкой мыши имя эксперимента и выберите "Переместить в корзину".

Удаление эксперимента рабочей области или записной книжки в блокноте со страницы экспериментов или отдельного эксперимента

Внимание

Эта функция предоставляется в режиме общедоступной предварительной версии.

Чтобы удалить эксперимент на странице экспериментов или на странице эксперимента, нажмите кнопку "Значок с тремя кнопкамиУдалить".

При удалении эксперимента записной книжки эта записная книжка также удаляется.

Изменение разрешений для эксперимента

Чтобы изменить разрешения для эксперимента на странице отдельного эксперимента, щелкните Предоставить общий доступ.

Кнопка разрешений страницы эксперимента

Вы можете изменить разрешения для принадлежащего вам эксперимента на странице экспериментов. Щелкните Значок с тремя кнопками столбец "Действия " и выберите "Разрешение".

Сведения о уровнях разрешений эксперимента см. в списке ACL эксперимента MLFlow.

Копирование экспериментов между рабочими областями

Чтобы перенести эксперименты MLflow между рабочими областями, вы можете использовать управляемый сообществом проект с открытым кодом MLflow Export-Import.

Эти средства позволяют вам:

  • Совместно использовать данные и работать с другими специалистами по обработке и анализу данных на том же или другом сервере отслеживания. Например, вы можете клонировать эксперимент другого пользователя в свою рабочую область.
  • Копировать эксперименты и выполнения с локального сервера отслеживания в рабочую область Databricks.
  • Выполнять резервное копирование критически важных экспериментов и моделей в другую рабочую область Databricks.