Share via


AutoMLStep クラス

自動 ML 実行をカプセル化する Azure ML パイプライン ステップを作成します。

AutoMLStep の使用例については、ノートブック https://aka.ms/pl-automl を参照してください。

AutoMLStep を初期化します。

継承
AutoMLStep

コンストラクター

AutoMLStep(name, automl_config, inputs=None, outputs=None, script_repl_params=None, allow_reuse=True, version=None, hash_paths=None, enable_default_model_output=True, enable_default_metrics_output=True, **kwargs)

パラメーター

name
str
必須

ステップの名前。

automl_config
AutoMLConfig
必須

この AutoML 実行の構成を定義する AutoMLConfig オブジェクト。

inputs
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData]]
既定値: None

入力ポート バインドのリスト。

outputs
list[Union[PipelineData, OutputPortBinding]]
既定値: None

出力ポート バインドのリスト。

script_repl_params
dict
既定値: None

スクリプト内で置換される省略可能なパラメーター。{'param1': 'value1'、'param2': 'value2'} など。

allow_reuse
bool
既定値: True

同じ設定で再実行されたときに、ステップで前の結果を再利用するかどうかを示します。

再利用は既定で有効になっています。 ステップの内容 (スクリプトや依存関係) だけでなく、入力とパラメーターも変更されていない場合は、このステップの前の実行からの出力が再利用されます。 ステップを再利用する場合、計算するジョブを送信する代わりに、前の実行の結果を後続のステップですぐに利用できるようにします。 Azure Machine Learning データセットを入力として使用する場合、再利用は、基になるデータが変更されたかどうかではなく、データセットの定義が変更されたかどうかによって決まります。

version
str
既定値: None

ステップに割り当てるバージョン。

hash_paths
list
既定値: None

非推奨。 パイプライン ステップの内容の変更を確認するときにハッシュするパスのリスト。

既定では、AutoMLConfig 内の path パラメーターの下にあるファイルが、path の下にある .amlignore または .gitignore にリストされているファイルを除いてすべてハッシュされます。 変更が検出されない場合は、パイプラインによって、前の実行のステップの内容が再利用されます。

enable_default_model_output
bool
既定値: True

最適なモデルが既定の出力として追加されるかどうかを示します。 これは、AutoMLStepRun クラスを使用して実行が完了した後に、最適なモデルを取得するために使用できます。 既定のモデルの出力が不要な場合は、このパラメーターを False に設定することをお勧めします。

enable_default_metrics_output
bool
既定値: True

すべての子の実行メトリックが既定の出力として追加されるかどうかを示します。 これは、AutoMLStepRun クラスを使用して実行が完了した後に、子の実行メトリックを取得するために使用できます。 既定のメトリックの出力が不要な場合は、このパラメーターを False に設定することをお勧めします。

name
str
必須

ステップの名前。

automl_config
AutoMLConfig
必須

この AutoML 実行の構成を定義する AutoMLConfig。

inputs
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData]]
必須

入力ポート バインドのリスト。

outputs
list[Union[PipelineData, OutputPortBinding]]
必須

出力ポート バインドのリスト。

script_repl_params
dict
必須

スクリプト内で置換される省略可能なパラメーター。{'param1': 'value1'、'param2': 'value2'} など。

script_repl_params
必須

スクリプトで置き換える省略可能なパラメーター。

allow_reuse
bool
必須

同じ設定で再実行されたときに、ステップで前の結果を再利用するかどうかを示します。

再利用は既定で有効になっています。 ステップの内容 (スクリプトや依存関係) だけでなく、入力とパラメーターも変更されていない場合は、このステップの前の実行からの出力が再利用されます。 ステップを再利用する場合、計算するジョブを送信する代わりに、前の実行の結果を後続のステップですぐに利用できるようにします。 Azure Machine Learning データセットを入力として使用する場合、再利用は、基になるデータが変更されたかどうかではなく、データセットの定義が変更されたかどうかによって決まります。

version
str
必須

ステップに割り当てるバージョン。

hash_paths
list
必須

非推奨。 パイプライン ステップの内容の変更を確認するときにハッシュするパスのリスト。

既定では、AutoMLConfig 内の path パラメーターの下にあるファイルが、path の下にある .amlignore または .gitignore にリストされているファイルを除いてすべてハッシュされます。 変更が検出されない場合は、パイプラインによって、前の実行のステップの内容が再利用されます。

enable_default_model_output
bool
必須

最適なモデルが既定の出力として追加されるかどうかを示します。 これは、AutoMLStepRun クラスを使用して実行が完了した後に、最適なモデルを取得するために使用できます。 既定のモデルの出力が不要な場合は、このパラメーターを False に設定することをお勧めします。

enable_default_metrics_output
bool
必須

すべての子の実行メトリックが既定の出力として追加されるかどうかを示します。 これは、AutoMLStepRun クラスを使用して実行が完了した後に、子の実行メトリックを取得するために使用できます。 既定のメトリックの出力が不要な場合は、このパラメーターを False に設定することをお勧めします。

注釈

AutoMLStep クラスを使用すると、Azure Machine Learning パイプライン内で、ご自身の自動 ML ワークフローを実行できます。 パイプラインによって、再現性、自動実行、バージョン管理と追跡、モジュール化などのメリットが、ご自身の ML ワークフローにもたらされます。 詳細については、「Azure Machine Learning パイプラインとは」を参照してください。

自動 ML ワークフローがパイプライン内にある場合は、パイプラインが時間ベースまたは変更ベースのスケジュールに基づいて実行されるように、スケジュール設定できます。 時間ベースのスケジュールは、データ ドリフトの監視などの日常的なタスクに有用です。一方、変更ベースのスケジュールは、データが変更された場合など、不規則または予測不可能な変更に有用です。 たとえば、スケジュールに従って、データがアップロードされている BLOB ストアをポーリングし、データが変更されたらパイプラインを再度実行して、実行が完了した後に新しいバージョンのモデルを登録することができます。 詳細については、機械学習パイプラインのスケジュールロジック アプリからの Machine Learning パイプラインの実行のトリガーに関する記事をご覧ください。

次の例は、AutoMLStep を作成する方法を示しています。


   automl_step = AutoMLStep(
       name='automl_module',
       automl_config=automl_config,
       outputs=[metrics_data, model_data],
       allow_reuse=True)

完全なサンプルは、https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb から入手できます

次の例は、Pipeline 内で AutoMLStep オブジェクトを使用する方法を示しています。


   from azureml.pipeline.core import Pipeline
   pipeline = Pipeline(
       description="pipeline_with_automlstep",
       workspace=ws,
       steps=[automl_step])

完全なサンプルは、https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb から入手できます

上の例は、パイプライン内の 1 ステップを示しています。 ただし、実際の自動 ML ワークフローで AutoMLStep を使用する場合は、AutoMLStep の前にデータ準備を実行するパイプライン ステップが少なくとも 1 つ、その後にモデルを登録する別のパイプライン ステップが必要になります。 この種類のワークフローの例については、ノートブック https://aka.ms/automl-retrain-pipeline を参照してください。

パイプラインの実行の管理、状態の検査、詳細の取得には、AutoMLStepRun クラスを使用します。

Azure での自動機械学習の詳細については、自動機械学習に関する記事をご覧ください。 パイプラインを使用せずに自動 ML 実験を設定する方法の詳細については、Python での自動 ML 実験の構成に関する記事をご覧ください。

メソッド

create_node

AutoML ステップからノードを作成し、指定されたグラフに追加します。

このメソッドは直接使用するためのものではありません。 このステップでパイプラインがインスタンス化されると、Azure ML は、ワークフローを表すパイプライン グラフにステップを追加できるように、このメソッドで必要なパラメーターを自動的に渡します。

create_node

AutoML ステップからノードを作成し、指定されたグラフに追加します。

このメソッドは直接使用するためのものではありません。 このステップでパイプラインがインスタンス化されると、Azure ML は、ワークフローを表すパイプライン グラフにステップを追加できるように、このメソッドで必要なパラメーターを自動的に渡します。

create_node(graph, default_datastore, context)

パラメーター

graph
Graph
必須

ノードを追加するグラフ オブジェクト。

default_datastore
Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
必須

既定のデータストア。

context
<xref:azureml.pipeline.core._GraphContext>
必須

グラフ コンテキスト。

戻り値

作成されたノード。

の戻り値の型 :

属性

AUTOML_CONFIG_PARAM_NAME

AUTOML_CONFIG_PARAM_NAME = 'AutoMLConfig'

DEFAULT_METRIC_PREFIX

DEFAULT_METRIC_PREFIX = 'default_metrics_'

DEFAULT_MODEL_PREFIX

DEFAULT_MODEL_PREFIX = 'default_model_'