RScriptStep Klas
Opmerking
Dit is een experimentele klasse en kan op elk gewenst moment worden gewijzigd. Zie https://aka.ms/acr/connected-registry 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.
VEROUDERD. Gebruik in plaats daarvan het CommandStep . Zie R-scripts uitvoeren in pijplijnen met CommandStep voor een voorbeeld.
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. Als dit niet is opgegeven, |
|
arguments
Vereist
|
Opdrachtregelargumenten voor het R-scriptbestand. De argumenten worden doorgegeven om te berekenen via de |
|
compute_target
Vereist
|
[Vereist] Het rekendoel dat moet worden gebruikt. Als dit niet is opgegeven, wordt het doel van het |
|
runconfig
Vereist
|
[Vereist] Voer de configuratie uit die de benodigde informatie bevat voor het verzenden van een trainingsuitvoering in een experiment. 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 runconfig-eigenschap 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
|
Hiermee wordt aangegeven of de omgeving voor het uitvoeren van het experiment GPU's moet ondersteunen.
Indien waar, wordt een standaard Docker-installatiekopieën op basis van GPU gebruikt in de omgeving. Als dit onwaar is, wordt een op CPU gebaseerde installatiekopieën gebruikt. Standaard docker-installatiekopieën (CPU of GPU) worden alleen gebruikt als een gebruiker niet beide |
|
custom_docker_image
Vereist
|
De naam van de Docker-installatiekopie waaruit de installatiekopie voor training moet worden gebouwd. Als deze niet is ingesteld, wordt een standaardinstallatiekopieën op basis van CPU gebruikt als basisinstallatiekopieën. Dit is afgeschaft en wordt verwijderd in een toekomstige release. Gebruik in plaats daarvan base_image in dockerSection. |
|
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 de lokale, map 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 stap vorige 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 gesteld aan 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. Als dit niet is opgegeven, |
|
arguments
Vereist
|
Opdrachtregelargumenten voor het R-scriptbestand. De argumenten worden doorgegeven om te berekenen via de |
|
compute_target
Vereist
|
[Vereist] Het rekendoel dat moet worden gebruikt. Als dit niet is opgegeven, wordt het doel van het |
|
runconfig
Vereist
|
[Vereist] Voer de configuratie uit die de benodigde informatie bevat voor het verzenden van een trainingsuitvoering in een experiment. 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 runconfig-eigenschap 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
|
Hiermee wordt aangegeven of de omgeving voor het uitvoeren van het experiment GPU's moet ondersteunen.
Indien waar, wordt een standaard Docker-installatiekopieën op basis van GPU gebruikt in de omgeving. Als dit onwaar is, wordt een op CPU gebaseerde installatiekopieën gebruikt. Standaard docker-installatiekopieën (CPU of GPU) worden alleen gebruikt als een gebruiker niet beide |
|
custom_docker_image
Vereist
|
De naam van de Docker-installatiekopie waaruit de installatiekopie voor training moet worden gebouwd. Als deze niet is ingesteld, wordt een standaardinstallatiekopieën op basis van CPU gebruikt als basisinstallatiekopieën. Dit is afgeschaft en wordt verwijderd in een toekomstige release. Gebruik in plaats daarvan base_image in dockerSection. |
|
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 de lokale, map 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 stap vorige 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 gesteld aan 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 R-script op een rekendoel. Hiervoor zijn een scriptnaam en andere optionele parameters nodig, zoals argumenten voor het script, rekendoel, invoer en uitvoer. Gebruik een RunConfiguration om vereisten op te geven voor de RScriptStep, zoals aangepaste docker-installatiekopieën, vereiste cran/github-pakketten.
De aanbevolen procedure voor het werken met RScriptStep is het gebruik van een afzonderlijke map voor scripts en afhankelijke bestanden die aan de stap zijn gekoppeld en geef die map op met de source_directory parameter.
Het volgen van deze best practice heeft twee voordelen. Ten eerste kunt u hiermee de grootte van de momentopname verkleinen die voor de stap is gemaakt, omdat alleen wat er nodig is voor de stap een momentopname wordt gemaakt. Ten tweede kan de uitvoer van de stap van een vorige uitvoering opnieuw worden gebruikt als er geen wijzigingen zijn in de source_directory stap die een herupload van de momentopname zou activeren.
In het volgende codevoorbeeld ziet u hoe u een RScriptStep gebruikt in een machine learning-trainingsscenario.
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. VEROUDERD. Gebruik in plaats daarvan het 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 met deze stap wordt geïnstantieerd, worden in Azure ML automatisch de parameters doorgegeven die zijn vereist via deze methode, zodat de 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.
VEROUDERD. Gebruik in plaats daarvan het 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 met deze stap wordt geïnstantieerd, worden in Azure ML automatisch de parameters doorgegeven die zijn vereist via deze methode, zodat de 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 het knooppunt moet worden toegevoegd. |
|
default_datastore
Vereist
|
Het standaardgegevensarchief. |
|
context
Vereist
|
<xref:azureml.pipeline.core._GraphContext>
De grafiekcontext. |
Retouren
| Type | Description |
|---|---|
|
Het gemaakte knooppunt. |