Delen via


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._PythonScriptStepBase
RScriptStep

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
str

[Vereist] De naam van een R-script ten opzichte source_directoryvan .

name
Vereist
str

De naam van de stap. Indien niet opgegeven, script_name wordt gebruikt.

arguments
Vereist

Opdrachtregelargumenten voor het R-scriptbestand. De argumenten worden doorgegeven om te worden berekend via de arguments parameter in RunConfiguration. Zie voor meer informatie over het afhandelen van argumenten, zoals speciale symbolen, de RunConfiguration.

compute_target
Vereist

[Vereist] Het te gebruiken rekendoel. Als dit niet wordt opgegeven, wordt het doel van de runconfig gebruikt. Deze parameter kan worden opgegeven als een rekendoelobject of de tekenreeksnaam van een rekendoel in de werkruimte. Als het rekendoel niet beschikbaar is tijdens het maken van de pijplijn, kunt u een tuple van opgeven ('naam van rekendoel', 'rekendoeltype') om te voorkomen dat het rekendoelobject wordt opgehaald (AmlCompute-type is 'AmlCompute' en het type RemoteCompute is 'VirtualMachine').

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

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
str

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 base_imagebase_dockerfile parameters niet instelt. Deze instelling wordt alleen gebruikt in Docker-rekendoelen. Zie https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection voor meer informatie over base_image.

custom_docker_image
Vereist
str

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
str

Een optionele versietag om een wijziging in de functionaliteit voor de stap aan te geven.

script_name
Vereist
str

[Vereist] De naam van een R-script ten opzichte source_directoryvan .

name
Vereist
str

De naam van de stap. Indien niet opgegeven, script_name wordt gebruikt.

arguments
Vereist

Opdrachtregelargumenten voor het R-scriptbestand. De argumenten worden doorgegeven om te worden berekend via de arguments parameter in RunConfiguration. Zie voor meer informatie over het afhandelen van argumenten, zoals speciale symbolen, de RunConfiguration.

compute_target
Vereist

[Vereist] Het te gebruiken rekendoel. Als dit niet wordt opgegeven, wordt het doel van de runconfig gebruikt. Deze parameter kan worden opgegeven als een rekendoelobject of de tekenreeksnaam van een rekendoel in de werkruimte. Als het rekendoel niet beschikbaar is tijdens het maken van de pijplijn, kunt u een tuple van opgeven ('naam van rekendoel', 'rekendoeltype') om te voorkomen dat het rekendoelobject wordt opgehaald (AmlCompute-type is 'AmlCompute' en het type RemoteCompute is 'VirtualMachine').

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

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
str

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 base_imagebase_dockerfile parameters niet instelt. Deze instelling wordt alleen gebruikt in Docker-rekendoelen. Zie https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection voor meer informatie over base_image.

custom_docker_image
Vereist
str

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
str

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.