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._FrameworkBaseEstimator
TensorFlow

コンストラクター

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
必須
str

実験構成ファイルが含まれるローカル ディレクトリ。

compute_target
必須

トレーニングが発生するコンピューティング先。 これは、オブジェクトまたは文字列 "local" のいずれかです。

vm_size
必須
str

トレーニング用に作成されるコンピューティング先の VM サイズ。 サポートされる値: 任意の Azure VM サイズ

vm_priority
必須
str

トレーニング用に作成されるコンピューティング先の VM 優先度。 指定しない場合は、'dedicated' が使用されます。

サポートされる値: 'dedicated' と 'lowpriority'。

これは、vm_size param が入力で指定されている場合にのみ有効になります。

entry_script
必須
str

トレーニング スクリプトが含まれるファイルへの相対パス。

script_params
必須

entry_script内で指定されたトレーニング スクリプトに渡すコマンド ライン引数の辞書。

node_count
必須
int

トレーニングに使用するコンピューティング先のノードの数。 分散トレーニングには、AmlCompute ターゲットのみがサポートされています (node_count> 1)。

process_count_per_node
必須
int

MPI を使用する場合、ノードあたりのプロセスの数。

worker_count
必須
int

分散トレーニングにパラメーター サーバーを使用する場合、ワーカー ノードの数。

非推奨。 distributed_training パラメーターの一部として指定します。

parameter_server_count
必須
int

分散トレーニングにパラメーター サーバーを使用する場合、パラメーター サーバー ノードの数。

distributed_backend
必須
str

分散トレーニング用の通信バックエンド。

非推奨。 distributed_training パラメーターを使用します。

サポートされる値: 'mpi' と 'ps'。 'mpi' は MPI/Horovod を表し、'ps' はパラメーター サーバーを表します。

このパラメーターは、node_countprocess_count_per_nodeworker_count、または parameter_server_count> 1 の場合は必須です。 'ps' の場合、worker_countparameter_server_count の合計は node_count * (ノードあたりの CPU または GPU の数) 以下でなければなりません

node_count == 1 かつ process_count_per_node == 1 の場合、バックエンドが明示的に設定されていない限り、バックエンドは使用されません。 分散トレーニングでは、AmlCompute ターゲットのみがサポートされています。

distributed_training
必須
ParameterServer または Mpi

分散トレーニング ジョブを実行するためのパラメーター。

パラメーター サーバー バックエンドで分散ジョブを実行する場合は、ParameterServer オブジェクトを使用して、worker_countparameter_server_count を指定します。 worker_countparameter_server_count のパラメーターの合計は node_count * (ノードあたりの CPU または GPU の数) 以下でなければなりません。

MPI バックエンドで分散ジョブを実行する場合は、Mpi オブジェクトを使用して process_count_per_node を指定します。

use_gpu
必須

実験を実行する環境で GPU をサポートする必要があるかどうかを指定します。 true の場合、GPU ベースの既定の Docker イメージが環境で使用されます。 false の場合、CPU ベースのイメージが使用されます。 既定の Docker イメージ (CPU または GPU) は、custom_docker_image パラメーターを設定していない場合にのみ使用されます。 この設定は、Docker 対応のコンピューティング先でのみ使用されます。

use_docker
必須

実験を実行する環境を Docker ベースにするかどうかを指定します。

custom_docker_base_image
必須
str

トレーニングに使用するイメージのビルド元に指定する Docker イメージの名前。

非推奨。 custom_docker_image パラメーターを使用します。

設定しない場合は、既定の CPU ベースのイメージが基本イメージとして使用されます。

custom_docker_image
必須
str

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
必須
str

conda の依存関係 yaml ファイルへの相対パスを表す文字列。 指定した場合、Azure ML によって、フレームワーク関連のパッケージはインストールされません。 非推奨。 conda_dependencies_file パラメーターを使用します。

pip_requirements_file_path
必須
str

pip 要件テキスト ファイルへの相対パスを表す文字列。 これは、pip_packages パラメーターと組み合わせて指定できます。 非推奨。 pip_requirements_file パラメーターを使用します。

conda_dependencies_file
必須
str

conda の依存関係 yaml ファイルへの相対パスを表す文字列。 指定した場合、フレームワーク関連のパッケージは、Azure ML によってインストールされません。

pip_requirements_file
必須
str

pip 要件テキスト ファイルへの相対パスを表す文字列。 これは、pip_packages パラメーターと組み合わせて指定できます。

environment_variables
必須

環境変数の名前と値のディクショナリ。 これらの環境変数は、ユーザー スクリプトが実行されるプロセスで設定されます。

environment_definition
必須

実験の環境定義。 PythonSection、DockerSection、および環境変数が含まれます。 他のパラメーターを介して Estimator 構造に直接公開されていない環境オプションは、このパラメーターを使用して設定できます。 このパラメーターを指定すると、use_gpucustom_docker_imageconda_packagespip_packages などの他の環境関連パラメーターよりも優先されます。 これらの無効な組み合わせに対してエラーが報告されます。

inputs
必須

入力として使用する DataReference または DatasetConsumptionConfig オブジェクトのリスト。

source_directory_data_store
必須

プロジェクト共有のバッキング データストア。

shm_size
必須
str

Docker コンテナーの共有メモリ ブロックのサイズ。 設定しなかった場合は、既定の azureml.core.environment._DEFAULT_SHM_SIZE が使用されます。 詳細については、Docker 実行リファレンスを参照してください。

resume_from
必須

実験を再開するためのチェックポイント ファイルまたはモデル ファイルが含まれているデータ パス。

max_run_duration_seconds
必須
int

実行の最大許容時間。 この値よりも時間がかかる場合は、Azure ML によって自動的に実行のキャンセルが試みられます。

framework_version
必須
str

トレーニング コードの実行に使用される TensorFlow バージョン。 バージョンを指定しない場合、推定器は既定で Azure ML によってサポートされる最新のバージョンになります。 リストを返す TensorFlow.get_supported_versions() を使用してし、現在の Azure ML SDK でサポートされているすべてのバージョンのリストを取得します。

source_directory
必須
str

実験構成ファイルが含まれるローカル ディレクトリ。

compute_target
必須

トレーニングが発生するコンピューティング先。 これは、オブジェクトまたは文字列 "local" のいずれかです。

vm_size
必須
str

トレーニング用に作成されるコンピューティング先の VM サイズ。 サポートされる値: 任意の Azure VM サイズ

vm_priority
必須
str

トレーニング用に作成されるコンピューティング先の VM 優先度。 指定しない場合は、'dedicated' が使用されます。

サポートされる値: 'dedicated' と 'lowpriority'。

これは、vm_size param が入力で指定されている場合にのみ有効になります。

entry_script
必須
str

トレーニング スクリプトが含まれるファイルへの相対パス。

script_params
必須

で指定された tne トレーニング スクリプトに渡すコマンドライン引数の entry_scriptディクショナリ。

node_count
必須
int

トレーニングに使用するコンピューティング先のノードの数。 分散トレーニングには、AmlCompute ターゲットのみがサポートされています (node_count> 1)。

process_count_per_node
必須
int

MPI を使用する場合、ノードあたりのプロセスの数。

worker_count
必須
int

パラメーター サーバーを使用する場合は、ワーカー ノードの数。

非推奨。 distributed_training パラメーターの一部として指定します。

parameter_server_count
必須
int

パラメーター サーバーを使用する場合は、パラメーター サーバー ノードの数。

distributed_backend
必須
str

分散トレーニング用の通信バックエンド。

非推奨。 distributed_training パラメーターを使用します。

サポートされる値: 'mpi' と 'ps'。 'mpi' は MPI/Horovod を表し、'ps' はパラメーター サーバーを表します。

このパラメーターは、node_countprocess_count_per_nodeworker_count、または parameter_server_count> 1 の場合は必須です。 'ps' の場合、worker_countparameter_server_count の合計は node_count * (ノードあたりの CPU または GPU の数) 以下でなければなりません

node_count == 1 かつ process_count_per_node == 1 の場合、バックエンドが明示的に設定されていない限り、バックエンドは使用されません。 分散トレーニングでは、AmlCompute ターゲットのみがサポートされています。 は分散トレーニングでサポートされています。

distributed_training
必須
ParameterServer または Mpi

分散トレーニング ジョブを実行するためのパラメーター。

パラメーター サーバー バックエンドで分散ジョブを実行する場合は、 オブジェクトを使用して ParameterServer と を指定 worker_count します parameter_server_countworker_countparameter_server_count のパラメーターの合計は node_count * (ノードあたりの CPU または GPU の数) 以下でなければなりません。

MPI バックエンドで分散ジョブを実行する場合は、Mpi オブジェクトを使用して process_count_per_node を指定します。

use_gpu
必須

実験を実行する環境で GPU をサポートする必要があるかどうかを指定します。 true の場合、GPU ベースの既定の Docker イメージが環境で使用されます。 false の場合、CPU ベースのイメージが使用されます。 既定の Docker イメージ (CPU または GPU) は、パラメーターが設定されていない場合 custom_docker_image にのみ使用されます。 この設定は、Docker 対応のコンピューティング先でのみ使用されます。

use_docker
必須

実験を実行する環境を Docker ベースにするかどうかを指定します。

custom_docker_base_image
必須
str

トレーニングに使用するイメージのビルド元に指定する Docker イメージの名前。

非推奨。 custom_docker_image パラメーターを使用します。

設定しない場合は、既定の CPU ベースのイメージが基本イメージとして使用されます。

custom_docker_image
必須
str

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
必須
str

conda の依存関係 yaml ファイルへの相対パス。 指定した場合、Azure ML によって、フレームワーク関連のパッケージはインストールされません。 非推奨。 conda_dependencies_file パラメーターを使用します。

pip_requirements_file_path
必須
str

pip 要件テキスト ファイルへの相対パス。 これは、pip_packages パラメーターと組み合わせて指定できます。 非推奨。 pip_requirements_file パラメーターを使用します。

environment_variables
必須

環境変数の名前と値のディクショナリ。 これらの環境変数は、ユーザー スクリプトが実行されるプロセスで設定されます。

conda_dependencies_file
必須
str

conda の依存関係 yaml ファイルへの相対パスを表す文字列。 指定した場合、Azure ML によって、フレームワーク関連のパッケージはインストールされません。

pip_requirements_file
必須
str

pip 要件テキスト ファイルへの相対パス。 これは、pip_packages パラメーターと組み合わせて指定できます。

environment_variables
必須

環境変数の名前と値のディクショナリ。 これらの環境変数は、ユーザー スクリプトが実行されるプロセスで設定されます。

environment_definition
必須

実験の環境定義。 PythonSection、DockerSection、および環境変数が含まれます。 他のパラメーターを介して推定器構造に直接公開されていない環境オプションは、このパラメーターを使用して設定できます。 このパラメーターを指定すると、use_gpucustom_docker_imageconda_packagespip_packages などの他の環境関連パラメーターよりも優先されます。 これらの無効な組み合わせに対してエラーが報告されます。

inputs
必須

azureml.data.data_referenceの一覧。入力として使用する DataReference オブジェクト。

source_directory_data_store
必須
str

プロジェクト共有のバッキング データストア。

shm_size
必須

Docker コンテナーの共有メモリ ブロックのサイズ。 設定されていない場合、既定値はazureml.core.environment._DEFAULT_SHM_SIZE。 詳細については、「

framework_version
必須
str

トレーニング コードの実行に使用される 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 つの方法がサポートされています。

分散トレーニングにおける TensorFlow の使用例と詳細については、Azure Machine Learning を使用した大規模な TensorFlow モデルのトレーニングと登録に関する記事をご覧ください。

属性

DEFAULT_VERSION

DEFAULT_VERSION = '1.13'

FRAMEWORK_NAME

FRAMEWORK_NAME = 'TensorFlow'