Запуск задания R для обучения модели
ОБЛАСТЬ ПРИМЕНЕНИЯ: расширение машинного обучения Azure CLI версии 2 (текущее)
В этой статье объясняется, как выполнить скрипт R, адаптированный для выполнения в рабочей среде, и настроить его для запуска в качестве задания R с помощью Машинное обучение Azure CLI версии 2.
Примечание.
Хотя название этой статьи относится к обучению модели, вы можете на самом деле запустить любой вид скрипта R, если он соответствует требованиям, перечисленным в адаптируемой статье.
Необходимые компоненты
- Рабочая область Машинного обучения Azure.
- Зарегистрированный ресурс данных, который использует ваше задание обучения.
- Установлено расширение Azure CLI и ml. Или используйте вычислительный экземпляр в рабочей области, в котором предварительно установлен интерфейс командной строки.
- Вычислительный кластер или вычислительный экземпляр для запуска задания обучения.
- Среда R для вычислительного кластера, используемая для запуска задания.
Создание папки с этой структурой
Создайте эту структуру папок для проекта:
📁 r-job-azureml
├─ src
│ ├─ azureml_utils.R
│ ├─ r-source.R
├─ job.yml
Внимание
Весь исходный src
код переходит в каталог.
- Источник r. R-файл — это скрипт R , адаптированный для выполнения в рабочей среде. Убедитесь, что вы выполните действия по кэшированию и регистрации модели в этом скрипте.
- Azureml_utils . Требуется R-файл . Используйте этот исходный код для содержимого файла.
Подготовка задания YAML
Машинное обучение Azure CLI версии 2 разные схемы YAML для различных операций. Схема YAML задания используется для отправки задания в файле job.yml, который является частью этого проекта.
Необходимо собрать определенные фрагменты информации, чтобы поместить их в YAML:
- Имя зарегистрированного ресурса данных, используемого в качестве входных данных (с версией):
azureml:<REGISTERED-DATA-ASSET>:<VERSION>
- Имя созданной среды (с версией):
azureml:<R-ENVIRONMENT-NAME>:<VERSION>
- Имя вычислительного кластера:
azureml:<COMPUTE-CLUSTER-NAME>
Совет
Для артефактов Машинное обучение Azure, требующих версий (ресурсов данных, сред), можно использовать URI azureml:<AZUREML-ASSET>@latest
ярлыка, чтобы получить последнюю версию этого артефакта, если вам не нужно задать определенную версию.
Пример схемы YAML для отправки задания
Измените файл job.yml, чтобы он содержал следующее. Обязательно замените отображаемые <IN-BRACKETS-AND-CAPS>
значения и удалите квадратные скобки.
$schema: https://azuremlschemas.azureedge.net/latest/commandJob.schema.json
# the Rscript command goes in the command key below. Here you also specify
# which parameters are passed into the R script and can reference the input
# keys and values further below
# Modify any value shown below <IN-BRACKETS-AND-CAPS> (remove the brackets)
command: >
Rscript <NAME-OF-R-SCRIPT>.R
--data_file ${{inputs.datafile}}
--other_input_parameter ${{inputs.other}}
code: src # this is the code directory
inputs:
datafile: # this is a registered data asset
type: uri_file
path: azureml:<REGISTERED-DATA-ASSET>@latest
other: 1 # this is a sample parameter, which is the number 1 (as text)
environment: azureml:<R-ENVIRONMENT-NAME>@latest
compute: azureml:<COMPUTE-CLUSTER-OR-INSTANCE-NAME>
experiment_name: <NAME-OF-EXPERIMENT>
description: <DESCRIPTION>
отправить задание.
В следующих командах в этом разделе может потребоваться знать:
- Имя рабочей области Машинное обучение Azure
- Имя группы ресурсов, в которой находится рабочая область
- Подписка, в которой находится рабочая область
Найдите следующие значения из Студия машинного обучения Azure:
- Войдите и откройте рабочую область.
- На панели инструментов в правом верхнем углу Студии машинного обучения Azure выберите имя рабочей области.
- Вы можете скопировать значения из появиющегося раздела.
Чтобы отправить задание, выполните следующие команды в окне терминала:
Измените каталоги в каталоги
r-job-azureml
.cd r-job-azureml
войдите в Azure. Если вы выполняете это из Машинное обучение Azure вычислительного экземпляра, используйте следующее:
az login --identity
Если вы не находитесь в вычислительном экземпляре, опустите
--identity
и следуйте запросу, чтобы открыть окно браузера для проверки подлинности.Убедитесь, что у вас есть самые последние версии интерфейса командной строки и
ml
расширения:az upgrade
Если у вас несколько подписок Azure, задайте активную подписку на ту, которую вы используете для рабочей области. (Этот шаг можно пропустить, только если у вас есть доступ только к одной подписке.) Замените
<SUBSCRIPTION-NAME>
именем подписки. Также удалите квадратные скобки<>
.az account set --subscription "<SUBSCRIPTION-NAME>"
Теперь используйте CLI для отправки задания. Если вы делаете это в вычислительном экземпляре рабочей области, можно использовать переменные среды для имени рабочей области и группы ресурсов, как показано в следующем коде. Если вы не используете вычислительный экземпляр, замените эти значения именем рабочей области и группой ресурсов.
az ml job create -f job.yml --workspace-name $CI_WORKSPACE --resource-group $CI_RESOURCE_GROUP
После отправки задания можно проверить состояние и результаты студии:
- Войдите в Студию машинного обучения Azure.
- Выберите рабочую область, если она еще не загружена.
- В области навигации слева выберите "Задания".
- Выберите имя эксперимента, используемое для обучения модели.
- Выберите отображаемое имя задания для просмотра сведений и артефактов задания, включая метрики, изображения, дочерние задания, выходные данные, журналы и код, используемые в задании.
Регистрация модели
Наконец, после завершения задания обучения зарегистрируйте модель, если вы хотите развернуть ее. Начните в студии со страницы с подробными сведениями о задании.
После завершения задания выберите "Выходные данные и журналы ", чтобы просмотреть выходные данные задания.
Откройте папку моделей, чтобы проверить наличие crate.bin и MLmodel. Если нет, проверьте журналы, чтобы узнать, произошла ли ошибка.
На панели инструментов вверху выберите +Зарегистрировать модель.
Не используйте тип модели MLflow , даже если он обнаружен. Измените тип модели с типа MLflow по умолчанию на неопределенный тип. При выходе из нее в качестве MLflow возникает ошибка.
Для выходных данных задания выберите модели, папку, содержащую модель.
Выберите Далее.
Укажите имя, которое вы хотите использовать для модели. При желании добавьте описание, версию и теги .
Выберите Далее.
Проверьте сведения.
Выберите Зарегистрировать.
В верхней части страницы вы увидите подтверждение регистрации модели. Подтверждение выглядит примерно так:
Щелкните здесь, чтобы перейти к этой модели. Если вы хотите просмотреть сведения о зарегистрированной модели.
Следующие шаги
Теперь, когда у вас есть зарегистрированная модель, узнайте, как развернуть модель R в сети (в реальном времени).