ParallelRunStep Klas

Hiermee maakt u een Azure Machine Learning-pijplijnstap voor het asynchroon en parallel verwerken van grote hoeveelheden gegevens.

Zie het notebook https://aka.ms/batch-inference-notebooksvoor een voorbeeld van het gebruik van ParallelRunStep.

Zie voor de gids https://aka.ms/prstsgvoor probleemoplossing. Meer verwijzingen vindt u hier.

Maak een Azure ML-pijplijnstap om grote hoeveelheden gegevens asynchroon en parallel te verwerken.

Zie de notebookkoppeling https://aka.ms/batch-inference-notebooksvoor een voorbeeld van het gebruik van ParallelRunStep.

Overname
azureml.pipeline.core._parallel_run_step_base._ParallelRunStepBase
ParallelRunStep

Constructor

ParallelRunStep(name, parallel_run_config, inputs, output=None, side_inputs=None, arguments=None, allow_reuse=True)

Parameters

name
str
Vereist

Naam van de stap. Moet uniek zijn voor de werkruimte, alleen bestaan uit kleine letters, cijfers of streepjes, beginnen met een letter en tussen 3 en 32 tekens lang zijn.

parallel_run_config
ParallelRunConfig
Vereist

Een ParallelRunConfig-object dat wordt gebruikt om vereiste uitvoeringseigenschappen te bepalen.

inputs
list[Union[DatasetConsumptionConfig, PipelineOutputFileDataset, PipelineOutputTabularDataset]]
Vereist

Lijst met invoergegevenssets. Alle gegevenssets in de lijst moeten van hetzelfde type zijn. Invoergegevens worden gepartitioneerd voor parallelle verwerking. Elke gegevensset in de lijst wordt afzonderlijk gepartitioneerd in minibatches en elk van de minibatches wordt in de parallelle verwerking gelijk behandeld.

output
Union[PipelineData, OutputPortBinding, OutputDatasetConfig]
standaardwaarde: None

Uitvoerpoortbinding, kan worden gebruikt door latere pijplijnstappen.

side_inputs
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
standaardwaarde: None

Lijst met referentiegegevens voor invoer aan de zijkant. Invoer aan de zijkant wordt niet gepartitioneerd als invoergegevens.

arguments
list[str]
standaardwaarde: None

Lijst met opdrachtregelargumenten die moeten worden doorgegeven aan de Python-entry_script.

allow_reuse
bool
standaardwaarde: True

Of de stap eerdere resultaten opnieuw moet gebruiken wanneer deze wordt uitgevoerd met dezelfde instellingen/invoerwaarden. Als dit onwaar is, wordt er altijd een nieuwe uitvoering gegenereerd voor deze stap tijdens het uitvoeren van de pijplijn.

name
str
Vereist

Naam van de stap. Moet uniek zijn voor de werkruimte, alleen bestaan uit kleine letters, cijfers of streepjes, beginnen met een letter en tussen 3 en 32 tekens lang zijn.

parallel_run_config
ParallelRunConfig
Vereist

Een ParallelRunConfig-object dat wordt gebruikt om vereiste uitvoeringseigenschappen te bepalen.

inputs
list[Union[DatasetConsumptionConfig, PipelineOutputFileDataset, PipelineOutputTabularDataset]]
Vereist

Lijst met invoergegevenssets. Alle gegevenssets in de lijst moeten van hetzelfde type zijn. Invoergegevens worden gepartitioneerd voor parallelle verwerking. Elke gegevensset in de lijst wordt afzonderlijk gepartitioneerd in minibatches en elk van de minibatches wordt in de parallelle verwerking gelijk behandeld.

output
PipelineData, OutputPortBinding
Vereist

Uitvoerpoortbinding, kan worden gebruikt door latere pijplijnstappen.

side_inputs
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Vereist

Lijst met referentiegegevens voor invoer aan de zijkant. Invoer aan de zijkant wordt niet gepartitioneerd als invoergegevens.

arguments
list[str]
Vereist

Lijst met opdrachtregelargumenten die moeten worden doorgegeven aan de Python-entry_script.

allow_reuse
bool
Vereist

Of de stap eerdere resultaten opnieuw moet gebruiken wanneer deze wordt uitgevoerd met dezelfde instellingen/invoerwaarden. Als dit onwaar is, wordt er altijd een nieuwe uitvoering gegenereerd voor deze stap tijdens het uitvoeren van de pijplijn.

Opmerkingen

ParallelRunStep kan worden gebruikt om parallel grote hoeveelheden gegevens te verwerken. Veelvoorkomende toepassingen zijn het trainen van een ML-model of het uitvoeren van offline deductie om voorspellingen te genereren voor een batch van waarnemingen. Bij ParallelRunStep worden uw gegevens opgedeeld in batches die parallel worden verwerkt. Het aantal batchgrootte knooppunten en andere instelbare parameters om uw parallelle verwerking te versnellen, kunnen worden beheerd met de ParallelRunConfig klasse. ParallelRunStep kan met TabularDataset of FileDataset als invoer werken.

U kunt ParallelRunStep als volgt gebruiken:

  • Maak een ParallelRunConfig object om op te geven hoe batchverwerking wordt uitgevoerd, met parameters voor het beheren van de batchgrootte, het aantal knooppunten per rekendoel en een verwijzing naar uw aangepaste Python-script.

  • Maak een ParallelRunStep-object dat gebruikmaakt van het object ParallelRunConfig en definieer invoer en uitvoer voor de stap.

  • Gebruik het geconfigureerde parallelrunstep-object in een Pipeline op dezelfde wijze als bij andere typen pijplijnstappen.

Voorbeelden van het werken met de klassen ParallelRunStep en ParallelRunConfig voor batchdeductie worden besproken in de volgende artikelen:


   from azureml.pipeline.steps import ParallelRunStep, ParallelRunConfig

   parallel_run_config = ParallelRunConfig(
       source_directory=scripts_folder,
       entry_script=script_file,
       mini_batch_size="5",
       error_threshold=10,         # Optional, allowed failed count on mini batch items
       allowed_failed_count=15,    # Optional, allowed failed count on mini batches
       allowed_failed_percent=10,  # Optional, allowed failed percent on mini batches
       output_action="append_row",
       environment=batch_env,
       compute_target=compute_target,
       node_count=2)

   parallelrun_step = ParallelRunStep(
       name="predict-digits-mnist",
       parallel_run_config=parallel_run_config,
       inputs=[ named_mnist_ds ],
       output=output_dir,
       arguments=[ "--extra_arg", "example_value" ],
       allow_reuse=True
   )

Zie het notebook https://aka.ms/batch-inference-notebooksvoor meer informatie over dit voorbeeld.

Methoden

create_module_def

Maak het moduledefinitieobject dat de stap beschrijft.

Deze methode is niet bedoeld om rechtstreeks te worden gebruikt.

create_node

Maak een knooppunt voor PythonScriptStep en voeg dit toe aan de opgegeven grafiek.

Deze methode is niet bedoeld om rechtstreeks te worden gebruikt. Wanneer een pijplijn wordt geïnstantieerd met ParallelRunStep, geeft Azure Machine Learning automatisch de vereiste parameters door via deze methode, zodat de stap kan worden toegevoegd aan een pijplijngrafiek die de werkstroom vertegenwoordigt.

create_module_def

Maak het moduledefinitieobject dat de stap beschrijft.

Deze methode is niet bedoeld om rechtstreeks te worden gebruikt.

create_module_def(execution_type, input_bindings, output_bindings, param_defs=None, create_sequencing_ports=True, allow_reuse=True, version=None, arguments=None)

Parameters

execution_type
str
Vereist

Het uitvoeringstype van de module.

input_bindings
list
Vereist

De stap invoerbindingen.

output_bindings
list
Vereist

De stap voert bindingen uit.

param_defs
list
standaardwaarde: None

De definities van stapparameters.

create_sequencing_ports
bool
standaardwaarde: True

Als dit waar is, worden er sequentiërende poorten gemaakt voor de module.

allow_reuse
bool
standaardwaarde: True

Als dit waar is, is de module beschikbaar voor hergebruik in toekomstige pijplijnen.

version
str
standaardwaarde: None

De versie van de module.

arguments
list
standaardwaarde: None

Lijst met argumenten met aantekeningen die moeten worden gebruikt bij het aanroepen van deze module.

Retouren

Het moduledef-object.

Retourtype

create_node

Maak een knooppunt voor PythonScriptStep en voeg dit toe aan de opgegeven grafiek.

Deze methode is niet bedoeld om rechtstreeks te worden gebruikt. Wanneer een pijplijn wordt geïnstantieerd met ParallelRunStep, geeft Azure Machine Learning automatisch de vereiste parameters door via deze methode, zodat de stap kan worden toegevoegd aan een pijplijngrafiek die de werkstroom vertegenwoordigt.

create_node(graph, default_datastore, context)

Parameters

graph
Graph
Vereist

Grafiekobject.

default_datastore
AbstractAzureStorageDatastore of AzureDataLakeDatastore
Vereist

Standaardgegevensarchief.

context
<xref:azureml.pipeline.core._GraphContext>
Vereist

Context.

Retouren

Het gemaakte knooppunt.

Retourtype