RScriptStep Clase
Nota
Se trata de una clase experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información.
Crea un paso de canalización de Azure Machine Learning que ejecuta el script de R.
Cree un paso de canalización de Azure ML que ejecute el script de R.
EN DESUSO. Use CommandStep en su lugar. Para obtener un ejemplo, vea Cómo ejecutar scripts de R en canalizaciones con CommandStep.
- Herencia
-
azureml.pipeline.core._python_script_step_base._PythonScriptStepBaseRScriptStep
Constructor
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)
Parámetros
Nombre | Description |
---|---|
script_name
Requerido
|
[Obligatorio] Nombre de un script de R relativo a |
name
Requerido
|
Nombre del paso. Si no se especifica, se usa |
arguments
Requerido
|
Argumentos de línea de comandos para el archivo de script de R. Los argumentos se pasarán al proceso a través del parámetro |
compute_target
Requerido
|
[Obligatorio] Destino de proceso que se usará. Si no se especifica, se usa el destino de |
runconfig
Requerido
|
[Obligatorio] Ejecute la configuración que encapsula la información necesaria para enviar una ejecución de entrenamiento en un experimento. Esto es necesario para definir configuraciones de ejecución de R que se pueden definir en RSection. Se requiere RSection para este paso. |
runconfig_pipeline_params
Requerido
|
Invalida las propiedades runconfig en tiempo de ejecución mediante pares clave-valor, cada una con el nombre de la propiedad runconfig y PipelineParameter para esa propiedad. Valores admitidos: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount" |
inputs
Requerido
|
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Una lista de enlaces de puerto de entrada. |
outputs
Requerido
|
Una lista de enlaces de puerto de salida. |
params
Requerido
|
Un diccionario de pares nombre-valor registrados como variables de entorno con "AML_PARAMETER_". |
source_directory
Requerido
|
Carpeta que contiene el script de R, conda env y otros recursos usados en el paso. |
use_gpu
Requerido
|
Indica si el entorno para ejecutar el experimento debe admitir GPU.
Si es True, se usará en el entorno una imagen predeterminada de Docker basada en GPU. Si es False, se usará una imagen basada en CPU. Las imágenes de Docker predeterminadas (CPU o GPU) solo se usarán si un usuario no establece los parámetros |
custom_docker_image
Requerido
|
El nombre de la imagen de Docker a partir de la que se va a crear la imagen que se va a usar para el entrenamiento. Si no se establece, se usará una imagen predeterminada basada en CPU como imagen base. Se ha puesto en desuso y se quitará en próximas versiones. En su lugar, use base_image en DockerSection. |
cran_packages
Requerido
|
Paquetes CRAN que se instalarán. Se ha puesto en desuso y se quitará en próximas versiones. Use RSection.cran_packages en su lugar. |
github_packages
Requerido
|
Paquetes GitHub que se instalarán. Se ha puesto en desuso y se quitará en próximas versiones. Use RSection.github_packages en su lugar. |
custom_url_packages
Requerido
|
Paquetes que se instalarán desde una dirección URL local, de directorio o personalizada. Se ha puesto en desuso y se quitará en próximas versiones. Use RSection.custom_url_packages en su lugar. |
allow_reuse
Requerido
|
Indica si el paso debe volver a usar los resultados anteriores cuando se ejecuta con la misma configuración o entrada. La reutilización está habilitada de manera predeterminada. Si el contenido del paso (scripts o dependencias), así como las entradas y los parámetros permanecen sin cambios, se reutiliza la salida de la ejecución anterior de este paso. Al volver a usar el paso, en lugar de enviar el trabajo al proceso, los resultados de la ejecución anterior se hacen disponibles inmediatamente para los pasos posteriores. Si usa conjuntos de datos de Azure Machine Learning como entradas, la reutilización viene determinada por si la definición del conjunto de datos ha cambiado, no por si los datos subyacentes han cambiado. |
version
Requerido
|
Una etiqueta de versión opcional para indicar un cambio en la funcionalidad del paso. |
script_name
Requerido
|
[Obligatorio] Nombre de un script de R relativo a |
name
Requerido
|
Nombre del paso. Si no se especifica, se usa |
arguments
Requerido
|
Argumentos de línea de comandos para el archivo de script de R. Los argumentos se pasarán al proceso a través del parámetro |
compute_target
Requerido
|
[Obligatorio] Destino de proceso que se usará. Si no se especifica, se usará el destino de . |
runconfig
Requerido
|
[Obligatorio] Ejecute la configuración que encapsula la información necesaria para enviar una ejecución de entrenamiento en un experimento. Esto es necesario para definir configuraciones de ejecución de R que se pueden definir en RSection. Se requiere RSection para este paso. |
runconfig_pipeline_params
Requerido
|
Invalida las propiedades runconfig en tiempo de ejecución mediante pares clave-valor, cada una con el nombre de la propiedad runconfig y PipelineParameter para esa propiedad. Valores admitidos: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount" |
inputs
Requerido
|
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Una lista de enlaces de puerto de entrada. |
outputs
Requerido
|
Una lista de enlaces de puerto de salida. |
params
Requerido
|
Un diccionario de pares nombre-valor registrados como variables de entorno con "AML_PARAMETER_". |
source_directory
Requerido
|
Carpeta que contiene el script de R, conda env y otros recursos usados en el paso. |
use_gpu
Requerido
|
Indica si el entorno para ejecutar el experimento debe admitir GPU.
Si es True, se usará en el entorno una imagen predeterminada de Docker basada en GPU. Si es False, se usará una imagen basada en CPU. Las imágenes de Docker predeterminadas (CPU o GPU) solo se usarán si un usuario no establece los parámetros |
custom_docker_image
Requerido
|
El nombre de la imagen de Docker a partir de la que se va a crear la imagen que se va a usar para el entrenamiento. Si no se establece, se usará una imagen predeterminada basada en CPU como imagen base. Se ha puesto en desuso y se quitará en próximas versiones. En su lugar, use base_image en DockerSection. |
cran_packages
Requerido
|
Paquetes CRAN que se instalarán. Se ha puesto en desuso y se quitará en próximas versiones. Use RSection.cran_packages en su lugar. |
github_packages
Requerido
|
Paquetes GitHub que se instalarán. Se ha puesto en desuso y se quitará en próximas versiones. Use RSection.github_packages en su lugar. |
custom_url_packages
Requerido
|
Paquetes que se instalarán desde una dirección URL local, de directorio o personalizada. Se ha puesto en desuso y se quitará en próximas versiones. Use RSection.custom_url_packages en su lugar. |
allow_reuse
Requerido
|
Indica si el paso debe volver a usar los resultados anteriores cuando se ejecuta con la misma configuración o entrada. La reutilización está habilitada de manera predeterminada. Si el contenido del paso (scripts o dependencias), así como las entradas y los parámetros permanecen sin cambios, se reutiliza la salida de la ejecución anterior de este paso. Al volver a usar el paso, en lugar de enviar el trabajo al proceso, los resultados de la ejecución anterior se hacen disponibles inmediatamente para los pasos posteriores. Si usa conjuntos de datos de Azure Machine Learning como entradas, la reutilización viene determinada por si la definición del conjunto de datos ha cambiado, no por si los datos subyacentes han cambiado. |
version
Requerido
|
Una etiqueta de versión opcional para indicar un cambio en la funcionalidad del paso. |
Comentarios
Un RScriptStep es un paso básico e integrado para ejecutar un script de R en un destino de proceso. Toma un nombre de script y otros parámetros opcionales, como argumentos para el script, el destino de proceso, las entradas y las salidas. Debe usar RunConfiguration para especificar los requisitos de RScriptStep, como la imagen personalizada de Docker, los paquetes de Cran/GitHub necesarios.
El procedimiento recomendado para trabajar con RScriptStep es usar una carpeta independiente para los scripts y los archivos dependientes asociados al paso, y especificar esa carpeta con el parámetro source_directory
.
Seguir este procedimiento recomendado tiene dos ventajas. En primer lugar, ayuda a reducir el tamaño de la instantánea creada para el paso porque solo se crea una instantánea de lo que se necesita para el paso. En segundo lugar, la salida del paso de una ejecución anterior se puede reutilizar si no hay ningún cambio en source_directory
que desencadene una nueva carga de la instantánea.
En el ejemplo de código siguiente se muestra cómo usar un RScriptStep en un escenario de entrenamiento de aprendizaje automático.
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)
Consulte https://aka.ms/pl-first-pipeline para obtener más detalles sobre la creación de canalizaciones en general. Consulte https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.rsection para obtener más detalles sobre RSection.
Métodos
create_node |
Cree un nodo para RScriptStep y agréguelo al gráfico especificado. EN DESUSO. Use CommandStep en su lugar. Para obtener un ejemplo, vea Cómo ejecutar scripts de R en canalizaciones con CommandStep. No se debe llamar a este método directamente. Cuando se crea una instancia de una canalización con este paso, Azure ML pasa automáticamente los parámetros necesarios a través de este método para que ese paso se pueda agregar a un gráfico de canalización que represente el flujo de trabajo. |
create_node
Cree un nodo para RScriptStep y agréguelo al gráfico especificado.
EN DESUSO. Use CommandStep en su lugar. Para obtener un ejemplo, vea Cómo ejecutar scripts de R en canalizaciones con CommandStep.
No se debe llamar a este método directamente. Cuando se crea una instancia de una canalización con este paso, Azure ML pasa automáticamente los parámetros necesarios a través de este método para que ese paso se pueda agregar a un gráfico de canalización que represente el flujo de trabajo.
create_node(graph, default_datastore, context)
Parámetros
Nombre | Description |
---|---|
graph
Requerido
|
El objeto de grafo al que se agrega el nodo. |
default_datastore
Requerido
|
El almacén de datos predeterminado. |
context
Requerido
|
<xref:azureml.pipeline.core._GraphContext>
El contexto del grafo. |
Devoluciones
Tipo | Description |
---|---|
El nodo creado. |