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


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

ОБЛАСТЬ ПРИМЕНЕНИЯ: расширение машинного обучения Azure CLI версии 2 (текущее)

Из этой статьи вы узнаете, как создавать и запускать конвейеры машинного обучения с помощью студии машинного обучения Azure и компонентов. Конвейеры можно создавать без использования компонентов, но компоненты обеспечивают лучшую гибкость и повторное использование. Конвейеры машинного обучения Azure можно определить в YAML и запустить из Azure CLI, созданные на Python или составленные в конструкторе Azure Machine Learning Studio с интерфейсом перетаскивания. В этой статье рассматривается пользовательский интерфейс конструктора студии машинного обучения Azure.

Необходимые компоненты

Примечание.

Конструктор поддерживает два типа компонентов, классические предварительно созданные компоненты (версии 1) и пользовательские компоненты (версия 2). Эти два типа компонентов несовместимы.

Классические предварительно созданные компоненты предоставляют предварительно созданные компоненты главным образом для обработки данных и традиционных задач машинного обучения, таких как регрессия и классификация. Классические предварительно созданные компоненты по-прежнему поддерживаются, но не будут добавлены новые компоненты. Кроме того, развертывание классических предварительно созданных компонентов (версии 1) не поддерживает управляемые сетевые конечные точки (версия 2).

Пользовательские компоненты позволяют упаковывать собственный код в качестве компонента. Он поддерживает совместное использование компонентов между рабочими областями и простой разработки в студии, CLI версии 2 и интерфейсах ПАКЕТА SDK версии 2.

Для новых проектов настоятельно рекомендуется использовать пользовательские компоненты, совместимые с Машинным обучением Azure версии 2 и получающие новые обновления.

Эта статья относится к пользовательским компонентам.

Регистрация компонента в рабочей области

Чтобы создать конвейер с помощью компонентов в пользовательском интерфейсе конструктора, необходимо сначала зарегистрировать компоненты в рабочей области. Вы можете использовать пользовательский интерфейс, Azure CLI или пакет SDK для регистрации компонентов в рабочей области, чтобы предоставить общий доступ к компоненту и повторно использовать его в рабочей области. Зарегистрированные компоненты поддерживают автоматическое управление версиями, чтобы можно было обновить компонент, но убедиться, что конвейеры, требующие более старой версии, продолжают работать.

В следующем примере пользовательский интерфейс используется для регистрации компонентов. Исходные файлы компонента находятся в cli/jobs/pipelines-with-components/basics/1b_e2e_registered_components каталоге azureml-examples репозитория. Необходимо клонировать репозиторий.

  1. В рабочей области Машинное обучение Azure перейдите на страницу "Компоненты" и выберите "Новый компонент". Внешний вид страницы компонентов отличается в зависимости от того, были ли ранее созданы компоненты.

    Снимок экрана: кнопка регистрации записи на странице компонента.

    Снимок экрана: кнопка регистрации записи на странице компонента с архивом.

    В этом примере используется train.ymlв каталоге 1b_e2e_registered_components. Файл YAML определяет имя, тип, интерфейс, включая входные и выходные данные, код, среду и команду этого компонента. Код этого компонента (train.py) находится в ./train_src папке. Этот код описывает логику выполнения этого компонента. Дополнительные сведения о схеме компонента см. в справочнике по схеме YAML компонента команд.

    Примечание.

    Для регистрации компонентов в пользовательском интерфейсе code, определенных в YAML файле компонента, можно указывать только текущую папку, где находится YAML файл, или вложенные папки. Так как пользовательский интерфейс не может распознать родительский каталог, нельзя указать ../.

    additional_includes может указывать только текущую папку или вложенную папку.

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

  2. Выберите папку, затем перейдите к 1b_e2e_registered_components папке для загрузки.

  3. Выберите train.yml из имени файла Yaml.

    Снимок экрана: отправка из локальной папки.

  4. Нажмите кнопку "Далее", а затем подтвердите сведения об этом компоненте. После подтверждения нажмите кнопку "Создать ", чтобы завершить процесс регистрации.

  5. Повторите предыдущие шаги, чтобы зарегистрировать компоненты Score и Eval с помощью score.yml и eval.yml.

  6. После успешной регистрации трех компонентов вы увидите компоненты в пользовательском интерфейсе студии.

Снимок экрана с зарегистрированным компонентом на странице компонента.

Создание конвейера с помощью зарегистрированного компонента

  1. Создайте новый конвейер в конструкторе. Выберите параметр Custom .

    Снимок экрана: создание конвейера на домашней странице конструктора.

  2. Выберите значок карандаша, чтобы дать конвейеру понятное имя.

    Снимок экрана: переименование конвейера.

  3. В библиотеке ресурсов конструктора отображаются вкладки "Данные", " Модель" и "Компоненты ". Выберите компоненты. Вы можете просмотреть компоненты, зарегистрированные из предыдущего раздела. Если существует слишком много компонентов, можно выполнить поиск по имени компонента.

    Снимок экрана с зарегистрированным компонентом в библиотеке ресурсов.

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

    Снимок экрана, показывающий изменение версии компонента.

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

    Снимок экрана: добавление данных.

  5. Перетащите данные на холст. Ваш конвейер должен выглядеть, как на следующем скриншоте.

    Снимок экрана: черновик конвейера.

  6. Подключите данные и компоненты, перетаскивая подключения на холсте.

    Анимация, показывающая подключение конвейера.

  7. Дважды щелкните один компонент, вы увидите правую область, в которой можно настроить компонент.

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

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

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

  8. Поднять max_epocs входные данные компонента train до уровня входных данных конвейера. Таким образом, перед отправкой конвейера можно назначить другое значение этому входному значению.

    Снимок экрана: повышение входных данных компонента в входные данные конвейера.

Примечание.

Пользовательские компоненты и классические заранее созданные компоненты в среде Designer нельзя использовать вместе.

Отправить конвейер

  1. Чтобы отправить конвейер, нажмите кнопку "Настроить" и "Отправить".

    Снимок экрана: кнопка настройки и отправки.

  2. Затем вы увидите пошаговый мастер. Следуйте инструкциям мастера, чтобы отправить задание конвейера.

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

На шаге "Основы" можно настроить эксперимент, отображаемое имя задания, описание задания и т. д.

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

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

Шаг проверки и отправки — это последний шаг для проверки всех конфигураций перед отправкой. Мастер запоминает конфигурацию последнего времени при отправке конвейера.

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

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

Указание удостоверения в задании конвейера

При отправке задания конвейера можно указать учетные данные для доступа к данным в разделе Run settings. Удостоверение по умолчанию — AMLToken, которое не использует никаких удостоверений. Конвейер также может поддерживать UserIdentity и Managed. Для UserIdentityэтого идентификатор отправки задания используется для доступа к входным данным и записи результата в выходную папку. При указании Managedсистема использует управляемое удостоверение для доступа к входным данным и записи результата в выходную папку.

Снимок экрана: настройка удостоверения в задании конвейера.