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


RScriptStep Класс

Замечание

Это экспериментальный класс и может измениться в любое время. Дополнительные сведения см. по адресу https://aka.ms/acr/connected-registry.

Создает шаг конвейера машинного обучения Azure, который запускает скрипт R.

Создайте шаг конвейера машинного обучения Azure, который запускает скрипт R.

УСТАРЕВШИЕ. CommandStep Используйте вместо него. Пример см. в разделе "Запуск скриптов R" в конвейерах с помощью CommandStep.

Конструктор

RScriptStep(script_name, name=None, arguments=None, compute_target=None, runconfig=None, runconfig_pipeline_params=None, inputs=None, outputs=None, params=None, source_directory=None, use_gpu=False, custom_docker_image=None, cran_packages=None, github_packages=None, custom_url_packages=None, allow_reuse=True, version=None)

Параметры

Имя Описание
script_name
Обязательно
str

[Обязательный] Имя скрипта R относительно source_directory.

name
Обязательно
str

Имя шага. Если не указано, script_name используется.

arguments
Обязательно

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

compute_target
Обязательно

[Обязательный] Целевой объект вычислений, используемый. Если оно не указано, используется целевой runconfig объект. Этот параметр может быть указан как целевой объект вычислений или имя строки целевого объекта вычислений в рабочей области. При необходимости, если целевой объект вычислений недоступен во время создания конвейера, можно указать кортеж (имя целевого объекта вычислений, тип целевого объекта вычислений), чтобы избежать получения целевого объекта вычислений (тип AmlCompute — AmlCompute, а тип RemoteCompute — VirtualMachine).

runconfig
Обязательно

[Обязательный] Конфигурация запуска, которая инкапсулирует сведения, необходимые для отправки обучающего запуска в эксперименте. Это необходимо для определения конфигураций запуска R, которые можно определить в RSection. Для этого шага требуется RSection.

runconfig_pipeline_params
Обязательно

Переопределяет свойства runconfig во время выполнения, используя пары "ключ-значение" с именем свойства runconfig и PipelineParameter для этого свойства.

Поддерживаемые значения: NodeCount, MpiProcessCountPerNode, TensorflowWorkerCount, TensorflowParameterServerCount

inputs
Обязательно

Список входных привязок портов.

outputs
Обязательно

Список привязок выходного порта.

params
Обязательно

Словарь пар "имя-значение", зарегистрированных в качестве переменных среды с "AML_PARAMETER_".

source_directory
Обязательно
str

Папка, содержащая скрипт R, conda env и другие ресурсы, используемые на шаге.

use_gpu
Обязательно

Указывает, должна ли среда запускать эксперимент, должна ли поддерживать графические процессоры. Если значение true, образ Docker на основе GPU по умолчанию будет использоваться в среде. Если значение false, будет использоваться образ на основе ЦП. Образы docker по умолчанию (ЦП или GPU) будут использоваться только в том случае, если пользователь не устанавливает оба base_image и base_dockerfile параметры. Этот параметр используется только в целевых объектах вычислений с поддержкой Docker. Дополнительные сведения см. в https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersectionстатье base_image .

custom_docker_image
Обязательно
str

Имя образа Docker, из которого будет создан образ, используемый для обучения. Если не задано, образ на основе ЦП по умолчанию будет использоваться в качестве базового образа. Это не рекомендуется и будет удалено в будущем выпуске. Вместо этого используйте base_image в DockerSection.

cran_packages
Обязательно

Установленные пакеты CRAN. Это не рекомендуется и будет удалено в будущем выпуске. Вместо этого используйте RSection.cran_packages.

github_packages
Обязательно

Установленные пакеты GitHub. Это не рекомендуется и будет удалено в будущем выпуске. Вместо этого используйте RSection.github_packages.

custom_url_packages
Обязательно

Пакеты для установки из локального, каталога или пользовательского URL-адреса. Это не рекомендуется и будет удалено в будущем выпуске. Вместо этого используйте RSection.custom_url_packages.

allow_reuse
Обязательно

Указывает, должен ли шаг повторно использовать предыдущие результаты при повторном запуске с теми же параметрами. Повторное использование включено по умолчанию. Если содержимое шага (скрипты или зависимости), а также входные и параметры остаются неизменными, выходные данные предыдущего выполнения этого шага повторно будут использоваться. При повторном использовании шага вместо отправки задания на вычисление результаты предыдущего запуска немедленно становятся доступными для всех последующих шагов. Если вы используете наборы данных Машинного обучения Azure в качестве входных данных, повторное использование определяется тем, изменилось ли определение набора данных, а не по изменению базовых данных.

version
Обязательно
str

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

script_name
Обязательно
str

[Обязательный] Имя скрипта R относительно source_directory.

name
Обязательно
str

Имя шага. Если не указано, script_name используется.

arguments
Обязательно

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

compute_target
Обязательно

[Обязательный] Целевой объект вычислений, используемый. Если не указано, будет использоваться целевой объект из этого runconfig объекта. Этот параметр может быть указан как целевой объект вычислений или имя строки целевого объекта вычислений в рабочей области. При необходимости, если целевой объект вычислений недоступен во время создания конвейера, можно указать кортеж (имя целевого объекта вычислений, тип целевого объекта вычислений), чтобы избежать получения целевого объекта вычислений (тип AmlCompute — AmlCompute, а тип RemoteCompute — VirtualMachine).

runconfig
Обязательно

[Обязательный] Конфигурация запуска, которая инкапсулирует сведения, необходимые для отправки обучающего запуска в эксперименте. Это необходимо для определения конфигураций запуска R, которые можно определить в RSection. Для этого шага требуется RSection.

runconfig_pipeline_params
Обязательно

Переопределяет свойства runconfig во время выполнения, используя пары "ключ-значение" с именем свойства runconfig и PipelineParameter для этого свойства.

Поддерживаемые значения: NodeCount, MpiProcessCountPerNode, TensorflowWorkerCount, TensorflowParameterServerCount

inputs
Обязательно

Список входных привязок портов.

outputs
Обязательно

Список привязок выходного порта.

params
Обязательно

Словарь пар "имя-значение", зарегистрированных в качестве переменных среды с "AML_PARAMETER_".

source_directory
Обязательно
str

Папка, содержащая скрипт R, conda env и другие ресурсы, используемые на шаге.

use_gpu
Обязательно

Указывает, должна ли среда запускать эксперимент, должна ли поддерживать графические процессоры. Если значение true, образ Docker на основе GPU по умолчанию будет использоваться в среде. Если значение false, будет использоваться образ на основе ЦП. Образы docker по умолчанию (ЦП или GPU) будут использоваться только в том случае, если пользователь не устанавливает оба base_image и base_dockerfile параметры. Этот параметр используется только в целевых объектах вычислений с поддержкой Docker. Дополнительные сведения см. в https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersectionстатье base_image .

custom_docker_image
Обязательно
str

Имя образа Docker, из которого будет создан образ, используемый для обучения. Если не задано, образ на основе ЦП по умолчанию будет использоваться в качестве базового образа. Это не рекомендуется и будет удалено в будущем выпуске. Вместо этого используйте base_image в DockerSection.

cran_packages
Обязательно

Установленные пакеты CRAN. Это не рекомендуется и будет удалено в будущем выпуске. Вместо этого используйте RSection.cran_packages.

github_packages
Обязательно

Установленные пакеты GitHub. Это не рекомендуется и будет удалено в будущем выпуске. Вместо этого используйте RSection.github_packages.

custom_url_packages
Обязательно

Пакеты для установки из локального, каталога или пользовательского URL-адреса. Это не рекомендуется и будет удалено в будущем выпуске. Вместо этого используйте RSection.custom_url_packages.

allow_reuse
Обязательно

Указывает, должен ли шаг повторно использовать предыдущие результаты при повторном запуске с теми же параметрами. Повторное использование включено по умолчанию. Если содержимое шага (скрипты или зависимости), а также входные и параметры остаются неизменными, выходные данные предыдущего выполнения этого шага повторно будут использоваться. При повторном использовании шага вместо отправки задания на вычисление результаты предыдущего запуска немедленно становятся доступными для всех последующих шагов. Если вы используете наборы данных Машинного обучения Azure в качестве входных данных, повторное использование определяется тем, изменилось ли определение набора данных, а не по изменению базовых данных.

version
Обязательно
str

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

Комментарии

RScriptStep — это базовый встроенный шаг для запуска скрипта R в целевом объекте вычислений. Он принимает имя скрипта и другие необязательные параметры, такие как аргументы для скрипта, целевого объекта вычислений, входных и выходных данных. Необходимо указать RunConfiguration требования для RScriptStep, например пользовательского образа Docker, необходимых пакетов cran/github.

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

В следующем примере кода показано, как использовать RScriptStep в сценарии обучения машинного обучения.


   from azureml.core.runconfig import RunConfiguration
   from azureml.core.environment import Environment, RSection, RCranPackage
   from azureml.pipeline.steps import RScriptStep

   rc = RunConfiguration()
   rc.framework='R'
   rc.environment.r = RSection()                            # R details with required packages
   rc.environment.docker.enabled = True                     # to enable docker image
   rc.environment.docker.base_image = '<custom user image>' # to use custom image

   cran_package1 = RCranPackage()
   cran_package1.name = "ggplot2"
   cran_package1.repository = "www.customurl.com"
   cran_package1.version = "2.1"
   rc.environment.r.cran_packages = [cran_package1]

   trainStep = RScriptStep(script_name="train.R",
                           arguments=["--input", blob_input_data, "--output", output_data1],
                           inputs=[blob_input_data],
                           outputs=[output_data1],
                           compute_target=compute_target,
                           use_gpu=False,
                           runconfig=rc,
                           source_directory=project_folder)

Дополнительные https://aka.ms/pl-first-pipeline сведения о создании конвейеров см. в целом. Дополнительные сведения о RSection см. в статье .

Методы

create_node

Создайте узел для RScriptStep и добавьте его в указанный граф.

УСТАРЕВШИЕ. CommandStep Используйте вместо него. Пример см. в разделе "Запуск скриптов R" в конвейерах с помощью CommandStep.

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

create_node

Создайте узел для RScriptStep и добавьте его в указанный граф.

УСТАРЕВШИЕ. CommandStep Используйте вместо него. Пример см. в разделе "Запуск скриптов R" в конвейерах с помощью CommandStep.

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

create_node(graph, default_datastore, context)

Параметры

Имя Описание
graph
Обязательно

Объект graph, в который добавляется узел.

default_datastore
Обязательно

Хранилище данных по умолчанию.

context
Обязательно
<xref:azureml.pipeline.core._GraphContext>

Контекст графа.

Возвращаемое значение

Тип Описание

Созданный узел.