RScriptStep Класс
Примечание
Это экспериментальный класс, который может быть изменен в любое время. Дополнительные сведения см. по адресу https://aka.ms/azuremlexperimental.
Создает этап конвейера Azure ML, который выполняет скрипт R.
Создайте шаг конвейера Машинного обучения Azure, на котором выполняется скрипт R.
НЕ РЕКОМЕНДУЕТСЯ. Вместо него используется CommandStep. Пример см. в статье о выполнении скриптов R в конвейерах с помощью CommandStep.
- Наследование
-
azureml.pipeline.core._python_script_step_base._PythonScriptStepBaseRScriptStep
Конструктор
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)
Параметры
- arguments
- list
Аргументы командной строки для файла скрипта R. Аргументы будут переданы объекту вычислений через параметр arguments
в RunConfiguration.
Дополнительные сведения об обработке таких аргументов, как специальные символы: RunConfiguration.
- compute_target
- Union[DsvmCompute, AmlCompute, RemoteCompute, HDInsightCompute, str, tuple]
[Обязательно] Используемый целевой объект вычислений. Если значение не указано, используется целевой объект из runconfig
. Этот параметр можно указать как целевой объект вычислений или имя строки целевого объекта вычислений в рабочей области.
Если целевой объект вычислений недоступен во время создания конвейера, можно указать кортеж для ("имя целевого объекта вычислений", "тип целевого объекта вычислений"), чтобы исключить извлечение выборки целевого объекта вычислений (тип AmlCompute — "AmlCompute", а тип RemoteCompute — "VirtualMachine").
- runconfig
- RunConfiguration
[Обязательно.] Конфигурация выполнения, которая инкапсулирует сведения, необходимые для отправки выполнения обучения в эксперименте. Это необходимо для определения конфигураций выполнения R, которые могут быть определены в RSection. Для этого этапа требуется RSection.
- runconfig_pipeline_params
- dict[str, PipelineParameter]
Переопределяет свойства runconfig во время выполнения с использованием пар "ключ-значение", каждая из которых имеет имя свойства runconfig и PipelineParameter для этого свойства.
Поддерживаемые значения: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount"
- inputs
- list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Список входных привязок портов.
- outputs
- list[Union[PipelineData, OutputDatasetConfig, PipelineOutputAbstractDataset, OutputPortBinding]]
Список выходных привязок портов.
- params
- dict
Словарь пар "имя-значение", зарегистрированных как переменные среды с помощью "AML_PARAMETER_".
- source_directory
- str
Папка, содержащая скрипт R, среду Conda и другие ресурсы, используемые на этапе.
- use_gpu
- bool
Указывает, должна ли среда выполнения эксперимента поддерживать GPU.
При значении "True" в среде будет использоваться образ Docker по умолчанию на основе GPU. При значении "False" будет использоваться образ на основе ЦП. Образы Docker по умолчанию (ЦП или GPU) будут использоваться только в том случае, если пользователь не задал оба параметра base_image
и base_dockerfile
.
Этот параметр используется только в целевых объектах вычислений с поддержкой Docker.
Дополнительные сведения о base_image
: https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection.
- custom_docker_image
- str
Имя образа Docker, из которого будет построен образ, используемый для обучения. Если он не задан, в качестве базового образа будет использоваться образ на основе ЦП по умолчанию. Этот параметр не рекомендуется использовать. Он будет удален в следующем выпуске. Вместо этого используйте base_image в DockerSection.
- cran_packages
- list
Устанавливаемые пакеты CRAN. Этот параметр не рекомендуется использовать. Он будет удален в следующем выпуске. Вместо него используйте RSection.cran_packages.
- github_packages
- list
Устанавливаемые пакеты GitHub. Этот параметр не рекомендуется использовать. Он будет удален в следующем выпуске. Вместо него используйте RSection.github_packages.
- custom_url_packages
- list
Пакеты, устанавливаемые из локального, каталога или пользовательского URL-адреса. Этот параметр не рекомендуется использовать. Он будет удален в следующем выпуске. Вместо нее используйте RSection.custom_url_packages.
- allow_reuse
- bool
Указывает, должен ли этап повторно использовать предыдущие результаты при повторном выполнении с теми же параметрами. Повторное использование включено по умолчанию. Если содержимое этапа (скрипты или зависимости), а также входные данные и параметры не изменяются, выходные данные предыдущего выполнения этого этапа используются повторно. При повторном использовании этапа вместо отправки задания для вычисления немедленно предоставляются результаты предыдущего выполнения для последующих этапов. Если в качестве входных данных используются наборы данных Машинного обучения Azure, то повторное использование зависит от изменения определения набора данных, а не базовых данных.
- version
- str
Необязательный тег версии для обозначения изменения функциональных возможностей этапа.
- arguments
- list
Аргументы командной строки для файла скрипта R. Аргументы будут переданы объекту вычислений через параметр arguments
в RunConfiguration.
Дополнительные сведения об обработке таких аргументов, как специальные символы: RunConfiguration.
- compute_target
- Union[DsvmCompute, AmlCompute, RemoteCompute, HDInsightCompute, str, tuple]
[Обязательно] Используемый целевой объект вычислений. Если это не указано, будет использоваться целевой runconfig
объект из . Этот параметр можно указать как целевой объект вычислений или имя строки целевого объекта вычислений в рабочей области.
Если целевой объект вычислений недоступен во время создания конвейера, можно указать кортеж для ("имя целевого объекта вычислений", "тип целевого объекта вычислений"), чтобы исключить извлечение выборки целевого объекта вычислений (тип AmlCompute — "AmlCompute", а тип RemoteCompute — "VirtualMachine").
- runconfig
- RunConfiguration
[Обязательно.] Конфигурация выполнения, которая инкапсулирует сведения, необходимые для отправки выполнения обучения в эксперименте. Это необходимо для определения конфигураций выполнения R, которые могут быть определены в RSection. Для этого этапа требуется RSection.
- runconfig_pipeline_params
- dict[str, PipelineParameter]
Переопределяет свойства runconfig во время выполнения с использованием пар "ключ-значение", каждая из которых имеет имя свойства runconfig и PipelineParameter для этого свойства.
Поддерживаемые значения: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount"
- inputs
- list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Список входных привязок портов.
Список выходных привязок портов.
- params
- dict
Словарь пар "имя-значение", зарегистрированных как переменные среды с помощью "AML_PARAMETER_".
- source_directory
- str
Папка, содержащая скрипт R, среду Conda и другие ресурсы, используемые на этапе.
- use_gpu
- bool
Указывает, должна ли среда выполнения эксперимента поддерживать GPU.
При значении "True" в среде будет использоваться образ Docker по умолчанию на основе GPU. При значении "False" будет использоваться образ на основе ЦП. Образы Docker по умолчанию (ЦП или GPU) будут использоваться только в том случае, если пользователь не задал оба параметра base_image
и base_dockerfile
.
Этот параметр используется только в целевых объектах вычислений с поддержкой Docker.
Дополнительные сведения о base_image
: https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection.
- custom_docker_image
- str
Имя образа Docker, из которого будет построен образ, используемый для обучения. Если он не задан, в качестве базового образа будет использоваться образ на основе ЦП по умолчанию. Этот параметр не рекомендуется использовать. Он будет удален в следующем выпуске. Вместо этого используйте base_image в DockerSection.
- cran_packages
- list
Устанавливаемые пакеты CRAN. Этот параметр не рекомендуется использовать. Он будет удален в следующем выпуске. Вместо него используйте RSection.cran_packages.
- github_packages
- list
Устанавливаемые пакеты GitHub. Этот параметр не рекомендуется использовать. Он будет удален в следующем выпуске. Вместо него используйте RSection.github_packages.
- custom_url_packages
- list
Пакеты, устанавливаемые из локального, каталога или пользовательского URL-адреса. Этот параметр не рекомендуется использовать. Он будет удален в следующем выпуске. Вместо нее используйте RSection.custom_url_packages.
- allow_reuse
- bool
Указывает, должен ли этап повторно использовать предыдущие результаты при повторном выполнении с теми же параметрами. Повторное использование включено по умолчанию. Если содержимое этапа (скрипты или зависимости), а также входные данные и параметры не изменяются, выходные данные предыдущего выполнения этого этапа используются повторно. При повторном использовании этапа вместо отправки задания для вычисления немедленно предоставляются результаты предыдущего выполнения для последующих этапов. Если в качестве входных данных используются наборы данных Машинного обучения 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: https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.rsection.
Методы
create_node |
Создание узла для RScriptStep и его добавление в указанный граф. НЕ РЕКОМЕНДУЕТСЯ. Вместо него используется CommandStep. Пример см. в статье о выполнении скриптов R в конвейерах с помощью CommandStep. Данный метод не предназначен для непосредственного использования. При создании экземпляра конвейера с помощью этого этапа Azure ML автоматически передает необходимые параметры через этот метод, чтобы данный этап можно было добавить в граф конвейера, представляющий рабочий процесс. |
create_node
Создание узла для RScriptStep и его добавление в указанный граф.
НЕ РЕКОМЕНДУЕТСЯ. Вместо него используется CommandStep. Пример см. в статье о выполнении скриптов R в конвейерах с помощью CommandStep.
Данный метод не предназначен для непосредственного использования. При создании экземпляра конвейера с помощью этого этапа Azure ML автоматически передает необходимые параметры через этот метод, чтобы данный этап можно было добавить в граф конвейера, представляющий рабочий процесс.
create_node(graph, default_datastore, context)
Параметры
- default_datastore
- Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Хранилище данных по умолчанию.
- context
- <xref:azureml.pipeline.core._GraphContext>
Контекст графа.
Возвращаемое значение
Созданный узел.
Возвращаемый тип
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по