OutputPortBinding クラス
パイプライン ステップの名前付き出力を定義します。
OutputPortBinding を使用して、ステップによって生成されるデータの種類とデータの生成方法を指定できます。 InputPortBindingと共に使用して、ステップ出力が別のステップの必須入力であることを指定できます。
OutputPortBinding を初期化します。
コンストラクター
OutputPortBinding(name, datastore=None, output_name=None, bind_mode='mount', path_on_compute=None, is_directory=None, overwrite=None, data_type=None, pipeline_output_name=None, training_output=None, dataset_registration=None, dataset_output=None)
パラメーター
名前 | 説明 |
---|---|
name
必須
|
OutputPortBinding オブジェクトの名前。文字、数字、アンダースコアのみを含めることができます。 |
datastore
|
PipelineData が存在するデータストア。 規定値: None
|
output_name
|
None 名が使用されている場合は、出力の名前。 文字、数字、アンダースコアのみを含めることができます。 規定値: None
|
bind_mode
|
生成ステップでデータにアクセスするために "upload" メソッドまたは "mount" メソッドまたは "hdfs" メソッドのどちらを使用するかを指定します。 規定値: mount
|
path_on_compute
|
"upload" モードの場合、モジュールが出力を書き込むパス。 規定値: None
|
is_directory
|
出力がディレクトリか単一ファイルか。 規定値: None
|
overwrite
|
"アップロード" モードの場合、既存のデータを上書きするかどうか。 規定値: None
|
data_type
|
省略可。 データ型を使用して、出力の予想される型を指定し、使用する手順でデータを使用する方法を詳しく説明できます。 任意のユーザー定義文字列を指定できます。 規定値: None
|
pipeline_output_name
|
指定された場合、この出力は PipelineRun.get_pipeline_output() を使用して使用できます。 パイプラインの出力名は、パイプライン内で一意である必要があります。 規定値: None
|
training_output
|
トレーニング結果の出力を定義します。 これは、メトリックやモデルなど、さまざまな種類の出力が生成される特定のトレーニングにのみ必要です。 たとえば、 AutoMLStep 結果はメトリックとモデルになります。 また、最適なモデルを取得するために使用される特定のトレーニング イテレーションまたはメトリックを定義することもできます。 HyperDriveStepでは、出力に含める特定のモデル ファイルを定義することもできます。 規定値: None
|
dataset_registration
|
省略可。 これは内部パラメーターです。 代わりにPipelineData.as_datasetを使用する必要があります。 規定値: None
|
dataset_output
|
省略可。 これは内部パラメーターです。 OutputFileDatasetConfig intead を使用している必要があります。 規定値: None
|
name
必須
|
OutputPortBinding オブジェクトの名前。文字、数字、アンダースコアのみを含めることができます。 |
datastore
必須
|
PipelineData が存在するデータストア。 |
output_name
必須
|
None 名が使用されている場合は、出力の名前。 文字、数字、アンダースコアのみを含めることができます。 |
bind_mode
必須
|
生成ステップでデータにアクセスするために "upload" メソッドまたは "mount" メソッドまたは "hdfs" メソッドのどちらを使用するかを指定します。 |
path_on_compute
必須
|
"upload" モードの場合、モジュールが出力を書き込むパス。 |
is_directory
必須
|
出力がディレクトリの場合 |
overwrite
必須
|
"アップロード" モードの場合、既存のデータを上書きするかどうか。 |
data_type
必須
|
省略可。 データ型を使用して、出力の予想される型を指定し、使用する手順でデータを使用する方法を詳しく説明できます。 任意のユーザー定義文字列を指定できます。 |
pipeline_output_name
必須
|
指定された場合、この出力は PipelineRun.get_pipeline_output() を使用して使用できます。 パイプラインの出力名は、パイプライン内で一意である必要があります。 |
training_output
必須
|
トレーニング結果の出力を定義します。 これは、メトリックやモデルなど、さまざまな種類の出力が生成される特定のトレーニングにのみ必要です。 たとえば、 AutoMLStep 結果はメトリックとモデルになります。 また、最適なモデルを取得するために使用される特定のトレーニング イテレーションまたはメトリックを定義することもできます。 HyperDriveStepでは、出力に含める特定のモデル ファイルを定義することもできます。 |
dataset_registration
必須
|
省略可。 これは内部パラメーターです。 代わりにPipelineData.as_datasetを使用する必要があります。 |
dataset_output
必須
|
省略可。 これは内部パラメーターです。 OutputFileDatasetConfig intead を使用している必要があります。 |
注釈
OutputPortBinding は、パイプラインを構築してステップの入力と出力を指定する際の PipelineData と同様の方法で使用できます。 違いは、OutputPortBinding を別のステップへの入力として使用するために、 InputPortBinding で使用する必要がある点です。
OutputPortBinding を使用してパイプラインを構築する例を次に示します。
from azureml.pipeline.core import OutputPortBinding, InputPortBinding, Pipeline
from azureml.pipeline.steps import PythonScriptStep
step_1_output = OutputPortBinding("output", datastore=datastore)
step_1 = PythonScriptStep(
name='process data',
script_name="process_data.py",
compute_target=compute,
arguments=["--output", step_1_output],
outputs=[step_1_output]
)
step_2_input = InputPortBinding("input", bind_object=step_1_output)
step_2 = PythonScriptStep(
name='train',
script_name="train.py",
compute_target=compute,
arguments=["--input", step_2_input],
inputs=[step_2_input]
)
pipeline = Pipeline(workspace=workspace, steps=[step_1, step_2])
これにより、2 つの手順でパイプラインが作成されます。 プロセス ステップが最初に実行され、完了した後、トレーニング ステップが実行されます。 Azure ML は、OutputPortBinding オブジェクトの説明に従って、プロセス ステップによって生成された出力をトレーニング ステップに提供します。
属性
bind_mode
data_type
dataset_registration
datastore
PipelineData が存在するデータストア。
戻り値
型 | 説明 |
---|---|
データストア オブジェクト。 |