Chainer 类

表示要在 Chainer 试验中进行训练的估算器。

已弃用。 将 ScriptRunConfig 对象与自己定义的环境或其中一个 Azure ML Chainer 特选环境一起使用。 有关使用 ScriptRunConfig 配置试验运行的简介,请参阅配置和提交训练运行

支持的版本:5.1.0、7.0.0

初始化 Chainer 估算器。

继承
azureml.train.estimator._framework_base_estimator._FrameworkBaseEstimator
Chainer

构造函数

Chainer(source_directory, *, compute_target=None, vm_size=None, vm_priority=None, entry_script=None, script_params=None, node_count=1, process_count_per_node=1, distributed_backend=None, distributed_training=None, use_gpu=False, use_docker=True, custom_docker_base_image=None, custom_docker_image=None, image_registry_details=None, user_managed=False, conda_packages=None, pip_packages=None, conda_dependencies_file_path=None, pip_requirements_file_path=None, conda_dependencies_file=None, pip_requirements_file=None, environment_variables=None, environment_definition=None, inputs=None, source_directory_data_store=None, shm_size=None, resume_from=None, max_run_duration_seconds=None, framework_version=None, _enable_optimized_mode=False, _disable_validation=True, _show_lint_warnings=False, _show_package_warnings=False)

参数

名称 说明
source_directory
必需
str

包含试验配置文件的本地目录。

compute_target
必需

发生训练的计算目标。 可以是对象或字符串“local”。

vm_size
必需
str

将为训练创建的计算目标的 VM 大小。 支持的值:任何 Azure VM 大小

vm_priority
必需
str

将为训练创建的计算目标的 VM 优先级。 如果未指定,则使用“dedicated”。

支持的值:“dedicated”和“lowpriority”。

这仅在输入中指定了 vm_size param 时才会生效。

entry_script
必需
str

包含训练脚本的文件的相对路径。

script_params
必需

要传递给 entry_script 中指定的训练脚本的命令行参数的字典。

node_count
必需
int

计算目标中用于训练的节点数。 如果大于 1,则将运行 MPI 分布式作业。 分布式作业仅支持 AmlCompute 目标。

process_count_per_node
必需
int

每个节点的进程数。 如果大于 1,则将运行 MPI 分布式作业。 分布式作业仅支持 AmlCompute 目标。

distributed_backend
必需
str

分布式训练的通信后端。

已弃用。 使用 distributed_training 参数。

支持的值:'mpi'。

'mpi':MPI/Horovod

node_countprocess_count_per_node> 1 时,此参数是必需的。

node_count == 1 且 process_count_per_node == 1 时,除非显式设置后端,否则不会使用后端。 分布式训练仅支持 AmlCompute 目标。

distributed_training
必需
Mpi

用于运行分布式训练作业的参数。

若要运行具有 MPI 后端的分布式作业,请使用 Mpi 对象指定 process_count_per_node

use_gpu
必需

指定要运行试验的环境是否应支持 GPU。 如果为 true,则将在环境中使用基于 GPU 的默认 Docker 映像。 如果为 false,则使用基于 CPU 的映像。 仅当未设置 custom_docker_image 参数时,才会使用默认 docker 映像(CPU 或 GPU)。 此设置仅用于启用了 Docker 的计算目标。

use_docker
必需

指定要运行试验的环境是否应基于 Docker。

custom_docker_base_image
必需
str

要从中生成用于训练的映像的 Docker 映像的名称。

已弃用。 使用 custom_docker_image 参数。

如果未设置,则将使用基于 CPU 的默认映像作为基础映像。

custom_docker_image
必需
str

要从中生成用于训练的映像的 Docker 映像的名称。 如果未设置,则将使用基于 CPU 的默认映像作为基础映像。

image_registry_details
必需

Docker 映像注册表的详细信息。

user_managed
必需

指定 Azure ML 是否重复使用现有的 Python 环境。 如果为 false,Azure ML 将基于 conda 依赖关系规范创建 Python 环境。

conda_packages
必需

表示要添加到此试验的 Python 环境中的 conda 包的字符串列表。

pip_packages
必需

表示要添加到此试验的 Python 环境中的 pip 包的字符串列表。

conda_dependencies_file_path
必需
str

conda 依赖项 yaml 文件的相对路径。 如果已指定,Azure ML 将不安装任何框架相关的包。 已弃用。 使用 conda_dependencies_file 参数。

pip_requirements_file_path
必需
str

pip 要求文本文件的相对路径。 这可以与 pip_packages 参数一起提供。 已弃用。 使用 pip_requirements_file 参数。

conda_dependencies_file
必需
str

conda 依赖项 yaml 文件的相对路径。 如果已指定,Azure ML 将不安装任何框架相关的包。

pip_requirements_file
必需
str

pip 要求文本文件的相对路径。 这可以与 pip_packages 参数一起提供。

environment_variables
必需

环境变量名称和值的字典。 这些环境变量是在执行用户脚本的进程上设置的。

environment_definition
必需

试验的环境定义。 它包括 PythonSection、DockerSection 和环境变量。 使用此参数可以设置不通过其他参数直接公开到估算器构造的任何环境选项。 如果指定了此参数,它将优先于其他与环境相关的参数,如 use_gpucustom_docker_imageconda_packagespip_packages。 对于无效组合,将报告错误。

inputs
必需

要用作输入的 DataReferenceDatasetConsumptionConfig 对象的列表。

source_directory_data_store
必需

适用于项目共享的备份数据存储。

shm_size
必需
str

Docker 容器的共享内存块的大小。 如果未设置,则使用默认的 azureml.core.environment._DEFAULT_SHM_SIZE。 有关详细信息,请查看 Docker 运行参考

resume_from
必需

包含要从中恢复试验的检查点或模型文件的数据路径。

max_run_duration_seconds
必需
int

运行所允许的最大时间。 如果运行时间超过此值,Azure ML 会尝试自动取消运行。

framework_version
必需
str

要用于执行训练代码的 Chainer 版本。 Chainer.get_supported_versions() 将返回当前 SDK 支持的版本列表。

source_directory
必需
str

包含试验配置文件的本地目录。

compute_target
必需

发生训练的计算目标。 可以是对象或字符串“local”。

vm_size
必需
str

将为训练创建的计算目标的 VM 大小。 支持的值:任何 Azure VM 大小

vm_priority
必需
str

将为训练创建的计算目标的 VM 优先级。 如果未指定,它将默认为“dedicated”。

支持的值:“dedicated”和“lowpriority”。

仅当输入中指定了vm_size参数时,这才会生效。

entry_script
必需
str

包含训练脚本的文件的相对路径。

script_params
必需

要传递给 entry_script 中指定的训练脚本的命令行参数的字典。

node_count
必需
int

计算目标中用于训练的节点数。 如果大于 1,则将运行 MPI 分布式作业。 分布式作业仅支持 AmlCompute 目标。

process_count_per_node
必需
int

每个节点的进程数。 如果大于 1,则将运行 MPI 分布式作业。 分布式作业仅 AmlCompute 支持目标计算目标。

distributed_backend
必需
str

分布式训练的通信后端。

已弃用。 使用 distributed_training 参数。

支持的值:'mpi'。

'mpi':MPI/Horovod

node_countprocess_count_per_node> 1 时,此参数是必需的。

node_count == 1 且 process_count_per_node == 1 时,除非显式设置后端,否则不会使用后端。 分布式训练仅支持 AmlCompute 目标。

distributed_training
必需
Mpi

用于运行分布式训练作业的参数。

若要运行具有 MPI 后端的分布式作业,请使用 Mpi 对象指定 process_count_per_node

use_gpu
必需

指定要运行试验的环境是否应支持 GPU。 如果为 true,则将在环境中使用基于 GPU 的默认 Docker 映像。 如果为 false,则使用基于 CPU 的映像。 仅当未设置 custom_docker_image 参数时,才会使用默认 docker 映像(CPU 或 GPU)。 此设置仅用于启用了 Docker 的计算目标。

use_docker
必需

指定要运行试验的环境是否应基于 Docker。

custom_docker_base_image
必需
str

要从中生成用于训练的映像的 Docker 映像的名称。

已弃用。 使用 custom_docker_image 参数。

如果未设置,则将使用基于 CPU 的默认映像作为基础映像。

custom_docker_image
必需
str

要从中生成用于训练的映像的 Docker 映像的名称。 如果未设置,则将使用基于 CPU 的默认映像作为基础映像。

image_registry_details
必需

Docker 映像注册表的详细信息。

user_managed
必需

指定 Azure ML 是否重复使用现有的 Python 环境。 如果为 false,Azure ML 将基于 conda 依赖关系规范创建 Python 环境。

conda_packages
必需

表示要添加到此试验的 Python 环境中的 conda 包的字符串列表。

pip_packages
必需

表示要添加到此试验的 Python 环境中的 pip 包的字符串列表。

conda_dependencies_file_path
必需
str

conda 依赖项 yaml 文件的相对路径。 如果已指定,Azure ML 将不安装任何框架相关的包。 已弃用。 使用 conda_dependencies_file 参数。

pip_requirements_file_path
必需
str

pip 要求文本文件的相对路径。 这可以与 pip_packages 参数一起提供。 已弃用。 使用 pip_requirements_file 参数。

conda_dependencies_file
必需
str

conda 依赖项 yaml 文件的相对路径。 如果已指定,Azure ML 将不安装任何框架相关的包。

pip_requirements_file
必需
str

pip 要求文本文件的相对路径。 这可以与 pip_packages 参数一起提供。

environment_variables
必需

环境变量名称和值的字典。 这些环境变量是在执行用户脚本的进程上设置的。

environment_definition
必需

试验的环境定义。 它包括 PythonSection、DockerSection 和环境变量。 使用此参数可以设置不通过其他参数直接公开到估算器构造的任何环境选项。 如果指定了此参数,它将优先于其他与环境相关的参数,如 use_gpucustom_docker_imageconda_packagespip_packages。 对于无效组合,将报告错误。

inputs
必需

azureml.data.data_reference的列表。要用作输入的 DataReference 对象。

source_directory_data_store
必需

适用于项目共享的备份数据存储。

shm_size
必需
str

Docker 容器的共享内存块的大小。 如果未设置,则使用默认的 azureml.core.environment._DEFAULT_SHM_SIZE。 有关详细信息,请查看 Docker 运行参考

resume_from
必需

包含要从中恢复试验的检查点或模型文件的数据路径。

max_run_duration_seconds
必需
int

运行所允许的最大时间。 如果运行时间超过此值,Azure ML 会尝试自动取消运行。

framework_version
必需
str

要用于执行训练代码的 Chainer 版本。 Chainer.get_supported_versions() 将返回当前 SDK 支持的版本列表。

_enable_optimized_mode
必需

使用预生成的框架映像启用增量环境生成,以便更快地准备环境。 预构建的框架映像基于预安装了框架依赖项的 Azure ML 默认 CPU/GPU 基础映像。

_disable_validation
必需

在运行提交之前禁用脚本验证。 默认值为 True。

_show_lint_warnings
必需

显示脚本 LINT 警告。 默认值为 False。

_show_package_warnings
必需

显示包验证警告。 默认值为 False。

注解

提交训练作业时,Azure ML 会在 Docker 容器内的 conda 环境中运行脚本。 Chainer 容器安装了以下依赖项。

依赖项 | Chainer 5.1.0 | Chainer 7.0.0 | —————————- | —————– | ————— | Python | 3.6.2 | 3.6.2 | CUDA(仅 GPU 映像)| 9.0 | 9.0 | cuDNN (仅 GPU 映像)| 7.6.3 | 7.6.3 | NCCL (仅 GPU 映像)| 2.4.8 | 2.4.8 | azureml-defaults | Latest | Latest | IntelMpi | 2018.3.222 | 2018.3.222 | horovod | 0.15.2 | 0.15.2 | miniconda | 4.5.11 | 4.5.11 | chainer | 5.1.0 | 7.0.0 | cupy-cuda90 (仅 GPU 映像)| 5.2.0 | 7.0.0 | git | 2.7.4 | 2.7.4 |

Docker 映像可扩展 Ubuntu 16.04。

若要安装其他依赖项,可以使用 pip_packagesconda_packages 参数。 或者,可以指定 pip_requirements_fileconda_dependencies_file 参数。 或者,可以生成自己的映像,将 custom_docker_image 参数传递给估算器构造函数。

有关 Chainer 训练中使用的 Docker 容器的详细信息,请参阅 https://github.com/Azure/AzureML-Containers

属性

DEFAULT_VERSION

DEFAULT_VERSION = '5.1.0'

FRAMEWORK_NAME

FRAMEWORK_NAME = 'Chainer'