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)
參數
名稱 | 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': Native PyTorch Distributed Training 當 或 當 == 1 和 |
distributed_training
必要
|
|
use_gpu
必要
|
指定執行實驗的環境是否應該支援 GPU。
如果為 true,則會在環境中使用 GPU 型預設 Docker 映射。 如果為 false,則會使用以 CPU 為基礎的映射。 只有在未設定 參數時 |
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
必要
|
做為輸入的 或 DatasetConsumptionConfig 物件清單 DataReference 。 |
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': Native PyTorch Distributed Training 當 或 當 == 1 和 |
distributed_training
必要
|
|
use_gpu
必要
|
指定執行實驗的環境是否應該支援 GPU。
如果為 true,則會在環境中使用 GPU 型預設 Docker 映射。 如果為 false,則會使用以 CPU 為基礎的映射。 只有在未設定 參數時 |
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
必要
|
顯示腳本 Linting 警告。 預設值是 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 |手電筒筒 |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 |future |0.17.1 |0.17.1 |
Docker 映射會擴充 Ubuntu 16.04。
若要安裝其他相依性,您可以使用 pip_packages
或 conda_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'