ScriptRunConfig クラス
- 継承
-
azureml._logging.chained_identity.ChainedIdentityScriptRunConfig
コンストラクター
ScriptRunConfig(source_directory, script=None, arguments=None, run_config=None, _telemetry_values=None, compute_target=None, environment=None, distributed_job_config=None, resume_from=None, max_run_duration_seconds=2592000, command=None, docker_runtime_config=None)
パラメーター
名前 | 説明 |
---|---|
source_directory
必須
|
実行に必要なコード ファイルを含むローカル ディレクトリ。 |
script
必須
|
実行するスクリプトの source_directory を基準とした相対ファイルパス。 |
arguments
必須
|
トレーニング スクリプトに渡すオプションのコマンドライン引数。 引数はペアで渡します。例: ['–arg1', arg1_val, '–arg2', arg2_val]。 |
run_config
必須
|
使用する省略可能な実行構成。 |
_telemetry_values
必須
|
内部使用のみです。 |
compute_target
必須
|
トレーニングが発生するコンピューティング先。 ComputeTarget オブジェクト、既存の ComputeTarget の名前、文字列 "local" のいずれかを指定できます。 コンピューティング先が指定されていない場合は、ローカル マシンが使用されます。 |
environment
必須
|
実行に使用する環境。 環境が指定されていない場合は、実行の Docker イメージとして azureml.core.runconfig.DEFAULT_CPU_IMAGE が使用されます。 |
distributed_job_config
必須
|
追加の分散ジョブ固有の構成を必要とするジョブの場合。 |
resume_from
必須
|
実験を再開する、チェックポイントまたはモデルのファイルが含まれている DataPath。 |
max_run_duration_seconds
必須
|
実行の最大許容時間。 この値よりも時間がかかった場合、システムによって自動的に実行のキャンセルが試みられます。 :type max_run_duration_seconds: int |
command
必須
|
実行のために送信するコマンド。 コマンド プロパティは、スクリプト/引数の代わりに使用することもできます。 コマンドとスクリプト/引数の両方のプロパティを一緒に使用して実行を送信することはできません。 コマンド プロパティを使用してスクリプト ファイルを送信する場合 - ['python', 'train.py', '–arg1', arg1_val]。実際のコマンドを実行する場合 - ['ls'] |
docker_runtime_config
必須
|
Docker ランタイム固有の構成を必要とするジョブの場合。 |
source_directory
必須
|
実行に必要なコード ファイルを含むローカル ディレクトリ。 |
script
必須
|
実行するスクリプトの source_directory を基準とした相対ファイルパス。 |
arguments
必須
|
トレーニング スクリプトに渡すオプションのコマンドライン引数。 引数はペアで渡します。例: ['–arg1', arg1_val, '–arg2', arg2_val]。 |
run_config
必須
|
使用する省略可能な実行構成。 |
_telemetry_values
必須
|
内部使用のみです。 |
compute_target
必須
|
トレーニングが発生するコンピューティング先。 ComputeTarget オブジェクト、既存の ComputeTarget の名前、文字列 "local" のいずれかを指定できます。 コンピューティング先が指定されていない場合は、ローカル マシンが使用されます。 |
environment
必須
|
実行に使用する環境。 環境が指定されていない場合は、実行の Docker イメージとして azureml.core.runconfig.DEFAULT_CPU_IMAGE が使用されます。 |
distributed_job_config
必須
|
追加の分散ジョブ固有の構成を必要とするジョブの場合。 |
resume_from
必須
|
実験を再開する、チェックポイントまたはモデルのファイルが含まれている DataPath。 |
max_run_duration_seconds
必須
|
実行の最大許容時間。 この値よりも時間がかかった場合、システムによって自動的に実行のキャンセルが試みられます。 |
command
必須
|
実行のために送信するコマンド。 コマンド プロパティは、スクリプト/引数の代わりに使用することもできます。 コマンドとスクリプト/引数の両方のプロパティを一緒に使用して実行を送信することはできません。 コマンド プロパティを使用してスクリプト ファイルを送信する場合 - ['python', 'train.py', '–arg1', arg1_val]。実際のコマンドを実行する場合 - ['ls'] |
docker_runtime_config
必須
|
Docker ランタイム固有の構成を必要とするジョブの場合。 |
注釈
Azure Machine Learning SDK には、一連の相互接続されたクラスが付属しています。これらは、解決している共有問題により関係付けられた機械学習モデルのトレーニングと比較に役立ちます。
Experiment は、これらのトレーニング実行の論理コンテナーとして機能します。 ScriptRunConfig オブジェクトは、トレーニングの実行を実験の一部として送信するのに必要な情報を構成するために使用されます。 ScriptRunConfig オブジェクトを使用して実行が送信されると、submit メソッドによって ScriptRun 型のオブジェクトが返されます。 返された ScriptRun オブジェクトを使用すると、トレーニング実行に関する情報へのプログラムによるアクセスが可能になります。 ScriptRun は、Run の子クラスです。
注意すべき重要な概念は、トリガーする実行の種類に基づいて、実験の送信に使用される構成オブジェクトが異なることです。 次に、構成オブジェクトの型によって、submit メソッドから返される実行の子クラスが通知されます。 実験の submit メソッドの呼び出しで ScriptRunConfig オブジェクトを渡すと、ScriptRun オブジェクトが返されます。 返されるその他の実行オブジェクトの例としては、AutoMLRun (AutoML 実行の場合に返される) および PipelineRun (パイプライン実行の場合に返される) があります。
次の例は、ローカル コンピューターでトレーニング スクリプトを送信する方法を示しています。
from azureml.core import ScriptRunConfig, Experiment
# create or load an experiment
experiment = Experiment(workspace, 'MyExperiment')
# create or retrieve a compute target
cluster = workspace.compute_targets['MyCluster']
# create or retrieve an environment
env = Environment.get(ws, name='MyEnvironment')
# configure and submit your training run
config = ScriptRunConfig(source_directory='.',
script='train.py',
arguments=['--arg1', arg1_val, '--arg2', arg2_val],
compute_target=cluster,
environment=env)
script_run = experiment.submit(config)
次の例は、スクリプトや引数の代わりにコマンド プロパティを使用して、クラスターでトレーニング スクリプトを送信する方法を示しています。
from azureml.core import ScriptRunConfig, Experiment
# create or load an experiment
experiment = Experiment(workspace, 'MyExperiment')
# create or retrieve a compute target
cluster = workspace.compute_targets['MyCluster']
# create or retrieve an environment
env = Environment.get(ws, name='MyEnvironment')
# configure and submit your training run
config = ScriptRunConfig(source_directory='.',
command=['python', 'train.py', '--arg1', arg1_val],
compute_target=cluster,
environment=env)
script_run = experiment.submit(config)
次のサンプルは、クラスターでコマンドを実行する方法を示しています。
from azureml.core import ScriptRunConfig, Experiment
# create or load an experiment
experiment = Experiment(workspace, 'MyExperiment')
# create or retrieve a compute target
cluster = workspace.compute_targets['MyCluster']
# create or retrieve an environment
env = Environment.get(ws, name='MyEnvironment')
# configure and submit your training run
config = ScriptRunConfig(source_directory='.',
command=['ls', '-l'],
compute_target=cluster,
environment=env)
script_run = experiment.submit(config)
ScriptRunConfig の使用方法を示すその他の例については、以下を参照してください。
コンピューティング先を選択して使用し、モデルをトレーニングすることに関する記事
これらのトレーニング ノートブック
属性
MAX_DURATION_SECONDS_DEFAULT
MAX_DURATION_SECONDS_DEFAULT = 2592000