ParallelRunStep 类
创建 Azure 机器学习管道步骤异步并行处理大量数据。
有关使用 ParallelRunStep 的示例,请参阅笔记本 https://aka.ms/batch-inference-notebooks。
有关故障排除指南,请参阅 https://aka.ms/prstsg。 可在此处找到更多参考资料。
- 继承
-
azureml.pipeline.core._python_script_step_base._PythonScriptStepBaseParallelRunStep
构造函数
ParallelRunStep(name, parallel_run_config, inputs, output=None, side_inputs=None, models=None, arguments=None, allow_reuse=True, tags=None, properties=None, add_parallel_run_step_dependencies=True)
参数
零个或多个模型对象的列表。 此列表仅用于跟踪管道到模型版本的映射。 模型不会复制到容器。 使用 Model 类的 get_model_path 方法在 entry_script 的 init 函数中检索模型。
- add_parallel_run_step_dependencies
[已弃用] 是否添加 ParallelRunStep 的运行时依赖项。 其中包括:
azure-storage-queue~=2.1
azure-storage-common~=2.1
azureml-core~=1.0
azureml-telemetry~=1.0
filelock~=3.0
azureml-dataset-runtime[fuse,pandas]~=1.1
psutil
注解
ParallelRunStep 类可用于涉及大量数据且不区分时间的任何类型的处理作业,例如批量训练或批量评分。 ParallelRunStep 的工作原理是将大型作业分解为并行处理的批。 可以通过 ParallelRunConfig 类控制批大小和并行处理的程度。 ParallelRunStep 可以作为输入用于 TabularDataset 或 FileDataset。
若要使用 ParallelRunStep 类,典型模式如下:
创建一个 ParallelRunConfig 对象用于指定批处理的执行方式,该对象的参数可控制批大小、每个计算目标的节点数,以及对自定义 Python 脚本的引用。
创建使用 ParallelRunConfig 对象的 ParallelRunStep 对象,并定义该步骤的输入和输出,以及要使用的模型列表。
在 Pipeline 中使用配置的 ParallelRunStep 对象,就像使用 steps 包中定义的管道步骤类型一样。
以下文章讨论了使用 ParallelRunStep 和 ParallelRunConfig 类进行批量推理的示例:
教程:生成用于批量评分的 Azure 机器学习管道。 本文介绍如何在管道中将这两个类用于异步批评分,并使 REST 终结点能够运行管道。
使用 Azure 机器学习对大量数据运行批处理推理。 本文介绍如何通过自定义推理脚本和基于 MNIST 数据集的预先训练的图像分类模型以异步和并行方式处理大量数据。
from azureml.contrib.pipeline.steps import ParallelRunStep, ParallelRunConfig
parallel_run_config = ParallelRunConfig(
source_directory=scripts_folder,
entry_script=script_file,
mini_batch_size="5",
error_threshold=10,
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,
models=[ model ],
arguments=[ ],
allow_reuse=True
)
有关此示例的详细信息,请参阅笔记本 https://aka.ms/batch-inference-notebooks。
方法
| create_module_def |
创建描述步骤的模块定义对象。 此方法不能直接使用。 |
| create_node |
为 PythonScriptStep 创建节点并将其添加到指定的图。 此方法不能直接使用。 通过 ParallelRunStep 实例化管道时,Azure 机器学习会自动通过此方法传递所需的参数,以便可以将步骤添加到表示工作流的管道图中。 |
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)
参数
返回
模块定义对象。
返回类型
create_node
为 PythonScriptStep 创建节点并将其添加到指定的图。
此方法不能直接使用。 通过 ParallelRunStep 实例化管道时,Azure 机器学习会自动通过此方法传递所需的参数,以便可以将步骤添加到表示工作流的管道图中。
create_node(graph, default_datastore, context)
参数
- context
- <xref:azureml.pipeline.core._GraphContext>
上下文。
返回
创建的节点。
返回类型
反馈
提交和查看相关反馈