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


Обучение моделей машинного обучения с помощью пользовательского интерфейса AutoML Azure Databricks

В этой статье показано, как обучить модель машинного обучения с помощью AutoML и пользовательского интерфейса Databricks Машинное обучение. Пользовательский интерфейс AutoML выполняет обучение модели классификации, регрессии или прогнозирования в наборе данных.

Для доступа к пользовательскому интерфейсу выполните следующие действия.

  1. На боковой панели выберите новый > эксперимент AutoML.

    Вы также можете создать новый эксперимент AutoML на странице Эксперименты.

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

Требования

См . требования к экспериментам AutoML.

Настройка проблем классификации или регрессии

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

  1. В поле вычислений выберите кластер под управлением Databricks Runtime ML.

  2. В раскрывающемся меню Тип задачи машинного обучения выберите Регрессия или Классификация. Если вы пытаетесь спрогнозировать непрерывное числовое значение для каждого наблюдения, такого как годовой доход, выберите регрессию. Если вы пытаетесь отнести каждое наблюдение к одному из дискретных наборов классов, таких как хороший кредитный риск или плохой кредитный риск, выберите классификацию.

  3. В разделе "Набор данных" нажмите кнопку "Обзор".

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

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

  5. Щелкните поле Цель прогнозирования. Появится раскрывающийся список столбцов, показанных в схеме. Выберите столбец, для которого модель должна создать прогноз.

  6. В поле Имя эксперимента отображается имя по умолчанию. Чтобы изменить его, введите новое имя в поле.

Кроме того, вы можете сделать следующее:

Настройка проблем прогнозирования

Вы можете настроить проблему прогнозирования с помощью пользовательского интерфейса AutoML, выполнив следующие действия.

  1. В поле Вычисления выберите кластер, на котором работает Databricks Runtime 10.0 ML или более поздней версии.
  2. В раскрывающемся меню Тип задачи машинного обучения выберите Прогнозирование.
  3. В разделе Набор данных нажмите Обзор. Перейдите к таблице, которую необходимо использовать, и нажмите кнопку Выбрать. Отобразится схема таблицы.
  4. Щелкните поле Цель прогнозирования. Раскрывающееся меню отображается список столбцов, отображаемых в схеме. Выберите столбец, для которого модель должна создать прогноз.
  5. Щелкните поле Столбец времени. Отобразится раскрывающийся список столбцов набора данных, имеющих тип timestamp или date. Выберите столбец, содержащий временные периоды для временных рядов.
  6. Для прогнозирования с несколькими рядами выберите столбцы, которые идентифицируют отдельные временные ряды, из раскрывающегося списка Идентификаторы временных рядов. AutoML группирует данные по этим столбцам как различные временные ряды и проводит обучение модели для каждого ряда отдельно. Если оставить это поле пустым, AutoML предположит, что набор данных содержит один временной ряд.
  7. В полях Горизонт и частота прогнозирования укажите количество периодов времени в будущем, для которых AutoML должен рассчитывать прогнозируемые значения. В левом поле введите целое число периодов для прогнозирования. В правом поле выберите единицы измерения. .. Примечание.: Для использования auto-ARIMA временные ряды должны иметь обычную частоту (т. е. интервал между двумя точками должен быть одинаковым в течение временных рядов). Частота должна соответствовать единице частоты, указанной в вызове API или в пользовательском интерфейсе AutoML. AutoML обрабатывает пропущенные временные шаги, заполняя эти значения предыдущим.
  8. В Databricks Runtime 11.3 LTS ML и более поздних версиях можно сохранить результаты прогнозирования. Для этого укажите базу данных в поле Output Database (Выходная база данных). Нажмите кнопку Обзор и выберите базу данных в диалоговом окне. AutoML запишет результаты прогнозирования в таблицу в этой базе данных.
  9. В поле Имя эксперимента отображается имя по умолчанию. Чтобы изменить его, введите новое имя в поле.

Кроме того, вы можете сделать следующее:

Использование существующих таблиц функций из Хранилища компонентов Databricks

В Databricks Runtime 11.3 LTS ML и более поздних версиях можно использовать таблицы функций в Хранилище компонентов Databricks для расширения набора данных для обучения входных данных для проблем классификации и регрессии.

В Databricks Runtime 12.2 LTS ML и более поздних версиях можно использовать таблицы функций в Хранилище компонентов Databricks для расширения набора входных обучающих данных для всех проблем AutoML: классификации, регрессии и прогнозирования.

Сведения о создании таблицы компонентов см. в статье "Создание таблицы компонентов в каталоге Unity" или "Создание таблицы компонентов" в Хранилище компонентов Databricks.

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

  1. Нажмите кнопку "Присоединиться" (необязательно).

    Кнопка

  2. На странице "Присоединение дополнительных функций" выберите таблицу компонентов в поле "Таблица компонентов".

  3. Для каждой таблицы компонентов первичный ключ выберите соответствующий ключ подстановки. Ключ подстановки должен быть столбцом в обучаемом наборе данных, предоставленном для эксперимента AutoML.

  4. Для таблиц функций временных рядов выберите соответствующий ключ подстановки времени. Аналогичным образом ключ подстановки времени должен быть столбцом в обучаемом наборе данных, предоставленном для эксперимента AutoML.

    Выбор первичных ключей и таблиц подстановки

  5. Чтобы добавить дополнительные таблицы функций, нажмите кнопку "Добавить другую таблицу " и повторите описанные выше действия.

Дополнительные конфигурации

Откройте раздел Расширенная конфигурация (необязательно), чтобы получить доступ к этим параметрам.

  • Метрика оценки — это основная метрика, используемая для оценки запусков.
  • В Databricks Runtime 10.4 LTS ML и более поздних версиях можно исключить платформы обучения из рассмотрения. По умолчанию AutoML обучает модели с использованием платформ, перечисленных в разделе Алгоритмы AutoML.
  • Вы можете изменить условия остановки. Условия остановки по умолчанию:
    • В экспериментах прогнозирования остановка происходит через 120 минут.
    • В Databricks Runtime 10.4 LTS ML и ниже для экспериментов классификации и регрессии остановится через 60 минут или после завершения 200 испытаний, в зависимости от того, что происходит сначала. После версии Databricks Runtime 11.0 ML количество пробных выполнений не учитывается в качестве условия остановки.
    • В Databricks Runtime 10.4 LTS ML и более поздних версий для экспериментов классификации и регрессии AutoML включает ранние остановки; Он останавливает обучение и настройку моделей, если метрика проверки больше не улучшается.
  • В Databricks Runtime 10.4 LTS ML и более поздних версиях можно выбрать столбец времени для разделения данных для обучения, проверки и тестирования в хронологическом порядке (применяется только к классификации и регрессии).
  • Databricks рекомендует не заполнять поле каталога данных. Это позволяет активировать поведение по умолчанию для безопасного хранения набора данных в виде артефакта MLflow. Путь к DBFS можно указать, но в этом случае набор данных не наследует разрешения на доступ к эксперименту AutoML.

Выбор столбца

Примечание.

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

В Databricks Runtime 10.3 ML и более поздних версий можно указать, какие столбцы AutoML следует использовать для обучения. Чтобы исключить столбец, снимите его флажок в столбце Включить.

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

По умолчанию включаются все столбцы.

Опровержение отсутствующих значений

В Databricks Runtime 10.4 LTS ML и более поздних версий можно указать способ подстановки для значений NULL. В пользовательском интерфейсе выберите метод из раскрывающегося списка в столбце Подстановка в схеме таблицы.

По умолчанию AutoML выбирает метод добавления отсутствующих данных на основе типа и содержимого столбца.

Примечание.

При выборе метода добавления отсутствующих данных, кроме заданного по умолчанию, AutoML не выполняет Обнаружение семантических типов.

Запуск эксперимента и проверка результатов

Чтобы запустить эксперимент AutoML, нажмите кнопку Запустить AutoML. Начнется запуск эксперимента, и появится страница обучения AutoML. Чтобы обновить таблицу запусков, нажмите кнопку Кнопка обновления.

На этой странице можно выполнить следующие действия.

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

В Databricks Runtime 10.1 ML и более поздних версий AutoML отображает предупреждения о потенциальных проблемах с набором данных, таких как неподдерживаемые типы столбцов или столбцы с высокой кратностью.

Примечание.

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

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

Предупреждения AutoML

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

  • Зарегистрируйте и разверните одну из моделей с помощью MLflow.
  • Выберите "Просмотреть записную книжку" для лучшей модели , чтобы просмотреть и изменить записную книжку, которая создала лучшую модель.
  • Выберите "Просмотреть записную книжку для просмотра данных", чтобы открыть записную книжку для просмотра данных.
  • Поиск, фильтрация и сортировка запусков в таблице запусков.
  • Дополнительные сведения о любом запуске:
    • Созданная записная книжка, содержащая исходный код для пробного запуска, можно найти, щелкнув в запуске MLflow. Записная книжка сохраняется в разделе "Артефакты" страницы запуска. Эту записную книжку можно скачать и импортировать в рабочую область, если скачивание артефактов включено администраторами рабочей области.
    • Чтобы просмотреть результаты выполнения, щелкните столбец Модели или Время начала. Появится страница запуска с информацией о пробном запуске (например, о параметрах, метриках и тегах) и артефактах, созданных при запуске, включая модель. На этой странице также содержатся фрагменты кода, которые можно использовать для создания прогнозов с помощью модели.

Чтобы вернуться к этому эксперименту AutoML позже, найдите его в таблице на странице Эксперименты. Результаты каждого эксперимента AutoML, включая записные книжки исследования данных и обучения, хранятся в папке databricks_automl в домашней папке пользователя, запустившего эксперимент.

Регистрация и развертывание модели

Вы можете зарегистрировать и развернуть модель с помощью пользовательского интерфейса AutoML:

  1. Выберите ссылку в столбце "Модели" для регистрации модели. По завершении выполнения в верхней строке будет находиться лучшая модель (на основе основной метрики).
  2. Выберите кнопка регистрации модели , чтобы зарегистрировать модель в реестре моделей.
  3. Выберите Значок моделеймодели на боковой панели, чтобы перейти к реестру моделей.
  4. Выберите имя модели в таблице моделей.
  5. На странице зарегистрированной модели можно обслуживать модель с помощью службы моделей.

Нет модуля с именем Pandas.core.indexes.numeric

При обслуживании модели, созданной с помощью AutoML с обслуживанием моделей, может возникнуть ошибка: No module named 'pandas.core.indexes.numeric

Это связано с несовместимой pandas версией между AutoML и средой конечной точки обслуживания модели. Эту ошибку можно устранить, выполнив скрипт add-pandas-dependency.py. Скрипт изменяет requirements.txt модель и conda.yaml для нее, чтобы включить соответствующую pandas версию зависимостей: pandas==1.5.3

  1. Измените скрипт, чтобы включить run_id запуск MLflow, в котором была зарегистрирована модель.
  2. Повторно зарегистрируйте модель в реестре моделей MLflow.
  3. Попробуйте использовать новую версию модели MLflow.