PyTorch クラス
PyTorch 実験のトレーニングの推定器を表します。
非推奨。 独自に定義した環境、または Azure ML PyTorch オブジェクトのキュレートされた環境の 1 つで ScriptRunConfig オブジェクトを使用します。 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)
パラメーター
名前 | 説明 |
---|---|
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 イメージの名前。トレーニングに使用するイメージは、この Docker イメージからビルドされます。 非推奨。
設定しない場合は、既定の CPU ベースのイメージが基本イメージとして使用されます。 |
custom_docker_image
必須
|
Docker イメージの名前。トレーニングに使用するイメージは、この Docker イメージからビルドされます。 設定しない場合は、既定の CPU ベースのイメージが基本イメージとして使用されます。 |
image_registry_details
必須
|
Docker イメージ レジストリの詳細。 |
user_managed
必須
|
Azure ML が既存の Python 環境を再利用するかどうかを指定します。 false の場合、conda の依存関係の仕様に基づいて、Azure ML によって 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 イメージの名前。トレーニングに使用するイメージは、この Docker イメージからビルドされます。 非推奨。
設定しない場合は、既定の CPU ベースのイメージが基本イメージとして使用されます。 |
custom_docker_image
必須
|
Docker イメージの名前。トレーニングに使用するイメージは、この Docker イメージからビルドされます。 設定しない場合は、既定の CPU ベースのイメージが基本イメージとして使用されます。 |
image_registry_details
必須
|
Docker イメージ レジストリの詳細。 |
user_managed
必須
|
Azure ML が既存の Python 環境を再利用するかどうかを指定します。 false の場合、conda の依存関係の仕様に基づいて、Azure ML によって 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 によって、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 | 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'