PyTorch Класс
Представляет оценщик для обучения в экспериментах PyTorch.
УСТАРЕВШИЕ. ScriptRunConfig Используйте объект с определенной средой или одной из проверенных сред Машинного обучения Azure PyTorch. Общие сведения о настройке экспериментов PyTorch с помощью ScriptRunConfig см. в статье "Обучение моделей PyTorch в масштабе с помощью машинного обучения Azure".
Поддерживаемые версии: 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6
Инициализировать оценщик PyTorch.
Справочник по запуску Docker. :type shm_size: str :p aram resume_from: путь к данным, содержащий файлы контрольных точек или моделей, из которых нужно возобновить эксперимент. :type resume_from: azureml.datapath.DataPath :p aram max_run_duration_seconds: максимально допустимое время выполнения. Машинное обучение Azure попытается автоматически
отмените выполнение, если оно занимает больше времени, чем это значение.
Конструктор
PyTorch(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
Обязательно
|
Локальный каталог, содержащий файлы конфигурации эксперимента. |
|
compute_target
Обязательно
|
Целевой объект вычислений, в котором будет выполняться обучение. Это может быть объект или строка "local". |
|
vm_size
Обязательно
|
Размер виртуальной машины целевого объекта вычислений, который будет создан для обучения. Поддерживаемые значения: любой размер виртуальной машины Azure. |
|
vm_priority
Обязательно
|
Приоритет виртуальной машины целевого объекта вычислений, который будет создан для обучения. Если значение не указано, используется значение "выделенный". Поддерживаемые значения: "dedicated" и "lowpriority". Это действует только при |
|
entry_script
Обязательно
|
Относительный путь к файлу, содержаму скрипт обучения. |
|
script_params
Обязательно
|
Словарь аргументов командной строки для передачи в скрипт обучения, указанный в |
|
node_count
Обязательно
|
Количество узлов в целевом объекте вычислений, используемое для обучения. Если больше 1, будет выполняться распределенное задание MPI. Для распределенных заданий поддерживается только целевой AmlCompute объект. |
|
process_count_per_node
Обязательно
|
Количество процессов на узел. Если больше 1, будет выполняться распределенное задание MPI. Для распределенных заданий поддерживается только целевой AmlCompute объект. |
|
distributed_backend
Обязательно
|
Серверная часть обмена данными для распределенного обучения. УСТАРЕВШИЕ. Используйте параметр Поддерживаемые значения: "mpi", "gloo" и "nccl". 'mpi': MPI/Horovod 'gloo', 'nccl': Native PyTorch Distributed Training Этот параметр требуется, если Если |
|
distributed_training
Обязательно
|
Параметры для выполнения распределенного задания обучения. Для выполнения распределенного задания с серверной частью MPI используйте Mpi объект для указания |
|
use_gpu
Обязательно
|
Указывает, должна ли среда запускать эксперимент, поддерживать графические процессоры.
Если значение true, образ Docker на основе GPU по умолчанию будет использоваться в среде. Если значение false, будет использоваться образ на основе ЦП. Образы Docker по умолчанию (ЦП или GPU) будут использоваться только в том случае, если |
|
use_docker
Обязательно
|
Указывает, должна ли среда запускать эксперимент на основе Docker. |
|
custom_docker_base_image
Обязательно
|
Имя образа Docker, из которого будет создан образ, используемый для обучения. УСТАРЕВШИЕ. Используйте параметр Если не задано, образ на основе ЦП по умолчанию будет использоваться в качестве базового образа. |
|
custom_docker_image
Обязательно
|
Имя образа Docker, из которого будет создан образ, используемый для обучения. Если не задано, образ на основе ЦП по умолчанию будет использоваться в качестве базового образа. |
|
image_registry_details
Обязательно
|
Сведения о реестре образов Docker. |
|
user_managed
Обязательно
|
Указывает, повторно ли azure ML использует существующую среду Python. Если значение false, машинное обучение Azure создаст среду Python на основе спецификации зависимостей conda. |
|
conda_packages
Обязательно
|
Список строк, представляющих пакеты conda, добавляемые в среду Python для эксперимента. |
|
pip_packages
Обязательно
|
Список строк, представляющих пакеты pip для добавления в среду Python для эксперимента. |
|
conda_dependencies_file_path
Обязательно
|
Относительный путь к файлу yaml зависимостей conda.
Если задано, Машинное обучение Azure не установит пакеты, связанные с платформой.
УСТАРЕВШИЕ. Используйте параметр |
|
pip_requirements_file_path
Обязательно
|
Относительный путь к текстовому файлу требований pip.
Это можно предоставить в сочетании с параметром |
|
conda_dependencies_file
Обязательно
|
Относительный путь к файлу yaml зависимостей conda. Если задано, Машинное обучение Azure не установит пакеты, связанные с платформой. |
|
pip_requirements_file
Обязательно
|
Относительный путь к текстовому файлу требований pip.
Это можно предоставить в сочетании с параметром |
|
environment_variables
Обязательно
|
Словарь имен и значений переменных среды. Эти переменные среды задаются в процессе выполнения пользовательского скрипта. |
|
environment_definition
Обязательно
|
Определение среды для эксперимента. Она включает в себя переменные PythonSection, DockerSection и среды. Любой параметр среды, не предоставляемый напрямую с помощью других параметров конструкции оценщика, можно задать с помощью этого параметра. Если этот параметр указан, он будет иметь приоритет над другими параметрами, связанными с средой, например |
|
inputs
Обязательно
|
Список DataReference или DatasetConsumptionConfig объекты, используемые в качестве входных данных. |
|
source_directory_data_store
Обязательно
|
Резервное хранилище данных для общего ресурса проекта. |
|
shm_size
Обязательно
|
Размер общего блока памяти контейнера Docker. Если не задано, используется azureml.core.environment._DEFAULT_SHM_SIZE по умолчанию. Для получения дополнительной информации см. справочник по команде Docker run. |
|
resume_from
Обязательно
|
Путь к данным, содержащий файлы контрольной точки или модели, из которых необходимо возобновить эксперимент. |
|
max_run_duration_seconds
Обязательно
|
Максимально допустимое время выполнения. Машинное обучение Azure попытается автоматически отменить выполнение, если оно занимает больше времени, чем это значение. |
|
framework_version
Обязательно
|
Версия PyTorch, используемая для выполнения кода обучения.
|
|
source_directory
Обязательно
|
Локальный каталог, содержащий файлы конфигурации эксперимента. |
|
compute_target
Обязательно
|
Целевой объект вычислений, в котором будет выполняться обучение. Это может быть объект или строка "local". |
|
vm_size
Обязательно
|
Размер виртуальной машины целевого объекта вычислений, который будет создан для обучения. Поддерживаемые значения: любой размер виртуальной машины Azure. |
|
vm_priority
Обязательно
|
Приоритет виртуальной машины целевого объекта вычислений, который будет создан для обучения. Если значение не указано, используется значение "выделенный". Поддерживаемые значения: "dedicated" и "lowpriority". Это действует только при |
|
entry_script
Обязательно
|
Относительный путь к файлу, содержаму скрипт обучения. |
|
script_params
Обязательно
|
Словарь аргументов командной строки для передачи в скрипт обучения, указанный в |
|
node_count
Обязательно
|
Количество узлов в целевом объекте вычислений, используемое для обучения. Если больше 1, будет выполняться распределенное задание mpi. Для распределенных заданий поддерживается только целевой объект azureml.core.compute.AmlCompute. |
|
process_count_per_node
Обязательно
|
Количество процессов на узел. Если больше 1, будет выполняться распределенное задание MPI. Для распределенных заданий поддерживается только целевой AmlCompute объект. |
|
distributed_backend
Обязательно
|
Серверная часть обмена данными для распределенного обучения. УСТАРЕВШИЕ. Используйте параметр Поддерживаемые значения: "mpi", "gloo" и "nccl". 'mpi': MPI/Horovod 'gloo', 'nccl': Native PyTorch Distributed Training Этот параметр требуется, если Если |
|
distributed_training
Обязательно
|
Параметры для выполнения распределенного задания обучения. Для выполнения распределенного задания с серверной частью MPI используйте Mpi объект для указания |
|
use_gpu
Обязательно
|
Указывает, должна ли среда запускать эксперимент, поддерживать графические процессоры.
Если значение true, образ Docker на основе GPU по умолчанию будет использоваться в среде. Если значение false, будет использоваться образ на основе ЦП. Образы Docker по умолчанию (ЦП или GPU) будут использоваться только в том случае, если |
|
use_docker
Обязательно
|
Указывает, должна ли среда запускать эксперимент на основе Docker. |
|
custom_docker_base_image
Обязательно
|
Имя образа Docker, из которого будет создан образ, используемый для обучения. УСТАРЕВШИЕ. Используйте параметр Если не задано, образ на основе ЦП по умолчанию будет использоваться в качестве базового образа. |
|
custom_docker_image
Обязательно
|
Имя образа Docker, из которого будет создан образ, используемый для обучения. Если не задано, образ на основе ЦП по умолчанию будет использоваться в качестве базового образа. |
|
image_registry_details
Обязательно
|
Сведения о реестре образов Docker. |
|
user_managed
Обязательно
|
Указывает, повторно ли azure ML использует существующую среду Python. Если значение false, машинное обучение Azure создаст среду Python на основе спецификации зависимостей conda. |
|
conda_packages
Обязательно
|
Список строк, представляющих пакеты conda, добавляемые в среду Python для эксперимента. |
|
pip_packages
Обязательно
|
Список строк, представляющих пакеты pip для добавления в среду Python для эксперимента. |
|
conda_dependencies_file_path
Обязательно
|
Относительный путь к файлу yaml зависимостей conda. Если задано, Машинное обучение Azure не установит пакеты, связанные с платформой.
УСТАРЕВШИЕ. Используйте параметр |
|
pip_requirements_file_path
Обязательно
|
Относительный путь к текстовому файлу требований pip.
Это можно предоставить в сочетании с параметром |
|
conda_dependencies_file
Обязательно
|
Относительный путь к файлу yaml зависимостей conda. Если задано, Машинное обучение Azure не установит пакеты, связанные с платформой. |
|
pip_requirements_file
Обязательно
|
Относительный путь к текстовому файлу требований pip.
Это можно предоставить в сочетании с параметром |
|
environment_variables
Обязательно
|
Словарь имен и значений переменных среды. Эти переменные среды задаются в процессе выполнения пользовательского скрипта. |
|
environment_definition
Обязательно
|
Определение среды для эксперимента. Она включает в себя переменные PythonSection, DockerSection и среды. Любой параметр среды, не предоставляемый напрямую с помощью других параметров конструкции оценщика, можно задать с помощью этого параметра. Если этот параметр указан, он будет иметь приоритет над другими параметрами, связанными с средой, например |
|
inputs
Обязательно
|
Список azureml.data.data_reference. Объекты DataReference для использования в качестве входных данных. |
|
source_directory_data_store
Обязательно
|
Резервное хранилище данных для общего ресурса проекта. |
|
shm_size
Обязательно
|
Размер общего блока памяти контейнера Docker. Если не задано, используется azureml.core.environment._DEFAULT_SHM_SIZE по умолчанию. Для получения дополнительной информации см. раздел |
|
framework_version
Обязательно
|
Версия PyTorch, используемая для выполнения кода обучения.
|
|
_enable_optimized_mode
Обязательно
|
Включите добавочную сборку среды с предварительно созданными образами платформ для ускорения подготовки среды. Предварительно созданный образ платформы построен на основе базовых образов ЦП и GPU azure ML по умолчанию с предварительно установленными зависимостями платформы. |
|
_disable_validation
Обязательно
|
Отключите проверку скрипта перед отправкой. Значение по умолчанию — True. |
|
_show_lint_warnings
Обязательно
|
Отображение предупреждений о подстраивание скрипта. Значение по умолчанию — False. |
|
_show_package_warnings
Обязательно
|
Отображение предупреждений проверки пакета. Значение по умолчанию — False. |
Комментарии
При отправке задания обучения Машинное обучение Azure запускает скрипт в среде conda в контейнере Docker. Контейнеры PyTorch установлены следующие зависимости.
Зависимости | PyTorch 1.0/1.1/1.2/1.3/ | PyTorch 1.4/1.5/1.6 | ———————- | —————– | ————- | Python | 3.6.2 | 3.6.2 | CUDA (только образ GPU) | 10.0 | 10.1 | cuDNN (только образ GPU) | 7.6.3 | 7.6.3 | NCCL (только образ GPU) | 2.4.8 | 2.4.8 | azureml-defaults | Последняя | Последняя | OpenMpi | 3.1.2 | 3.1.2 | Horovod | 0.18.1 | 0.18.1/0.19.1/0.19.5 | miniconda | 4.5.11 | 4.5.11 | факел | 1.0/1.1/1.2/1.3.1 | 1.4.0/1.5.0/1.6.0 | torchvision | 0.4.1 | 0.5.0 | git | 2.7.4 | 2.7.4 | tensorboard | 1.14 | 1.14 | будущее | 0.17.1 | 0.17.1 |
Образы Docker расширяют Ubuntu 16.04.
Для установки дополнительных зависимостей можно использовать pip_packages или conda_packages параметр. Кроме того, можно указать или pip_requirements_file параметрconda_dependencies_file.
Кроме того, можно создать собственный образ и передать custom_docker_image параметр конструктору оценщика.
Дополнительные сведения о контейнерах Docker, используемых в обучении PyTorch, см. в разделе https://github.com/Azure/AzureML-Containers.
Средство оценки PyTorch поддерживает распределенное обучение между кластерами ЦП и GPU с помощью Horovod, открытого исходного кода, всех платформ сокращения для распределенного обучения. Примеры и дополнительные сведения об использовании PyTorch в распределенном обучении см. в руководстве по обучению и регистрации моделей PyTorch в масштабе с помощью Машинного обучения Azure.
Атрибуты
DEFAULT_VERSION
DEFAULT_VERSION = '1.4'
FRAMEWORK_NAME
FRAMEWORK_NAME = 'PyTorch'