Поделиться через


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

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

  • Вы можете создать эксперимент рабочей области из пользовательского интерфейса Databricks Mosaic AI или 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) введите имя эксперимента и необязательное расположение артефакта. Если не указать расположение артефактов, артефакты хранятся в хранилище артефактов, управляемом MLflow: dbfs:/databricks/mlflow-tracking/<experiment-id>

    Azure Databricks поддерживает тома Unity Catalog, хранилище Blob в Azure и расположения артефактов в Azure Data Lake Storage.

    В MLflow 2.15.0 и выше можно хранить артефакты в томе каталога Unity. При создании эксперимента MLflow укажите путь томов формы dbfs:/Volumes/catalog_name/schema_name/volume_name/user/specified/path в качестве расположения артефакта эксперимента MLflow, как показано в следующем коде:

    EXP_NAME = "/Users/first.last@databricks.com/my_experiment_name"
    CATALOG = "my_catalog"
    SCHEMA = "my_schema"
    VOLUME = "my_volume"
    ARTIFACT_PATH = f"dbfs:/Volumes/{CATALOG}/{SCHEMA}/{VOLUME}"
    
    mlflow.set_tracking_uri("databricks")
    mlflow.set_registry_uri("databricks-uc")
    
    if mlflow.get_experiment_by_name(EXP_NAME) is None:
        mlflow.create_experiment(name=EXP_NAME, artifact_location=ARTIFACT_PATH)
    mlflow.set_experiment(EXP_NAME)
    

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

    Примечание.

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

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

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

создание эксперимента на странице "Эксперименты"

Чтобы создать фундаментальную модель для точной настройки, AutoML или настраиваемый эксперимент, щелкните Эксперименты или выберите Новый > Эксперимент в левой боковой панели.

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

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

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

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

Инструкции по регистрации запусков в экспериментах с помощью записных книжек см. в разделе Регистрация запусков в эксперименте.

Примечание.

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

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

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

Дополнительные способы доступа к странице сведений о эксперименте:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Примечание.

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

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

Вы можете переименовать эксперимент, принадлежащий на странице экспериментов или на странице сведений о эксперименте для этого эксперимента.

  • На странице экспериментов щелкните меню кебаб меню Kebab в правом столбце, а затем щелкните Переименовать.

переименовать на странице

  • На странице сведениях об эксперименте щелкните меню Kebab меню Kebab рядом с Разрешения и затем щелкните Переименовать.

Переименовать со страницы сведений об эксперименте.

Вы можете переименовать эксперимент рабочей области из рабочей области. Щелкните правой кнопкой мыши по имени эксперимента, затем выберите Переименовать.

Получить идентификатор эксперимента и путь к эксперименту

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

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

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

значок пути эксперимента на боковой панели ноутбука.

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

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

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

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

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

Внимание

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

  • На странице Эксперименты щелкните меню кебаб меню Kebab в правом столбце, а затем щелкните Удалить.

Удалить из страницы экспериментов.

  • На странице сведений об эксперименте щелкните меню Кебаб меню Кебаб рядом с параметрами доступа и щелкните Удалить.

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

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

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

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

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

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

изменение разрешений на странице

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

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

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

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

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