Создание заданий Машинного обучения Azure
Первый шаг реализации модели машинного обучения — запуск задания Машинного обучения Azure. Отдельные скрипты можно запускать как задания команды, а группы скриптов — как задания конвейера.
Команда по обработке и анализу данных предоставляет вам результаты своей работы в записной книжке Jupyter, в которой данные загружаются, преобразуются и обучаются. Чтобы подготовить код и модель для рабочей среды, выполните следующие действия:
- Рефакторинг записной книжки в скрипты.
- См. скрипты в определении задания.
- Запуск задания для обучения модели.
Рефакторинг кода в скрипты
Чтобы подготовить модель машинного обучения к рабочей среде, сначала необходимо подготовить код для рабочей среды. Если у вас есть записная книжка Jupyter, которую нужно преобразовать в рабочий код, выполните следующие действия:
- Очистка ненужного кода.
- Экспорт кода в скрипты Python.
- Использование функций в скриптах.
При использовании функций в скриптах будет проще протестировать качество кода. Если у вас есть скрипт, который требуется выполнить, можно использовать задание Машинного обучения Azure для выполнения кода.
Определение задания Машинного обучения Azure
Чтобы определить задание в Машинном обучении Azure, можно создать YAML-файл. Вы можете выполнить скрипт как задание команды или несколько скриптов последовательно в виде конвейера. В обоих случаях потребуется создать YAML-файл, который содержит следующие сведения:
- Какие скрипты надо выполнить.
- Входные и выходные данные для каждого скрипта.
- Вычислительные ресурсы, которые будут использоваться для выполнения скриптов.
- Среда, которую нужно установить на вычислительных ресурсах для запуска скриптов.
Пример задания команды, использующего зарегистрированный ресурс данных в качестве входных данных при запуске скрипта main.py
показан в следующем YAML:
$schema: https://azuremlschemas.azureedge.net/latest/commandJob.schema.json
code: src
command: >-
python main.py
--diabetes-csv ${{inputs.diabetes}}
inputs:
diabetes:
path: azureml:diabetes-data:1
mode: ro_mount
environment: azureml:basic-env-scikit@latest
compute: azureml:aml-instance
experiment_name: diabetes-data-example
description: Train a classification model on diabetes data using a registered dataset as input.
В YAML-файле вы найдете необходимые сведения:
code
ссылается на локальную папку, где хранятся скрипты, которые требуется запустить. Ключcommand
указывает, что скриптmain.py
в папкеsrc
должен быть выполнен, используя значениеinputs.diabetes
параметраdiabetes-csv
.- Версия 1 зарегистрированного ресурса данных
diabetes-data
в рабочей области Машинного обучения Azure подключается к вычислительным ресурсам и будет использоваться в качестве входных данных для скрипта. - Вычислительный экземпляр
aml-instance
будет использоваться для выполнения скриптов. - Последняя версия зарегистрированной пользовательской среды
basic-env-scikit
будет установлена на вычислительном экземпляре перед запуском скрипта.
Чтобы проверить определение YAML задания, его можно активировать с помощью CLI версии 2.
Запуск задания Машинного обучения Azure
Когда вы хотите запустить задание Машинного обучения Azure, можно использовать CLI версии 2. Можно установить CLI версии 2 на локальном устройстве или использовать Azure Cloud Shell.
В любом случае необходимо сначала установить расширение Машинного обучения Azure.
Для установки в Windows выполните следующую команду:
az extension add -n ml -y
После установки расширения Машинного обучения Azure для CLI и получения доступа к подписке Azure, с которой вы хотите работать, вы можете отправить задание Машинного обучения Azure с помощью следующей команды:
az ml job create --file job.yml
Примечание.
Дополнительные сведения об управлении заданиями Машинного обучения Azure с помощью CLI (версия 2) см. в справочной документации по az ml job.