ParallelRunStep Třída

Vytvoří krok kanálu Azure Machine Learning, který asynchronně a paralelně zpracuje velké objemy dat.

Příklad použití ParallelRunStep najdete v poznámkovém bloku https://aka.ms/batch-inference-notebooks.

Průvodce odstraňováním potíží najdete v tématu https://aka.ms/prstsg. Další odkazy najdete tady.

Vytvořte krok kanálu Azure ML, který asynchronně a paralelně zpracuje velké objemy dat.

Příklad použití ParallelRunStep najdete v odkazu https://aka.ms/batch-inference-notebooksna poznámkový blok .

Dědičnost
azureml.pipeline.core._parallel_run_step_base._ParallelRunStepBase
ParallelRunStep

Konstruktor

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

Parametry

name
str
Vyžadováno

Název kroku. Musí být jedinečné pro pracovní prostor, musí se skládat pouze z malých písmen, číslic nebo pomlček, musí začínat písmenem a musí mít délku 3 až 32 znaků.

parallel_run_config
ParallelRunConfig
Vyžadováno

A ParallelRunConfig objekt slouží k určení požadovaných vlastností spuštění.

inputs
list[Union[DatasetConsumptionConfig, PipelineOutputFileDataset, PipelineOutputTabularDataset]]
Vyžadováno

Seznam vstupních datových sad Všechny datové sady v seznamu by měly být stejného typu. Vstupní data budou rozdělena na oddíly pro paralelní zpracování. Každá datová sada v seznamu je rozdělena do minidávek zvlášť a každá z těchto minidávek se při paralelním zpracování zpracovává stejně.

output
Union[PipelineData, OutputPortBinding, OutputDatasetConfig]
výchozí hodnota: None

Vazbu výstupního portu můžete použít v dalších krocích kanálu.

side_inputs
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
výchozí hodnota: None

Seznam bočních vstupních referenčních dat. Vedlejší vstupy nebudou rozděleny do oddílů jako vstupní data.

arguments
list[str]
výchozí hodnota: None

Seznam argumentů příkazového řádku, které se mají předat entry_script Pythonu

allow_reuse
bool
výchozí hodnota: True

Určuje, jestli má krok opakovaně používat předchozí výsledky při spuštění se stejnými nastaveními nebo vstupy. Pokud je tato hodnota false, při provádění kanálu se pro tento krok vždy vygeneruje nové spuštění.

name
str
Vyžadováno

Název kroku. Musí být jedinečné pro pracovní prostor, musí se skládat pouze z malých písmen, číslic nebo pomlček, musí začínat písmenem a musí mít délku 3 až 32 znaků.

parallel_run_config
ParallelRunConfig
Vyžadováno

A ParallelRunConfig objekt slouží k určení požadovaných vlastností spuštění.

inputs
list[Union[DatasetConsumptionConfig, PipelineOutputFileDataset, PipelineOutputTabularDataset]]
Vyžadováno

Seznam vstupních datových sad Všechny datové sady v seznamu by měly být stejného typu. Vstupní data budou rozdělena na oddíly pro paralelní zpracování. Každá datová sada v seznamu je rozdělena do minidávek zvlášť a každá z těchto minidávek se při paralelním zpracování zpracovává stejně.

output
PipelineData, OutputPortBinding
Vyžadováno

Vazbu výstupního portu můžete použít v dalších krocích kanálu.

side_inputs
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Vyžadováno

Seznam bočních vstupních referenčních dat. Vedlejší vstupy nebudou rozděleny do oddílů jako vstupní data.

arguments
list[str]
Vyžadováno

Seznam argumentů příkazového řádku, které se mají předat entry_script Pythonu

allow_reuse
bool
Vyžadováno

Určuje, jestli má krok opakovaně používat předchozí výsledky při spuštění se stejnými nastaveními nebo vstupy. Pokud je tato hodnota false, při provádění kanálu se pro tento krok vždy vygeneruje nové spuštění.

Poznámky

Krok paralelního spuštění je možné použít k paralelnímu zpracování velkého objemu dat. Mezi běžné případy použití patří trénování modelu ML nebo spuštění offline odvozování za účelem vygenerování predikcí na základě série pozorování. Krok paralelního spuštění funguje tak, že rozdělí data do dávek, které se zpracují paralelně. Počet uzlů velikosti dávky a další nastavitelné parametry pro zrychlení paralelního ParallelRunConfig zpracování lze řídit pomocí třídy . ParallelRunStep může fungovat se vstupem nebo TabularDatasetFileDataset .

Pokud chcete použít krok paralelního spuštění:

  • Vytvořte objekt, který ParallelRunConfig určuje, jak se má provádět dávkové zpracování, s parametry pro řízení velikosti dávky, počtu uzlů na cílový výpočetní objekt a odkazem na vlastní skript Pythonu.

  • Vytvořte objekt ParallelRunStep, který využívá objekt ParallelRunConfig, a definujte vstupy a výstupy tohoto kroku.

  • Použijte nakonfigurovaný objekt ParallelRunStep v objektu Pipeline stejně jako u jiných typů kroků kanálu.

Příklady práce s třídami ParallelRunStep a ParallelRunConfig pro dávkové odvozování jsou popsány v následujících článcích:


   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
   )

Další informace o tomto příkladu najdete v poznámkovém bloku https://aka.ms/batch-inference-notebooks.

Metody

create_module_def

Vytvořte objekt definice modulu, který popisuje krok.

Tato metoda není určena k přímému použití.

create_node

Vytvořte uzel pro PythonScriptStep a přidejte ho do zadaného grafu.

Tato metoda není určena k přímému použití. Když se vytvoří instance kanálu pomocí ParallelRunStep, Azure Machine Learning automaticky předá požadované parametry touto metodou, aby bylo možné tento krok přidat do grafu kanálu, který představuje pracovní postup.

create_module_def

Vytvořte objekt definice modulu, který popisuje krok.

Tato metoda není určena k přímému použití.

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

Parametry

execution_type
str
Vyžadováno

Typ spuštění modulu.

input_bindings
list
Vyžadováno

Vstupní vazby kroku.

output_bindings
list
Vyžadováno

Výstupní vazby kroku.

param_defs
list
výchozí hodnota: None

Definice parametrů kroku.

create_sequencing_ports
bool
výchozí hodnota: True

Pokud je hodnota true, vytvoří se pro modul porty pro sekvencování.

allow_reuse
bool
výchozí hodnota: True

Pokud je hodnota true, bude modul k dispozici k opakovanému použití v budoucích kanálech.

version
str
výchozí hodnota: None

Verze modulu.

arguments
list
výchozí hodnota: None

Seznam argumentů s poznámkami, který se má použít při volání tohoto modulu.

Návraty

Modul def objekt.

Návratový typ

create_node

Vytvořte uzel pro PythonScriptStep a přidejte ho do zadaného grafu.

Tato metoda není určena k přímému použití. Když se vytvoří instance kanálu pomocí ParallelRunStep, Azure Machine Learning automaticky předá požadované parametry touto metodou, aby bylo možné tento krok přidat do grafu kanálu, který představuje pracovní postup.

create_node(graph, default_datastore, context)

Parametry

graph
Graph
Vyžadováno

Objekt Graph.

default_datastore
AbstractAzureStorageDatastore nebo AzureDataLakeDatastore
Vyžadováno

Výchozí úložiště dat.

context
<xref:azureml.pipeline.core._GraphContext>
Vyžadováno

Kontextu.

Návraty

Vytvořený uzel.

Návratový typ