Chainer Класс

Представляет оценщик для обучения в экспериментах Chainer.

НЕ РЕКОМЕНДУЕТСЯ. Используйте объект ScriptRunConfig в собственной определенной среде или в одной из курированных сред Chainer Azure ML. Общие сведения о настройке выполнений экспериментов с помощью 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
AbstractComputeTarget или str
Обязательно

Целевой объект вычислений, в котором будет выполняться обучение. Это может быть либо объект, либо строка "local" (локальный).

vm_size
str
Обязательно

Размер виртуальной машины целевого объекта вычислений, который будет создан для обучения. Поддерживаемые значения: любой размер виртуальной машины Azure.

vm_priority
str
Обязательно

Приоритет виртуальной машины целевого объекта вычислений, который будет создан для обучения. Если значение не указано, используется "dedicated" (выделенный).

Поддерживаемые значения: "dedicated" (выделенный) и "lowpriority" (низкий приоритет).

Действует только в том случае, если vm_size param указан во входных данных.

entry_script
str
Обязательно

Относительный путь к файлу, содержащему скрипт обучения.

script_params
dict
Обязательно

Словарь аргументов командной строки для передачи в скрипт обучения, указанный в 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_count или process_count_per_node> 1.

Если node_count == 1 и process_count_per_node == 1, серверная часть не будет использоваться, кроме случаев, когда она задана явным образом. Для распределенного обучения поддерживается только целевой объект AmlCompute.

distributed_training
Mpi
Обязательно

Параметры для выполнения распределенного задания обучения.

Для выполнения распределенного задания с помощью MPI-сервера, используйте объект Mpi для указания process_count_per_node.

use_gpu
bool
Обязательно

Указывает, должна ли среда выполнения эксперимента поддерживать GPU. При значении True в среде будет использоваться образ Docker по умолчанию на основе GPU. При значении False будет использоваться образ на основе ЦП. Образы Docker по умолчанию (ЦП или GPU) будут использоваться только в том случае, если параметр custom_docker_image не задан. Этот параметр используется только в целевых объектах вычислений с поддержкой Docker.

use_docker
bool
Обязательно

Указывает, должна ли среда выполнения эксперимента быть основана на Docker.

custom_docker_base_image
str
Обязательно

Имя образа Docker, из которого будет построен образ, используемый для обучения.

НЕ РЕКОМЕНДУЕТСЯ. Используйте параметр custom_docker_image.

Если он не задан, в качестве базового образа будет использоваться образ на основе ЦП по умолчанию.

custom_docker_image
str
Обязательно

Имя образа Docker, из которого будет построен образ, используемый для обучения. Если он не задан, в качестве базового образа будет использоваться образ на основе ЦП по умолчанию.

image_registry_details
ContainerRegistry
Обязательно

Сведения о реестре образов Docker.

user_managed
bool
Обязательно

Указывает, будет ли Azure ML повторно использовать существующую среду Python. При значении False Azure ML создает среду Python на основе спецификации зависимостей Conda.

conda_packages
list
Обязательно

Список строк, представляющих пакеты Сonda, добавляемые в среду Python для эксперимента.

pip_packages
list
Обязательно

Список строк, представляющих пакеты pip, добавляемые в среду Python для эксперимента.

conda_dependencies_file_path
str
Обязательно

Относительный путь к файлу YAML зависимостей Conda. Если он указан, Машинное обучение Azure не будет устанавливать пакеты, связанные с платформой. НЕ РЕКОМЕНДУЕТСЯ. Используйте параметр conda_dependencies_file.

pip_requirements_file_path
str
Обязательно

Относительный путь к текстовому файлу требований PIP. Его можно указать в сочетании с параметром pip_packages. НЕ РЕКОМЕНДУЕТСЯ. Используйте параметр pip_requirements_file.

conda_dependencies_file
str
Обязательно

Относительный путь к файлу YAML зависимостей Conda. Если он указан, Машинное обучение Azure не будет устанавливать пакеты, связанные с платформой.

pip_requirements_file
str
Обязательно

Относительный путь к текстовому файлу требований PIP. Его можно указать в сочетании с параметром pip_packages.

environment_variables
dict
Обязательно

Словарь имен и значений переменных среды. Эти переменные среды задаются для процесса, в котором выполняется пользовательский скрипт.

environment_definition
Environment
Обязательно

Определение среды для эксперимента. Сюда входят PythonSection, DockerSection и переменные среды. С помощью этого параметра можно задать любую опцию среды, которая не предоставляется напрямую через другие параметры в конструкцию оценщика. Если этот параметр указан, он будет иметь приоритет над другими параметрами, связанными со средой, например, use_gpu, custom_docker_image, conda_packages и pip_packages. При недопустимых сочетаниях будут выводиться ошибки.

inputs
list
Обязательно

Список объектов DataReference или DatasetConsumptionConfig, используемых в качестве входных данных.

source_directory_data_store
Datastore
Обязательно

Резервное хранилище данных для общей папки проекта.

shm_size
str
Обязательно

Размер блока общей памяти контейнера Docker. Если значение не задано, используется значение по умолчанию azureml.core.environment._DEFAULT_SHM_SIZE. Дополнительные сведения приведены в статье со справочными сведениями о запусках Docker.

resume_from
DataPath
Обязательно

Путь к данным, содержащий файлы контрольной точки или модели, из которых возобновляется выполнение эксперимента.

max_run_duration_seconds
int
Обязательно

Максимально допустимое время выполнения. Машинное обучение Azure будет пытаться автоматически отменить выполнение, если оно занимает больше времени, чем задано этим значением.

framework_version
str
Обязательно

Версия Chainer, которая будет использоваться для исполнения кода обучения. Chainer.get_supported_versions() возвращает список версий, поддерживаемых текущим пакетом SDK.

source_directory
str
Обязательно

Локальный каталог, содержащий файлы конфигурации эксперимента.

compute_target
AbstractComputeTarget или str
Обязательно

Целевой объект вычислений, в котором будет выполняться обучение. Это может быть либо объект, либо строка "local" (локальный).

vm_size
str
Обязательно

Размер виртуальной машины целевого объекта вычислений, который будет создан для обучения. Поддерживаемые значения: любой размер виртуальной машины Azure.

vm_priority
str
Обязательно

Приоритет виртуальной машины целевого объекта вычислений, который будет создан для обучения. Если значение не указано, по умолчанию используется значение "dedicated".

Поддерживаемые значения: "dedicated" (выделенный) и "lowpriority" (низкий приоритет).

Это вступает в силу, только если во входных данных указан параметр vm_size.

entry_script
str
Обязательно

Относительный путь к файлу, содержащему скрипт обучения.

script_params
dict
Обязательно

Словарь аргументов командной строки для передачи в скрипт обучения, указанный в 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_count или process_count_per_node> 1.

Если node_count == 1 и process_count_per_node == 1, серверная часть не будет использоваться, кроме случаев, когда она задана явным образом. Для распределенного обучения поддерживается только целевой объект AmlCompute.

distributed_training
Mpi
Обязательно

Параметры для выполнения распределенного задания обучения.

Для выполнения распределенного задания с помощью MPI-сервера, используйте объект Mpi для указания process_count_per_node.

use_gpu
bool
Обязательно

Указывает, должна ли среда выполнения эксперимента поддерживать GPU. При значении True в среде будет использоваться образ Docker по умолчанию на основе GPU. При значении False будет использоваться образ на основе ЦП. Образы Docker по умолчанию (ЦП или GPU) будут использоваться только в том случае, если параметр custom_docker_image не задан. Этот параметр используется только в целевых объектах вычислений с поддержкой Docker.

use_docker
bool
Обязательно

Указывает, должна ли среда выполнения эксперимента быть основана на Docker.

custom_docker_base_image
str
Обязательно

Имя образа Docker, из которого будет построен образ, используемый для обучения.

НЕ РЕКОМЕНДУЕТСЯ. Используйте параметр custom_docker_image.

Если он не задан, в качестве базового образа будет использоваться образ на основе ЦП по умолчанию.

custom_docker_image
str
Обязательно

Имя образа Docker, из которого будет построен образ, используемый для обучения. Если он не задан, в качестве базового образа будет использоваться образ на основе ЦП по умолчанию.

image_registry_details
ContainerRegistry
Обязательно

Сведения о реестре образов Docker.

user_managed
bool
Обязательно

Указывает, будет ли Azure ML повторно использовать существующую среду Python. При значении False Azure ML создает среду Python на основе спецификации зависимостей Conda.

conda_packages
list
Обязательно

Список строк, представляющих пакеты Сonda, добавляемые в среду Python для эксперимента.

pip_packages
list
Обязательно

Список строк, представляющих пакеты pip, добавляемые в среду Python для эксперимента.

conda_dependencies_file_path
str
Обязательно

Относительный путь к файлу YAML зависимостей Conda. Если он указан, Машинное обучение Azure не будет устанавливать пакеты, связанные с платформой. НЕ РЕКОМЕНДУЕТСЯ. Используйте параметр conda_dependencies_file.

pip_requirements_file_path
str
Обязательно

Относительный путь к текстовому файлу требований PIP. Его можно указать в сочетании с параметром pip_packages. НЕ РЕКОМЕНДУЕТСЯ. Используйте параметр pip_requirements_file.

conda_dependencies_file
str
Обязательно

Относительный путь к файлу YAML зависимостей Conda. Если он указан, Машинное обучение Azure не будет устанавливать пакеты, связанные с платформой.

pip_requirements_file
str
Обязательно

Относительный путь к текстовому файлу требований PIP. Его можно указать в сочетании с параметром pip_packages.

environment_variables
dict
Обязательно

Словарь имен и значений переменных среды. Эти переменные среды задаются для процесса, в котором выполняется пользовательский скрипт.

environment_definition
Environment
Обязательно

Определение среды для эксперимента. Сюда входят PythonSection, DockerSection и переменные среды. С помощью этого параметра можно задать любую опцию среды, которая не предоставляется напрямую через другие параметры в конструкцию оценщика. Если этот параметр указан, он будет иметь приоритет над другими параметрами, связанными со средой, например, use_gpu, custom_docker_image, conda_packages и pip_packages. При недопустимых сочетаниях будут выводиться ошибки.

inputs
list
Обязательно

Список azureml.data.data_reference. Объекты DataReference, используемые в качестве входных данных.

source_directory_data_store
Datastore
Обязательно

Резервное хранилище данных для общей папки проекта.

shm_size
str
Обязательно

Размер блока общей памяти контейнера Docker. Если значение не задано, используется значение по умолчанию azureml.core.environment._DEFAULT_SHM_SIZE. Дополнительные сведения приведены в статье со справочными сведениями о запусках Docker.

resume_from
DataPath
Обязательно

Путь к данным, содержащий файлы контрольной точки или модели, из которых возобновляется выполнение эксперимента.

max_run_duration_seconds
int
Обязательно

Максимально допустимое время выполнения. Машинное обучение Azure будет пытаться автоматически отменить выполнение, если оно занимает больше времени, чем задано этим значением.

framework_version
str
Обязательно

Версия Chainer, которая будет использоваться для исполнения кода обучения. Chainer.get_supported_versions() возвращает список версий, поддерживаемых текущим пакетом SDK.

_enable_optimized_mode
bool
Обязательно

Включите добавочную сборку среды с помощью предварительно созданных образов платформы для ускорения подготовки среды. Предварительно созданный образ платформы создан на основе базовых образов ЦП и GPU Azure ML по умолчанию с предварительно установленными зависимостями платформы.

_disable_validation
bool
Обязательно

Отключите проверку скрипта перед запуском отправки. Значение по умолчанию равно True.

_show_lint_warnings
bool
Обязательно

Отображение предупреждений о анализе кода скрипта. Значение по умолчанию — False.

_show_package_warnings
bool
Обязательно

Отображение предупреждений о проверке пакета. Значение по умолчанию — False.

Комментарии

При отправке задания обучения Azure ML выполняет скрипт в среде Conda в контейнере Docker. В контейнерах 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 | Последн. | Последн. | 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_packages или conda_packages. Либо можно указать параметр pip_requirements_file или conda_dependencies_file. Кроме того, можно создать собственный образ и передать параметр custom_docker_image конструктору оценщика.

Дополнительные сведения о контейнерах Docker, используемых в обучении Chainer: https://github.com/Azure/AzureML-Containers.

Атрибуты

DEFAULT_VERSION

DEFAULT_VERSION = '5.1.0'

FRAMEWORK_NAME

FRAMEWORK_NAME = 'Chainer'