TensorFlow クラス
TensorFlow 実験のトレーニングの推定器を表します。
非推奨。 独自に定義した環境、または Azure ML TensorFlow のキュレートされた環境の 1 つで ScriptRunConfig オブジェクトを使用します。 ScriptRunConfig を使用して TensorFlow 実験の実行を構成する方法の概要については、「Azure Machine Learning を使用して大規模な TensorFlow モデルをトレーニングする」を参照してください。
サポートされているバージョン: 1.10、1.12、1.13、2.0、2.1、2.2
TensorFlow 推定器を初期化します。
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._FrameworkBaseEstimatorTensorFlow
コンストラクター
TensorFlow(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, worker_count=1, parameter_server_count=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
必須
|
トレーニングに使用するコンピューティング先のノードの数。 分散トレーニングには、AmlCompute ターゲットのみがサポートされています ( |
process_count_per_node
必須
|
MPI を使用する場合、ノードあたりのプロセスの数。 |
worker_count
必須
|
分散トレーニングにパラメーター サーバーを使用する場合、ワーカー ノードの数。 非推奨。
|
parameter_server_count
必須
|
分散トレーニングにパラメーター サーバーを使用する場合、パラメーター サーバー ノードの数。 |
distributed_backend
必須
|
分散トレーニング用の通信バックエンド。 非推奨。
サポートされる値: 'mpi' と 'ps'。 'mpi' は MPI/Horovod を表し、'ps' はパラメーター サーバーを表します。 このパラメーターは、
|
distributed_training
必須
|
ParameterServer または
Mpi
分散トレーニング ジョブを実行するためのパラメーター。 パラメーター サーバー バックエンドで分散ジョブを実行する場合は、ParameterServer オブジェクトを使用して、 MPI バックエンドで分散ジョブを実行する場合は、Mpi オブジェクトを使用して |
use_gpu
必須
|
実験を実行する環境で GPU をサポートする必要があるかどうかを指定します。
true の場合、GPU ベースの既定の Docker イメージが環境で使用されます。 false の場合、CPU ベースのイメージが使用されます。 既定の Docker イメージ (CPU または GPU) は、 |
use_docker
必須
|
実験を実行する環境を Docker ベースにするかどうかを指定します。 |
custom_docker_base_image
必須
|
トレーニングに使用するイメージのビルド元に指定する 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、および環境変数が含まれます。 他のパラメーターを介して Estimator 構造に直接公開されていない環境オプションは、このパラメーターを使用して設定できます。 このパラメーターを指定すると、 |
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
必須
|
トレーニング コードの実行に使用される TensorFlow バージョン。
バージョンを指定しない場合、推定器は既定で Azure ML によってサポートされる最新のバージョンになります。
リストを返す |
source_directory
必須
|
実験構成ファイルが含まれるローカル ディレクトリ。 |
compute_target
必須
|
トレーニングが発生するコンピューティング先。 これは、オブジェクトまたは文字列 "local" のいずれかです。 |
vm_size
必須
|
トレーニング用に作成されるコンピューティング先の VM サイズ。 サポートされる値: 任意の Azure VM サイズ。 |
vm_priority
必須
|
トレーニング用に作成されるコンピューティング先の VM 優先度。 指定しない場合は、'dedicated' が使用されます。 サポートされる値: 'dedicated' と 'lowpriority'。 これは、 |
entry_script
必須
|
トレーニング スクリプトが含まれるファイルへの相対パス。 |
script_params
必須
|
で指定された tne トレーニング スクリプトに渡すコマンドライン引数の |
node_count
必須
|
トレーニングに使用するコンピューティング先のノードの数。 分散トレーニングには、AmlCompute ターゲットのみがサポートされています ( |
process_count_per_node
必須
|
MPI を使用する場合、ノードあたりのプロセスの数。 |
worker_count
必須
|
パラメーター サーバーを使用する場合は、ワーカー ノードの数。 非推奨。
|
parameter_server_count
必須
|
パラメーター サーバーを使用する場合は、パラメーター サーバー ノードの数。 |
distributed_backend
必須
|
分散トレーニング用の通信バックエンド。 非推奨。
サポートされる値: 'mpi' と 'ps'。 'mpi' は MPI/Horovod を表し、'ps' はパラメーター サーバーを表します。 このパラメーターは、
|
distributed_training
必須
|
ParameterServer または
Mpi
分散トレーニング ジョブを実行するためのパラメーター。 パラメーター サーバー バックエンドで分散ジョブを実行する場合は、 オブジェクトを使用して ParameterServer と を指定 MPI バックエンドで分散ジョブを実行する場合は、Mpi オブジェクトを使用して |
use_gpu
必須
|
実験を実行する環境で GPU をサポートする必要があるかどうかを指定します。
true の場合、GPU ベースの既定の Docker イメージが環境で使用されます。 false の場合、CPU ベースのイメージが使用されます。 既定の Docker イメージ (CPU または GPU) は、パラメーターが設定されていない場合 |
use_docker
必須
|
実験を実行する環境を Docker ベースにするかどうかを指定します。 |
custom_docker_base_image
必須
|
トレーニングに使用するイメージのビルド元に指定する 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 要件テキスト ファイルへの相対パス。
これは、 |
environment_variables
必須
|
環境変数の名前と値のディクショナリ。 これらの環境変数は、ユーザー スクリプトが実行されるプロセスで設定されます。 |
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
必須
|
トレーニング コードの実行に使用される TensorFlow バージョン。 バージョンを指定しない場合、推定器は既定で Azure ML によってサポートされる最新のバージョンになります。 TensorFlow.get_supported_versions() を使用してリストを返し、現在の Azure ML SDK でサポートされているすべてのバージョンの一覧を取得します。 |
_enable_optimized_mode
必須
|
事前構築済みのフレームワーク イメージを使用して増分環境ビルドを有効にして、環境の準備を高速化します。 事前構築済みのフレームワーク イメージは、フレームワークの依存関係がプレインストールされた Azure ML の既定の CPU/GPU ベース イメージの上に構築されます。 |
_disable_validation
必須
|
送信を実行する前にスクリプトの検証を無効にします。 既定値は True です。 |
_show_lint_warnings
必須
|
スクリプトリンティングの警告を表示します。 既定値は False です。 |
_show_package_warnings
必須
|
パッケージ検証の警告を表示します。 既定値は False です。 |
注釈
トレーニング ジョブを送信すると、Azure ML によって、Azure ML Docker コンテナー内の conda 環境でスクリプトが実行されます。 TensorFlow コンテナーには、次の依存関係がインストールされています。
依存関係 | TensorFlow 1.10/1.12 | TensorFlow 1.13 | TF 2.0/2.1/2.2 | ———————————— | ——————– | ————— | —————— | Python | 3.6.2 | 3.6.2 | 3.6.2 | CUDA (GPU イメージのみ) | 9.0 | 10.0 | 10.0 | cuDNN (GPU イメージのみ) | 7.6.3 | 7.6.3 | 7.6.3 | NCCL (GPU イメージのみ) | 2.4.8 | 2.4.8 | 2.4.8 | azureml-defaults | 最新 | 最新 | 最新 | azureml-dataset-runtime[fuse,pandas] | 最新 | 最新 | 最新 | IntelMpi | 2018.3.222 | 2018.3.222 | —- | OpenMpi | —- | —- | 3.1.2 | horovod | 0.15.2 | 0.16.1 | 0.18.1/0.19.1/0.19.5 | miniconda | 4.5.11 | 4.5.11 | 4.5.11 | tensorflow | 1.10.0/1.12.0 | 1.13.1 | 2.0.0/2.1.0/2.2.0 | git | 2.7.4 | 2.7.4 | 2.7.4 |
v1 Docker イメージにより、Ubuntu 16.04 が拡張されます。 v2 Docker イメージにより、Ubuntu 18.04 が拡張されます。
追加の依存関係をインストールするには、pip_packages
または conda_packages
パラメーターを使用できます。 あるいは、pip_requirements_file
または conda_dependencies_file
パラメーターを指定できます。
また、独自のイメージをビルドし、custom_docker_image
パラメーターを推定器コンストラクターに渡すこともできます。
TensorFlow トレーニングで使用される Docker コンテナーの詳細については、https://github.com/Azure/AzureML-Containers を参照してください。
TensorFlow クラスでは、分散トレーニングの 2 つの方法がサポートされています。
MPI ベースの分散トレーニング
(Horovod フレームワークを使用)
ネイティブの Distributed TensorFlow
分散トレーニングにおける TensorFlow の使用例と詳細については、Azure Machine Learning を使用した大規模な TensorFlow モデルのトレーニングと登録に関する記事をご覧ください。
属性
DEFAULT_VERSION
DEFAULT_VERSION = '1.13'
FRAMEWORK_NAME
FRAMEWORK_NAME = 'TensorFlow'