PyTorch 클래스
PyTorch 실험에서 학습을 위한 예측 도구를 나타냅니다.
사용되지 않습니다. ScriptRunConfig 개체는 사용자 정의 환경에서 사용하거나 Azure ML PyTorch 큐레이팅된 환경 중 하나에서 사용합니다. ScriptRunConfig를 사용하여 PyTorch 실험 실행을 구성하는 방법에 대한 소개는 Azure Machine Learning을 사용한 대규모 PyTorch 모델 학습을 참조하세요.
지원되는 버전: 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.data.datapath.DataPath :p aram max_run_duration_seconds: 실행에 허용되는 최대 시간입니다. Azure ML은 자동으로 시도합니다.
이 값보다 오래 걸리면 실행을 취소합니다.
- 상속
-
azureml.train.estimator._framework_base_estimator._FrameworkBaseEstimatorPyTorch
생성자
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)
매개 변수
Name | Description |
---|---|
source_directory
필수
|
실험 구성 파일을 포함하는 로컬 디렉터리입니다. |
compute_target
필수
|
학습이 수행될 컴퓨팅 대상입니다. 이는 개체이거나 "local" 문자열일 수 있습니다. |
vm_size
필수
|
학습을 위해 만들어질 컴퓨팅 대상의 VM 크기입니다. 지원되는 값: 모든 Azure VM 크기. |
vm_priority
필수
|
학습을 위해 만들어질 컴퓨팅 대상의 VM 우선 순위입니다. 지정하지 않으면 ‘dedicated’가 사용됩니다. 지원되는 값: ‘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': 기본 PyTorch 분산 학습 이 매개 변수는
|
distributed_training
필수
|
|
use_gpu
필수
|
실험을 실행할 환경에서 GPU를 지원해야 하는지 여부를 지정합니다.
true인 경우 환경에서 GPU 기반 기본 Docker 이미지가 사용됩니다. False이면 CPU 기반 이미지가 사용됩니다. 기본 Docker 이미지(CPU 또는 GPU)는 |
use_docker
필수
|
실험을 실행할 환경이 Docker 기반이어야 하는지 여부를 지정합니다. |
custom_docker_base_image
필수
|
학습에 사용할 이미지가 빌드될 Docker 이미지의 이름입니다. 사용되지 않습니다.
설정하지 않으면 기본 CPU 기반 이미지가 기본 이미지로 사용됩니다. |
custom_docker_image
필수
|
학습에 사용할 이미지가 빌드될 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
필수
|
conda 종속성 yaml 파일의 상대 경로입니다.
이 값을 지정하면 Azure ML은 프레임워크 관련 패키지를 설치하지 않습니다.
사용되지 않습니다.
|
pip_requirements_file_path
필수
|
pip 요구 사항 텍스트 파일의 상대 경로입니다.
|
conda_dependencies_file
필수
|
conda 종속성 yaml 파일의 상대 경로입니다. 이 값을 지정하면 Azure ML은 프레임워크 관련 패키지를 설치하지 않습니다. |
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 실행 참조를 참조하세요. |
resume_from
필수
|
실험을 다시 시작할 검사점 또는 모델 파일이 포함된 데이터 경로입니다. |
max_run_duration_seconds
필수
|
실행에 허용되는 최대 시간입니다. Azure ML은 이 값보다 오래 걸리는 경우 실행을 자동으로 취소하려고 시도합니다. |
framework_version
필수
|
학습 코드를 실행하는 데 사용할 PyTorch 버전입니다.
|
source_directory
필수
|
실험 구성 파일을 포함하는 로컬 디렉터리입니다. |
compute_target
필수
|
학습이 수행될 컴퓨팅 대상입니다. 이는 개체이거나 "local" 문자열일 수 있습니다. |
vm_size
필수
|
학습을 위해 만들어질 컴퓨팅 대상의 VM 크기입니다. 지원되는 값: 모든 Azure VM 크기. |
vm_priority
필수
|
학습을 위해 만들어질 컴퓨팅 대상의 VM 우선 순위입니다. 지정하지 않으면 ‘dedicated’가 사용됩니다. 지원되는 값: ‘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': 기본 PyTorch 분산 학습 이 매개 변수는
|
distributed_training
필수
|
|
use_gpu
필수
|
실험을 실행할 환경에서 GPU를 지원해야 하는지 여부를 지정합니다.
true인 경우 환경에서 GPU 기반 기본 Docker 이미지가 사용됩니다. False이면 CPU 기반 이미지가 사용됩니다. 기본 Docker 이미지(CPU 또는 GPU)는 |
use_docker
필수
|
실험을 실행할 환경이 Docker 기반이어야 하는지 여부를 지정합니다. |
custom_docker_base_image
필수
|
학습에 사용할 이미지가 빌드될 Docker 이미지의 이름입니다. 사용되지 않습니다.
설정하지 않으면 기본 CPU 기반 이미지가 기본 이미지로 사용됩니다. |
custom_docker_image
필수
|
학습에 사용할 이미지가 빌드될 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
필수
|
conda 종속성 yaml 파일의 상대 경로입니다. 이 값을 지정하면 Azure ML은 프레임워크 관련 패키지를 설치하지 않습니다.
사용되지 않습니다.
|
pip_requirements_file_path
필수
|
pip 요구 사항 텍스트 파일의 상대 경로입니다.
|
conda_dependencies_file
필수
|
conda 종속성 yaml 파일의 상대 경로입니다. 이 값을 지정하면 Azure ML은 프레임워크 관련 패키지를 설치하지 않습니다. |
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
필수
|
더 빠른 환경 준비를 위해 미리 빌드된 프레임워크 이미지를 사용하여 증분 환경 빌드를 사용하도록 설정합니다. 미리 빌드된 프레임워크 이미지는 프레임워크 종속성이 미리 설치된 Azure ML 기본 CPU/GPU 기본 이미지를 기반으로 빌드됩니다. |
_disable_validation
필수
|
제출을 실행하기 전에 스크립트 유효성 검사를 사용하지 않도록 설정합니다. 기본값은 true입니다. |
_show_lint_warnings
필수
|
스크립트 린팅 경고를 표시합니다. 기본값은 False입니다. |
_show_package_warnings
필수
|
패키지 유효성 검사 경고를 표시합니다. 기본값은 False입니다. |
설명
학습 작업을 제출할 때 Azure ML은 Docker 컨테이너 내부의 conda 환경에서 스크립트를 실행합니다. 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 | torch | 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를 확장합니다.
추가 종속성을 설치하려면 conda_packages
또는 pip_packages
매개 변수를 사용하면 됩니다.
pip_requirements_file
또는 conda_dependencies_file
매개 변수를 지정할 수도 있습니다.
또는 고유한 이미지를 빌드하고 custom_docker_image
매개 변수를 예측 도구 생성자에 전달할 수 있습니다.
PyTorch 학습에 사용되는 Docker 컨테이너에 대한 자세한 내용은 https://github.com/Azure/AzureML-Containers를 참조하세요.
PyTorch 예측 도구는 오픈 소스인 Horovod를 사용하여 CPU 및 GPU 클러스터 간에 분산 학습을 지원하며, 분산 학습을 위한 모든 축소 프레임워크를 지원합니다. 분산 학습에서 PyTorch를 사용하는 방법에 대한 예제와 자세한 내용은 Azure Machine Learning을 사용하여 대규모로 PyTorch 모델 학습 및 등록 자습서를 참조하세요.
특성
DEFAULT_VERSION
DEFAULT_VERSION = '1.4'
FRAMEWORK_NAME
FRAMEWORK_NAME = 'PyTorch'