Chainer クラス

Chainer 実験のトレーニングの推定器を表します。

非推奨。 独自に定義した環境、または Azure ML Chainer のキュレートされた環境の 1 つで ScriptRunConfig オブジェクトを使用します。 ScriptRunConfig で実験の実行を構成する方法の概要については、「トレーニングの実行を構成して送信する」を参照してください。

サポートされているバージョン: 5.1.0、7.0.0

Chainer 推定器を初期化します。

継承
azureml.train.estimator._framework_base_estimator._FrameworkBaseEstimator
Chainer

コンストラクター

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

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

compute_target
AbstractComputeTarget または str
必須

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

vm_size
str
必須

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

vm_priority
str
必須

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

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

これは、入力で vm_size param を指定した場合にのみ有効になります。

entry_script
str
必須

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

script_params
dict
必須

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

node_count
int
必須

トレーニングに使用するコンピューティング先のノードの数。 1 より大きい場合は、MPI 分散ジョブが実行されます。 分散ジョブには、AmlCompute ターゲットのみがサポートされています。

process_count_per_node
int
必須

ノードあたりのプロセスの数。 1 より大きい場合は、MPI 分散ジョブが実行されます。 分散ジョブには、AmlCompute ターゲットのみがサポートされています。

distributed_backend
str
必須

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

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

サポートされる値: 'mpi'。

'mpi': MPI/Horovod

このパラメーターは、node_count または process_count_per_node> 1 の場合に必要です。

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

distributed_training
Mpi
必須

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

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

use_gpu
bool
必須

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

use_docker
bool
必須

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

custom_docker_base_image
str
必須

Docker イメージの名前。トレーニングに使用するイメージは、この Docker イメージからビルドされます。

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

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

custom_docker_image
str
必須

Docker イメージの名前。トレーニングに使用するイメージは、この Docker イメージからビルドされます。 設定しない場合は、既定の CPU ベースのイメージが基本イメージとして使用されます。

image_registry_details
ContainerRegistry
必須

Docker イメージ レジストリの詳細。

user_managed
bool
必須

Azure ML が既存の Python 環境を再利用するかどうかを指定します。 false の場合、conda の依存関係の仕様に基づいて、Azure ML によって Python 環境が作成されます。

conda_packages
list
必須

実験用の Python 環境に追加される conda パッケージを表す文字列のリスト。

pip_packages
list
必須

実験用の 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
dict
必須

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

environment_definition
Environment
必須

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

inputs
list
必須

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

source_directory_data_store
Datastore
必須

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

shm_size
str
必須

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

resume_from
DataPath
必須

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

max_run_duration_seconds
int
必須

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

framework_version
str
必須

トレーニング コードの実行に使用される Chainer バージョン。 Chainer.get_supported_versions() は、現在の SDK でサポートされているバージョンのリストを返します。

source_directory
str
必須

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

compute_target
AbstractComputeTarget または str
必須

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

vm_size
str
必須

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

vm_priority
str
必須

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

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

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

entry_script
str
必須

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

script_params
dict
必須

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

node_count
int
必須

トレーニングに使用するコンピューティング先のノードの数。 1 より大きい場合は、MPI 分散ジョブが実行されます。 分散ジョブには、AmlCompute ターゲットのみがサポートされています。

process_count_per_node
int
必須

ノードあたりのプロセスの数。 1 より大きい場合は、MPI 分散ジョブが実行されます。 分散ジョブでは、ターゲットコンピューティング先のみが AmlCompute サポートされます。

distributed_backend
str
必須

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

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

サポートされる値: 'mpi'。

'mpi': MPI/Horovod

このパラメーターは、node_count または process_count_per_node> 1 の場合に必要です。

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

distributed_training
Mpi
必須

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

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

use_gpu
bool
必須

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

use_docker
bool
必須

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

custom_docker_base_image
str
必須

Docker イメージの名前。トレーニングに使用するイメージは、この Docker イメージからビルドされます。

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

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

custom_docker_image
str
必須

Docker イメージの名前。トレーニングに使用するイメージは、この Docker イメージからビルドされます。 設定しない場合は、既定の CPU ベースのイメージが基本イメージとして使用されます。

image_registry_details
ContainerRegistry
必須

Docker イメージ レジストリの詳細。

user_managed
bool
必須

Azure ML が既存の Python 環境を再利用するかどうかを指定します。 false の場合、conda の依存関係の仕様に基づいて、Azure ML によって Python 環境が作成されます。

conda_packages
list
必須

実験用の Python 環境に追加される conda パッケージを表す文字列のリスト。

pip_packages
list
必須

実験用の 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
dict
必須

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

environment_definition
Environment
必須

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

inputs
list
必須

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

source_directory_data_store
Datastore
必須

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

shm_size
str
必須

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

resume_from
DataPath
必須

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

max_run_duration_seconds
int
必須

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

framework_version
str
必須

トレーニング コードの実行に使用される Chainer バージョン。 Chainer.get_supported_versions() は、現在の SDK でサポートされているバージョンのリストを返します。

_enable_optimized_mode
bool
必須

事前構築済みのフレームワーク イメージを使用して増分環境ビルドを有効にして、環境の準備を高速化します。 事前構築済みのフレームワーク イメージは、フレームワークの依存関係がプレインストールされた Azure ML の既定の CPU/GPU ベース イメージの上に構築されます。

_disable_validation
bool
必須

送信を実行する前にスクリプトの検証を無効にします。 既定値は True です。

_show_lint_warnings
bool
必須

スクリプトリンティングの警告を表示します。 既定値は False です。

_show_package_warnings
bool
必須

パッケージ検証の警告を表示します。 既定値は False です。

注釈

トレーニング ジョブを送信すると、Azure ML によって、Azure ML Docker コンテナー内の conda 環境でスクリプトが実行されます。 Chainer コンテナーには、次の依存関係がインストールされています。

依存関係 | Chainer 5.1.0 | Chainer 7.0.0 | —————————- | —————– | ————— | Python | 3.6.2 | 3.6.2 | CUDA (GPU イメージのみ) | 9.0 | 9.0 | cuDNN (GPU イメージのみ) | 7.6.3 | 7.6.3 | NCCL (GPU イメージのみ) | 2.4.8 | 2.4.8 | azureml-defaults | 最新 | 最新 | IntelMpi | 2018.3.222 | 2018.3.222 | horovod | 0.15.2 | 0.15.2 | miniconda | 4.5.11 | 4.5.11 | chainer | 5.1.0 | 7.0.0 | cupy-cuda90 (GPU イメージのみ) | 5.2.0 | 7.0.0 | git | 2.7.4 | 2.7.4 |

Docker イメージにより、Ubuntu 16.04 が拡張されます。

追加の依存関係をインストールするには、pip_packages または conda_packages パラメーターを使用できます。 あるいは、pip_requirements_file または conda_dependencies_file パラメーターを指定できます。 また、独自のイメージをビルドし、custom_docker_image パラメーターを推定器コンストラクターに渡すこともできます。

Chainer トレーニングで使用される Docker コンテナーの詳細については、https://github.com/Azure/AzureML-Containers を参照してください。

属性

DEFAULT_VERSION

DEFAULT_VERSION = '5.1.0'

FRAMEWORK_NAME

FRAMEWORK_NAME = 'Chainer'