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

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

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

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

Примечание.

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

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

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

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

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

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

Чтобы создать конвейер с помощью компонентов в пользовательском интерфейсе, сначала необходимо зарегистрировать компоненты в рабочей области. Вы можете использовать пользовательский интерфейс, ИНТЕРФЕЙС командной строки или пакет SDK для регистрации компонентов в рабочей области, чтобы предоставить общий доступ к компоненту и повторно использовать его в рабочей области. Зарегистрированные компоненты поддерживают автоматическое управление версиями, чтобы можно было обновить компонент, но убедиться, что конвейеры, требующие более старой версии, продолжают работать.

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

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

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

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

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

Примечание.

При регистрации компонентов в пользовательском интерфейсе, определенных в файле YAML компонента, можно указать только текущую папку, code в которой находится ФАЙЛ YAML или вложенные папки, что означает, что невозможно указать ../code , так как пользовательский интерфейс не может распознать родительский каталог. additional_includes может указывать только текущую или вложенную папку. В настоящее время пользовательский интерфейс поддерживает только регистрацию компонентов с типом command .

  1. Выберите "Отправить из папки" и выберите папку для отправки 1b_e2e_registered_components . Выберите train.yml из раскрывающегося списка.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    В этом примере мы будем использовать примеры данных в этом пути. Зарегистрируйте данные в рабочей области, выбрав значок добавления в библиотеке активов конструктора —> вкладка данных, задайте type = Folder(uri_folder), а затем следуйте мастеру, чтобы зарегистрировать данные. Тип данных должен быть uri_folder для соответствия определению компонента обучения.

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

    Затем перетащите данные на холст. Теперь конвейер должен выглядеть следующим образом.

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

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

    GIF-файл, показывающий подключение конвейера.

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

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

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

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

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

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

Примечание.

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

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

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

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

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

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

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

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

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

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

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

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

Следующие шаги