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._ParallelRunStepBaseParallelRunStep
Konstruktor
ParallelRunStep(name, parallel_run_config, inputs, output=None, side_inputs=None, arguments=None, allow_reuse=True)
Parametry
- name
- str
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
A ParallelRunConfig objekt slouží k určení požadovaných vlastností spuštění.
- inputs
- list[Union[DatasetConsumptionConfig, PipelineOutputFileDataset, PipelineOutputTabularDataset]]
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ě.
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]]
Seznam bočních vstupních referenčních dat. Vedlejší vstupy nebudou rozděleny do oddílů jako vstupní data.
Seznam argumentů příkazového řádku, které se mají předat entry_script Pythonu
- allow_reuse
- bool
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
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
A ParallelRunConfig objekt slouží k určení požadovaných vlastností spuštění.
- inputs
- list[Union[DatasetConsumptionConfig, PipelineOutputFileDataset, PipelineOutputTabularDataset]]
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
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]]
Seznam bočních vstupních referenčních dat. Vedlejší vstupy nebudou rozděleny do oddílů jako vstupní data.
Seznam argumentů příkazového řádku, které se mají předat entry_script Pythonu
- allow_reuse
- bool
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:
Kurz: Vytvoření kanálu služby Azure Machine Learning pro dávkové bodování. Tento článek popisuje, jak s využitím těchto dvou tříd zajistit v kanálu asynchronní dávkové bodování a umožnit spuštění kanálu na koncovém bodu REST.
Spouštění dávkového odvozování pro velké množství dat pomocí služby Azure Machine Learning. Tento článek popisuje, jak asynchronně a paralelně zpracovávat velké množství dat s využitím vlastního skriptu pro odvozování a předem natrénovaného modelu klasifikace obrázků založeného na datové sadě MNIST.
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
- create_sequencing_ports
- bool
Pokud je hodnota true, vytvoří se pro modul porty pro sekvencování.
- allow_reuse
- bool
Pokud je hodnota true, bude modul k dispozici k opakovanému použití v budoucích kanálech.
- arguments
- list
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
- default_datastore
- AbstractAzureStorageDatastore nebo AzureDataLakeDatastore
Výchozí úložiště dat.
- context
- <xref:azureml.pipeline.core._GraphContext>
Kontextu.
Návraty
Vytvořený uzel.
Návratový typ
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro