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._ParallelRunStepBaseParallelRunStep
Constructor
ParallelRunStep(name, parallel_run_config, inputs, output=None, side_inputs=None, arguments=None, allow_reuse=True)
Parameters
- name
- str
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
Een ParallelRunConfig-object dat wordt gebruikt om vereiste uitvoeringseigenschappen te bepalen.
- inputs
- list[Union[DatasetConsumptionConfig, PipelineOutputFileDataset, PipelineOutputTabularDataset]]
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.
Uitvoerpoortbinding, kan worden gebruikt door latere pijplijnstappen.
- side_inputs
- list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Lijst met referentiegegevens voor invoer aan de zijkant. Invoer aan de zijkant wordt niet gepartitioneerd als invoergegevens.
Lijst met opdrachtregelargumenten die moeten worden doorgegeven aan de Python-entry_script.
- allow_reuse
- bool
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
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
Een ParallelRunConfig-object dat wordt gebruikt om vereiste uitvoeringseigenschappen te bepalen.
- inputs
- list[Union[DatasetConsumptionConfig, PipelineOutputFileDataset, PipelineOutputTabularDataset]]
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
Uitvoerpoortbinding, kan worden gebruikt door latere pijplijnstappen.
- side_inputs
- list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Lijst met referentiegegevens voor invoer aan de zijkant. Invoer aan de zijkant wordt niet gepartitioneerd als invoergegevens.
Lijst met opdrachtregelargumenten die moeten worden doorgegeven aan de Python-entry_script.
- allow_reuse
- bool
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:
Zelfstudie: Een Azure Machine Learning-pijplijn maken voor batchscores. In dit artikel wordt beschreven hoe u deze twee klassen gebruikt voor asynchrone batchscores in een pijplijn en hoe u een REST-eindpunt activeert om de pijplijn uit te voeren.
Batchdeductie uitvoeren voor grote hoeveelheden gegevens met Azure Machine Learning. In dit artikel wordt beschreven hoe u grote hoeveelheden gegevens asynchroon en parallel verwerkt met een aangepast deductiescript en een vooraf getraind model voor afbeeldingsclassificatie voor de MNIST-gegevensset.
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
- create_sequencing_ports
- bool
Als dit waar is, worden er sequentiërende poorten gemaakt voor de module.
- allow_reuse
- bool
Als dit waar is, is de module beschikbaar voor hergebruik in toekomstige pijplijnen.
- arguments
- list
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
- default_datastore
- AbstractAzureStorageDatastore of AzureDataLakeDatastore
Standaardgegevensarchief.
- context
- <xref:azureml.pipeline.core._GraphContext>
Context.
Retouren
Het gemaakte knooppunt.
Retourtype
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub Issues geleidelijk uitfaseren als het feedbackmechanisme voor inhoud. Het wordt vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor