ParallelRunStep 클래스
Azure Machine Learning 파이프라인 단계를 만들어 대량의 데이터를 비동기적으로, 그리고 병렬로 처리합니다.
ParallelRunStep을 사용하는 예제는 Notebook https://aka.ms/batch-inference-notebooks을 참조하세요.
문제 해결 가이드는 https://aka.ms/prstsg를 참조하세요. 이 문서에서 더 많은 참고 자료를 찾을 수 있습니다.
- 상속
-
azureml.pipeline.core._parallel_run_step_base._ParallelRunStepBaseParallelRunStep
생성자
ParallelRunStep(name, parallel_run_config, inputs, output=None, side_inputs=None, arguments=None, allow_reuse=True)
매개 변수
- inputs
- list[Union[<xref:azureml.data.dataset_consumption_config.DatasetConsumptionConfig,azureml.pipeline.core.pipeline_output_dataset.PipelineOutputFileDataset,azureml.pipeline.core.pipeline_output_dataset.PipelineOutputTabularDataset>]]
입력 데이터 집합 목록입니다. 목록의 모든 데이터 집합은 동일한 유형이어야 합니다. 입력 데이터는 병렬 처리를 위해 분할됩니다. 목록의 각 데이터 집합은 개별적으로 미니 일괄 처리로 분할되고 각 미니 일괄 처리는 병렬 처리에서 동일하게 처리됩니다.
- output
- Union[<xref:azureml.pipeline.core.builder.PipelineData,azureml.pipeline.core.graph.OutputPortBinding,azureml.data.output_dataset_config.OutputDatasetConfig>]
출력 포트 바인딩은 이후 파이프라인 단계에서 사용할 수 있습니다.
- side_inputs
- list[Union[<xref:azureml.pipeline.core.graph.InputPortBinding,azureml.data.data_reference.DataReference,azureml.pipeline.core.PortDataReference,azureml.pipeline.core.builder.PipelineData,azureml.pipeline.core.pipeline_output_dataset.PipelineOutputFileDataset,azureml.pipeline.core.pipeline_output_dataset.PipelineOutputTabularDataset,azureml.data.dataset_consumption_config.DatasetConsumptionConfig>]]
측면 입력 참조 데이터 목록입니다. 측면 입력은 입력 데이터로 분할되지 않습니다.
- allow_reuse
- bool
동일한 설정/입력으로 실행할 때 이전 결과를 단계에 다시 사용할 것인지 여부를 지정합니다. false인 경우 파이프라인 실행 중에 이 단계에 대해 항상 새로운 실행이 생성됩니다.
설명
ParallelRunStep은 대량의 데이터를 병렬로 처리하는 데 사용할 수 있습니다. 일반적인 사용 사례는 ML 모델을 학습하거나 오프라인 추론을 실행하여 관찰 일괄 처리에 대한 예측을 생성하는 것입니다. ParallelRunStep은 데이터를 병렬로 처리되는 일괄 처리로 분할하여 작동합니다. 일괄 처리 크기 노드 수 및 병렬 처리 속도를 높이는 기타 조정 가능한 매개 변수는 ParallelRunConfig 클래스로 제어할 수 있습니다. ParallelRunStep은 TabularDataset 또는 FileDataset를 입력으로 사용할 수 있습니다.
ParallelRunStep을 사용하려면:
ParallelRunConfig 개체를 만들어 일괄 처리 크기, 컴퓨팅 대상당 노드 수 및 사용자 지정 Python 스크립트에 대한 참조를 제어하는 매개 변수와 함께 일괄 처리 처리가 수행되는 방식을 지정합니다.
ParallelRunConfig 개체를 사용하는 ParallelRunStep 개체를 만들고 단계에 대한 입력 및 출력을 정의합니다.
다른 파이프라인 단계 유형과 마찬가지로 Pipeline에서 구성된 ParallelRunStep 개체를 사용합니다.
일괄 처리 유추를 위해 ParallelRunStep 및 ParallelRunConfig 클래스를 사용하는 예제는 다음 문서에 설명되어 있습니다.
자습서: 일괄 채점을 위한 Azure Machine Learning 파이프라인 구축. 이 문서에서는 파이프라인에서 비동기 일괄 점수 매기기에 이 두 클래스를 사용하고 REST 엔드포인트가 파이프라인을 실행하도록 설정하는 방법을 보여 줍니다.
Azure Machine Learning을 사용하여 대량의 데이터에 대한 일괄 처리 유추 실행. 이 문서에서는 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
)
이 예제에 대한 자세한 내용은 Notebook https://aka.ms/batch-inference-notebooks를 참조하세요.
메서드
create_module_def |
단계를 설명하는 모듈 정의 개체를 만듭니다. 이 메서드는 직접 사용할 수 없습니다. |
create_node |
PythonScriptStep에 대한 노드를 만들어 지정된 그래프에 추가합니다. 이 메서드는 직접 사용할 수 없습니다. ParallelRunStep을 사용하여 파이프라인을 인스턴스화하면 Azure Machine Learning은 이 메서드를 통해 필요한 매개 변수를 자동으로 전달하므로 워크플로를 나타내는 파이프라인 그래프에 단계를 추가할 수 있습니다. |
create_module_def
단계를 설명하는 모듈 정의 개체를 만듭니다.
이 메서드는 직접 사용할 수 없습니다.
create_module_def(execution_type, input_bindings, output_bindings, param_defs=None, create_sequencing_ports=True, allow_reuse=True, version=None, arguments=None)
매개 변수
반환
Module def 개체입니다.
반환 형식
create_node
PythonScriptStep에 대한 노드를 만들어 지정된 그래프에 추가합니다.
이 메서드는 직접 사용할 수 없습니다. ParallelRunStep을 사용하여 파이프라인을 인스턴스화하면 Azure Machine Learning은 이 메서드를 통해 필요한 매개 변수를 자동으로 전달하므로 워크플로를 나타내는 파이프라인 그래프에 단계를 추가할 수 있습니다.
create_node(graph, default_datastore, context)
매개 변수
- context
- <xref:azureml.pipeline.core._GraphContext>
컨텍스트입니다.
반환
생성된 노드입니다.
반환 형식
피드백
다음에 대한 사용자 의견 제출 및 보기