RScriptStep Klasse
Hinweis
Dies ist eine experimentelle Klasse, die jederzeit geändert werden kann. Unter https://aka.ms/azuremlexperimental finden Sie weitere Informationen.
Erstellt einen Azure ML-Pipelineschritt, in dem ein R-Skript ausgeführt wird.
Erstellen Sie einen Azure ML-Pipelineschritt, der ein R-Skript ausführt.
VERALTET. Verwenden Sie stattdessen CommandStep. Ein Beispiel finden Sie unter How to run R scripts in pipelines with CommandStep (Ausführen von R-Skripts in Pipelines mit CommandStep).
- Vererbung
-
azureml.pipeline.core._python_script_step_base._PythonScriptStepBaseRScriptStep
Konstruktor
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)
Parameter
Name | Beschreibung |
---|---|
script_name
Erforderlich
|
[Erforderlich] Der Name eines R-Skripts relativ zu |
name
Erforderlich
|
Der Name des Schritts. Wenn keine Angabe erfolgt, wird |
arguments
Erforderlich
|
Befehlszeilenargumente für die R-Skriptdatei. Die Argumente werden über den |
compute_target
Erforderlich
|
[Erforderlich] Das zu verwendende Computeziel. Wenn keine Angabe erfolgt, wird das Ziel aus |
runconfig
Erforderlich
|
[Erforderlich] Ausführungskonfiguration, die die Informationen kapselt, die zum Übermitteln eines Trainingslaufs in einem Experiment erforderlich sind. Dies ist erforderlich, um R-Ausführungskonfigurationen zu definieren, die in RSection definiert werden können. RSection ist für diesen Schritt erforderlich. |
runconfig_pipeline_params
Erforderlich
|
Überschreibt runconfig-Eigenschaften zur Laufzeit unter Verwendung von Schlüssel-Wert-Paaren mit jeweils dem Namen der runconfig-Eigenschaft und dem Pipelineparameter für diese Eigenschaft. Unterstützte Werte: „NodeCount“, „MpiProcessCountPerNode“, „TensorflowWorkerCount“, „TensorflowParameterServerCount“ |
inputs
Erforderlich
|
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Eine Liste mit Eingabeportbindungen. |
outputs
Erforderlich
|
Eine Liste mit Ausgabeportbindungen. |
params
Erforderlich
|
Ein Wörterbuch mit Name-Wert-Paaren, die als Umgebungsvariablen mit „AML_PARAMETER_“ registriert sind. |
source_directory
Erforderlich
|
Ein Ordner, der R-Skript, die Conda-Umgebung und andere Ressourcen enthält, die im Schritt verwendet werden. |
use_gpu
Erforderlich
|
Gibt an, ob die Umgebung, in der das Experiment ausgeführt werden soll, GPUs unterstützen soll.
TRUE gibt an, dass ein GPU-basiertes Docker-Standardimage in der Umgebung verwendet wird. Bei FALSE wird ein CPU-basiertes Image verwendet. Standardmäßige Docker-Images (CPU oder GPU) werden nur verwendet, wenn ein Benutzer nicht die Parameter |
custom_docker_image
Erforderlich
|
Der Name des Docker-Images, mit dem das für das Training zu verwendende Image erstellt wird. Wenn diese Einstellung nicht festgelegt ist, wird als Basisimage ein CPU-basiertes Standardimage verwendet. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen base_image in DockerSection. |
cran_packages
Erforderlich
|
CRAN-Pakete, die installiert werden sollen. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen RSection.cran_packages. |
github_packages
Erforderlich
|
Zu installierende GitHub-Pakete. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen RSection.github_packages. |
custom_url_packages
Erforderlich
|
Pakete, die von einer lokalen, benutzerdefinierten oder Verzeichnis-URL installiert werden sollen. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen RSection.custom_url_packages. |
allow_reuse
Erforderlich
|
Gibt an, ob bei dem Schritt vorherige Ergebnisse wiederverwendet werden sollen, wenn er mit den gleichen Einstellungen erneut ausgeführt wird. Die Wiederverwendung ist standardmäßig aktiviert. Wenn der Schrittinhalt (Skripts/Abhängigkeiten) sowie die Eingaben und Parameter unverändert bleiben, wird die Ausgabe der vorherigen Ausführung dieses Schritts wiederverwendet. Wenn Sie den Schritt wiederverwenden, anstatt den Auftrag zum Berechnen zu übermitteln, werden die Ergebnisse der vorherigen Ausführung sofort für alle nachfolgenden Schritte verfügbar gemacht. Wenn Sie Azure Machine Learning-Datasets als Eingaben verwenden, hängt die Wiederverwendung nicht davon ab, ob sich die zugrunde liegenden Daten geändert haben, sondern davon, ob sich die Definition des Datasets geändert hat. |
version
Erforderlich
|
Ein optionales Versionstag, um eine Änderung der Funktionalität für den Schritt zu kennzeichnen. |
script_name
Erforderlich
|
[Erforderlich] Der Name eines R-Skripts relativ zu |
name
Erforderlich
|
Der Name des Schritts. Wenn keine Angabe erfolgt, wird |
arguments
Erforderlich
|
Befehlszeilenargumente für die R-Skriptdatei. Die Argumente werden über den |
compute_target
Erforderlich
|
[Erforderlich] Das zu verwendende Computeziel. Wenn nicht angegeben, wird das Ziel von |
runconfig
Erforderlich
|
[Erforderlich] Ausführungskonfiguration, die die Informationen kapselt, die zum Übermitteln eines Trainingslaufs in einem Experiment erforderlich sind. Dies ist erforderlich, um R-Ausführungskonfigurationen zu definieren, die in RSection definiert werden können. RSection ist für diesen Schritt erforderlich. |
runconfig_pipeline_params
Erforderlich
|
Überschreibt runconfig-Eigenschaften zur Laufzeit unter Verwendung von Schlüssel-Wert-Paaren mit jeweils dem Namen der runconfig-Eigenschaft und dem Pipelineparameter für diese Eigenschaft. Unterstützte Werte: „NodeCount“, „MpiProcessCountPerNode“, „TensorflowWorkerCount“, „TensorflowParameterServerCount“ |
inputs
Erforderlich
|
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Eine Liste mit Eingabeportbindungen. |
outputs
Erforderlich
|
Eine Liste mit Ausgabeportbindungen. |
params
Erforderlich
|
Ein Wörterbuch mit Name-Wert-Paaren, die als Umgebungsvariablen mit „AML_PARAMETER_“ registriert sind. |
source_directory
Erforderlich
|
Ein Ordner, der R-Skript, die Conda-Umgebung und andere Ressourcen enthält, die im Schritt verwendet werden. |
use_gpu
Erforderlich
|
Gibt an, ob die Umgebung, in der das Experiment ausgeführt werden soll, GPUs unterstützen soll.
TRUE gibt an, dass ein GPU-basiertes Docker-Standardimage in der Umgebung verwendet wird. Bei FALSE wird ein CPU-basiertes Image verwendet. Standardmäßige Docker-Images (CPU oder GPU) werden nur verwendet, wenn ein Benutzer nicht die Parameter |
custom_docker_image
Erforderlich
|
Der Name des Docker-Images, mit dem das für das Training zu verwendende Image erstellt wird. Wenn diese Einstellung nicht festgelegt ist, wird als Basisimage ein CPU-basiertes Standardimage verwendet. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen base_image in DockerSection. |
cran_packages
Erforderlich
|
CRAN-Pakete, die installiert werden sollen. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen RSection.cran_packages. |
github_packages
Erforderlich
|
Zu installierende GitHub-Pakete. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen RSection.github_packages. |
custom_url_packages
Erforderlich
|
Pakete, die von einer lokalen, benutzerdefinierten oder Verzeichnis-URL installiert werden sollen. Diese Option ist veraltet und wird in einer der nächsten Versionen entfernt. Verwenden Sie stattdessen RSection.custom_url_packages. |
allow_reuse
Erforderlich
|
Gibt an, ob bei dem Schritt vorherige Ergebnisse wiederverwendet werden sollen, wenn er mit den gleichen Einstellungen erneut ausgeführt wird. Die Wiederverwendung ist standardmäßig aktiviert. Wenn der Schrittinhalt (Skripts/Abhängigkeiten) sowie die Eingaben und Parameter unverändert bleiben, wird die Ausgabe der vorherigen Ausführung dieses Schritts wiederverwendet. Wenn Sie den Schritt wiederverwenden, anstatt den Auftrag zum Berechnen zu übermitteln, werden die Ergebnisse der vorherigen Ausführung sofort für alle nachfolgenden Schritte verfügbar gemacht. Wenn Sie Azure Machine Learning-Datasets als Eingaben verwenden, hängt die Wiederverwendung nicht davon ab, ob sich die zugrunde liegenden Daten geändert haben, sondern davon, ob sich die Definition des Datasets geändert hat. |
version
Erforderlich
|
Ein optionales Versionstag, um eine Änderung der Funktionalität für den Schritt zu kennzeichnen. |
Hinweise
Ein RScriptStep ist ein grundlegender, integrierter Schritt zum Ausführen von R-Skripts auf einem Computeziel. Er nimmt einen Skriptnamen und andere optionale Parameter wie Argumente für das Skript, das Computeziel, Eingaben und Ausgaben entgegen. Sie sollten ein RunConfiguration verwenden, um Anforderungen für RScriptStep anzugeben, z. B. ein benutzerdefiniertes Docker-Image oder erforderliche cran/github-Pakete.
Die bewährte Methode für die Arbeit mit RScriptStep ist die Verwendung eines separaten Ordners für Skripts und alle abhängigen Dateien, die dem Schritt zugeordnet sind, und das Angeben dieses Ordners mit dem source_directory
-Parameter.
Das Befolgen dieser bewährten Methode bietet zwei Vorteile. Erstens kann die Größe der für den Schritt erstellten Momentaufnahme reduziert werden, da nur die für den Schritt benötigte Momentaufnahme erstellt wird. Zweitens kann die Ausgabe des Schritts aus einer vorherigen Ausführung wiederverwendet werden, wenn keine Änderungen am source_directory
vorgenommen wurden, die einen erneuten Upload der Momentaufnahme auslösen würden.
Das folgende Codebeispiel zeigt die Verwendung eines RScriptStep in einem Machine Learning-Trainingsszenario.
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)
Weitere allgemeine Informationen zum Erstellen von Pipelines finden Sie unter https://aka.ms/pl-first-pipeline. Weitere Informationen zu RSection finden Sie unter https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.rsection.
Methoden
create_node |
Einen Knoten für RScriptStep erstellen und dem angegebenen Diagramm hinzufügen. VERALTET. Verwenden Sie stattdessen CommandStep. Ein Beispiel finden Sie unter How to run R scripts in pipelines with CommandStep (Ausführen von R-Skripts in Pipelines mit CommandStep). Diese Methode ist nicht für die direkte Nutzung vorgesehen. Wenn eine Pipeline mit diesem Schritt instanziiert wird, werden von Azure ML automatisch die für diese Methode erforderlichen Parameter übergeben, damit der Schritt einem Pipelinegraphen hinzugefügt werden kann, der den Workflow darstellt. |
create_node
Einen Knoten für RScriptStep erstellen und dem angegebenen Diagramm hinzufügen.
VERALTET. Verwenden Sie stattdessen CommandStep. Ein Beispiel finden Sie unter How to run R scripts in pipelines with CommandStep (Ausführen von R-Skripts in Pipelines mit CommandStep).
Diese Methode ist nicht für die direkte Nutzung vorgesehen. Wenn eine Pipeline mit diesem Schritt instanziiert wird, werden von Azure ML automatisch die für diese Methode erforderlichen Parameter übergeben, damit der Schritt einem Pipelinegraphen hinzugefügt werden kann, der den Workflow darstellt.
create_node(graph, default_datastore, context)
Parameter
Name | Beschreibung |
---|---|
graph
Erforderlich
|
Das Graphobjekt, dem der Knoten hinzugefügt werden soll. |
default_datastore
Erforderlich
|
Der Standarddatenspeicher. |
context
Erforderlich
|
<xref:azureml.pipeline.core._GraphContext>
Der Graphkontext. |
Gibt zurück
Typ | Beschreibung |
---|---|
Der erstellte Knoten. |