RScriptStep Klas
Notitie
Dit is een experimentele klasse en kan op elk gewenst moment worden gewijzigd. Zie https://aka.ms/azuremlexperimental voor meer informatie.
Hiermee maakt u een Azure ML-pijplijnstap waarmee R-script wordt uitgevoerd.
Maak een Azure ML-pijplijnstap waarmee R-script wordt uitgevoerd.
AFGEKEURD. Gebruik in plaats daarvan de CommandStep . Zie R-scripts uitvoeren in pijplijnen met CommandStep voor een voorbeeld.
- Overname
-
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)
Parameters
Name | Description |
---|---|
script_name
Vereist
|
[Vereist] De naam van een R-script ten opzichte |
name
Vereist
|
De naam van de stap. Indien niet opgegeven, |
arguments
Vereist
|
Opdrachtregelargumenten voor het R-scriptbestand. De argumenten worden doorgegeven om te worden berekend via de |
compute_target
Vereist
|
[Vereist] Het te gebruiken rekendoel. Als dit niet wordt opgegeven, wordt het doel van de |
runconfig
Vereist
|
[Vereist] Voer een configuratie uit die de informatie bevat die nodig is om een trainingsuitvoering in een experiment in te dienen. Dit is vereist voor het definiëren van R-uitvoeringsconfiguraties die kunnen worden gedefinieerd in RSection. De RSection is vereist voor deze stap. |
runconfig_pipeline_params
Vereist
|
Onderdrukkingen van runconfig-eigenschappen tijdens runtime met behulp van sleutel-waardeparen elk met de naam van de eigenschap runconfig en PipelineParameter voor die eigenschap. Ondersteunde waarden: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount', 'TensorflowParameterServerCount' |
inputs
Vereist
|
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Een lijst met invoerpoortbindingen. |
outputs
Vereist
|
Een lijst met uitvoerpoortbindingen. |
params
Vereist
|
Een woordenlijst met naam-waardeparen die zijn geregistreerd als omgevingsvariabelen met 'AML_PARAMETER_'. |
source_directory
Vereist
|
Een map met R-script, conda env en andere resources die in de stap worden gebruikt. |
use_gpu
Vereist
|
Geeft aan of de omgeving om het experiment uit te voeren GPU's moet ondersteunen.
Indien waar, wordt in de omgeving een standaard Docker-installatiekopieën op basis van gpu gebruikt. Als onwaar is, wordt een op CPU gebaseerde installatiekopieën gebruikt. Standaard docker-installatiekopieën (CPU of GPU) worden alleen gebruikt als een gebruiker zowel als |
custom_docker_image
Vereist
|
De naam van de Docker-installatiekopieën van waaruit de installatiekopieën voor training worden gemaakt. Als dit niet is ingesteld, wordt een standaard-CPU-installatiekopieën gebruikt als basisinstallatiekopieën. Dit is afgeschaft en wordt verwijderd in een toekomstige release. Gebruik in plaats daarvan base_image in de Sectie DockerSe. |
cran_packages
Vereist
|
CRAN-pakketten die moeten worden geïnstalleerd. Dit is afgeschaft en wordt verwijderd in een toekomstige release. Gebruik in plaats daarvan RSection.cran_packages. |
github_packages
Vereist
|
GitHub-pakketten die moeten worden geïnstalleerd. Dit is afgeschaft en wordt verwijderd in een toekomstige release. Gebruik in plaats daarvan RSection.github_packages. |
custom_url_packages
Vereist
|
Pakketten die moeten worden geïnstalleerd vanuit een lokale, directory of aangepaste URL. Dit is afgeschaft en wordt verwijderd in een toekomstige release. Gebruik in plaats daarvan RSection.custom_url_packages. |
allow_reuse
Vereist
|
Hiermee wordt aangegeven of de vorige resultaten opnieuw moeten worden gebruikt wanneer de stap opnieuw wordt uitgevoerd met dezelfde instellingen. Hergebruik is standaard ingeschakeld. Als de inhoud van de stap (scripts/afhankelijkheden) en de invoer en parameters ongewijzigd blijven, wordt de uitvoer van de vorige uitvoering van deze stap opnieuw gebruikt. Wanneer u de stap opnieuw gebruikt, worden de resultaten van de vorige uitvoering onmiddellijk beschikbaar gesteld voor eventuele volgende stappen in plaats van de taak te verzenden om te berekenen. Als u Azure Machine Learning-gegevenssets als invoer gebruikt, wordt hergebruik bepaald door of de definitie van de gegevensset is gewijzigd, niet door of de onderliggende gegevens zijn gewijzigd. |
version
Vereist
|
Een optionele versietag om een wijziging in de functionaliteit voor de stap aan te geven. |
script_name
Vereist
|
[Vereist] De naam van een R-script ten opzichte |
name
Vereist
|
De naam van de stap. Indien niet opgegeven, |
arguments
Vereist
|
Opdrachtregelargumenten voor het R-scriptbestand. De argumenten worden doorgegeven om te worden berekend via de |
compute_target
Vereist
|
[Vereist] Het te gebruiken rekendoel. Als dit niet wordt opgegeven, wordt het doel van de |
runconfig
Vereist
|
[Vereist] Voer een configuratie uit die de informatie bevat die nodig is om een trainingsuitvoering in een experiment in te dienen. Dit is vereist voor het definiëren van R-uitvoeringsconfiguraties die kunnen worden gedefinieerd in RSection. De RSection is vereist voor deze stap. |
runconfig_pipeline_params
Vereist
|
Onderdrukkingen van runconfig-eigenschappen tijdens runtime met behulp van sleutel-waardeparen elk met de naam van de eigenschap runconfig en PipelineParameter voor die eigenschap. Ondersteunde waarden: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount', 'TensorflowParameterServerCount' |
inputs
Vereist
|
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Een lijst met invoerpoortbindingen. |
outputs
Vereist
|
Een lijst met uitvoerpoortbindingen. |
params
Vereist
|
Een woordenlijst met naam-waardeparen die zijn geregistreerd als omgevingsvariabelen met 'AML_PARAMETER_'. |
source_directory
Vereist
|
Een map met R-script, conda env en andere resources die in de stap worden gebruikt. |
use_gpu
Vereist
|
Geeft aan of de omgeving om het experiment uit te voeren GPU's moet ondersteunen.
Indien waar, wordt in de omgeving een standaard Docker-installatiekopieën op basis van gpu gebruikt. Als onwaar is, wordt een op CPU gebaseerde installatiekopieën gebruikt. Standaard docker-installatiekopieën (CPU of GPU) worden alleen gebruikt als een gebruiker zowel als |
custom_docker_image
Vereist
|
De naam van de Docker-installatiekopieën van waaruit de installatiekopieën voor training worden gemaakt. Als dit niet is ingesteld, wordt een standaard-CPU-installatiekopieën gebruikt als basisinstallatiekopieën. Dit is afgeschaft en wordt verwijderd in een toekomstige release. Gebruik in plaats daarvan base_image in de Sectie DockerSe. |
cran_packages
Vereist
|
CRAN-pakketten die moeten worden geïnstalleerd. Dit is afgeschaft en wordt verwijderd in een toekomstige release. Gebruik in plaats daarvan RSection.cran_packages. |
github_packages
Vereist
|
GitHub-pakketten die moeten worden geïnstalleerd. Dit is afgeschaft en wordt in een toekomstige release verwijderd. Gebruik in plaats daarvan RSection.github_packages. |
custom_url_packages
Vereist
|
Pakketten die moeten worden geïnstalleerd vanuit een lokale, directory of aangepaste URL. Dit is afgeschaft en wordt in een toekomstige release verwijderd. Gebruik in plaats daarvan RSection.custom_url_packages. |
allow_reuse
Vereist
|
Hiermee wordt aangegeven of de stap eerdere resultaten opnieuw moet gebruiken wanneer deze opnieuw wordt uitgevoerd met dezelfde instellingen. Hergebruik is standaard ingeschakeld. Als de inhoud van de stap (scripts/afhankelijkheden) en de invoer en parameters ongewijzigd blijven, wordt de uitvoer van de vorige uitvoering van deze stap opnieuw gebruikt. Wanneer u de stap opnieuw gebruikt, worden de resultaten van de vorige uitvoering onmiddellijk beschikbaar gemaakt voor eventuele volgende stappen in plaats van de taak te verzenden om te berekenen. Als u Azure Machine Learning-gegevenssets als invoer gebruikt, wordt hergebruik bepaald door of de definitie van de gegevensset is gewijzigd, niet door of de onderliggende gegevens zijn gewijzigd. |
version
Vereist
|
Een optionele versietag om een wijziging in de functionaliteit voor de stap aan te geven. |
Opmerkingen
Een RScriptStep is een eenvoudige, ingebouwde stap voor het uitvoeren van een R-script op een rekendoel. Het maakt gebruik van een scriptnaam en andere optionele parameters, zoals argumenten voor het script, rekendoel, in- en uitvoer. U moet een RunConfiguration gebruiken om vereisten voor de RScriptStep op te geven, zoals aangepaste Docker-installatiekopie, vereiste cran-/github-pakketten.
De best practice voor het werken met RScriptStep is om een afzonderlijke map te gebruiken voor scripts en eventuele afhankelijke bestanden die zijn gekoppeld aan de stap, en die map op te geven met de source_directory
parameter .
Het volgen van deze best practice heeft twee voordelen. Ten eerste helpt het de grootte te verkleinen van de momentopname die voor de stap is gemaakt, omdat alleen de momentopnamen worden gemaakt die nodig zijn voor de stap. Ten tweede kan de uitvoer van de stap van een vorige uitvoering opnieuw worden gebruikt als er geen wijzigingen in de source_directory
zijn die een herupload van de momentopname activeren.
In het volgende codevoorbeeld ziet u hoe u een RScriptStep gebruikt in een trainingsscenario voor machine learning.
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)
Zie https://aka.ms/pl-first-pipeline voor meer informatie over het maken van pijplijnen in het algemeen. Zie https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.rsection voor meer informatie over RSection.
Methoden
create_node |
Maak een knooppunt voor RScriptStep en voeg dit toe aan de opgegeven grafiek. AFGEKEURD. Gebruik in plaats daarvan de CommandStep . Zie R-scripts uitvoeren in pijplijnen met CommandStep voor een voorbeeld. Deze methode is niet bedoeld om rechtstreeks te worden gebruikt. Wanneer een pijplijn wordt geïnstantieerd met deze stap, geeft Azure ML automatisch de vereiste parameters door via deze methode, zodat deze stap kan worden toegevoegd aan een pijplijngrafiek die de werkstroom vertegenwoordigt. |
create_node
Maak een knooppunt voor RScriptStep en voeg dit toe aan de opgegeven grafiek.
AFGEKEURD. Gebruik in plaats daarvan de CommandStep . Zie R-scripts uitvoeren in pijplijnen met CommandStep voor een voorbeeld.
Deze methode is niet bedoeld om rechtstreeks te worden gebruikt. Wanneer een pijplijn wordt geïnstantieerd met deze stap, geeft Azure ML automatisch de vereiste parameters door via deze methode, zodat deze stap kan worden toegevoegd aan een pijplijngrafiek die de werkstroom vertegenwoordigt.
create_node(graph, default_datastore, context)
Parameters
Name | Description |
---|---|
graph
Vereist
|
Het grafiekobject waaraan u het knooppunt wilt toevoegen. |
default_datastore
Vereist
|
Het standaardgegevensarchief. |
context
Vereist
|
<xref:azureml.pipeline.core._GraphContext>
De grafiekcontext. |
Retouren
Type | Description |
---|---|
Het gemaakte knooppunt. |