予測用の表形式ワークフロー

このドキュメントでは、予測用のパイプラインとコンポーネントの表形式ワークフローの概要について説明します。モデルをトレーニングする方法については、予測用の表形式ワークフローを使用してモデルをトレーニングするをご覧ください。

予測用の表形式ワークフローは、予測タスクの完全なパイプラインです。AutoML API に似ていますが、制御する対象と自動化する対象を選択できます。パイプライン全体を管理するのではなく、パイプライン内のすべてのステップをコントロールします。パイプラインについて、次のようなコントロールを行えます。

  • データの分割
  • 特徴量エンジニアリング
  • アーキテクチャの検索
  • モデルのトレーニング
  • モデルのアンサンブル

利点

予測用の表形式ワークフローには、次のような利点があります。

  • 最大 1 TB のサイズで、最大 200 列までの大規模なデータセットをサポートします。
  • アーキテクチャ タイプの検索スペースを制限するか、アーキテクチャ検索をスキップすることで、安定性を向上させ、トレーニング時間を短縮できます。
  • トレーニングとアーキテクチャ検索に使用するハードウェアを手動で選択して、トレーニングの速度を向上できます。
  • 一部のモデルのトレーニング方法では、アンサンブル サイズを変更することでモデルサイズを縮小し、レイテンシを改善できます。
  • 強力なパイプライン グラフ インターフェースで各コンポーネントを検査でき、変換されたデータテーブル、評価されたモデル アーキテクチャなど多くの詳細を確認できます。
  • パラメータやハードウェアのカスタマイズ、プロセス ステータスやログの表示など、各コンポーネントの柔軟性と透明性が拡大されています。

Vertex AI Pipelines での予測

予測用の表形式ワークフローは、Vertex AI Pipelines のマネージド インスタンスです。

Vertex AI Pipelines は、Kubeflow Pipelines を実行するサーバーレス サービスです。パイプラインを使用して、ML とデータ準備タスクを自動化し、モニタリングできます。パイプラインの各ステップは、パイプラインのワークフローの一部として実行されます。たとえば、パイプラインにはデータの分割、データタイプの変換、モデルのトレーニングなどのステップを含めることができます。ステップはパイプライン コンポーネントのインスタンスで、入力、出力、コンテナ イメージが含まれます。ステップの入力は、パイプラインの入力から設定することも、このパイプライン内の他のステップの出力に応じて設定することもできます。これらの依存関係は、パイプラインのワークフローを有向非巡回グラフとして定義します。

パイプラインとコンポーネントの概要

次の図は、予測用の表形式ワークフローのモデリング パイプラインを示しています。

予測用のパイプライン 

パイプラインは、次のコンポーネントで構成されます。

  1. feature-transform-engine: 特徴量エンジニアリングを実行します。詳細については、特徴量変換エンジンをご覧ください。
  2. training-configurator-and-validator: トレーニング構成を検証し、トレーニング メタデータを生成します。

    入力:

    • instance_schema: 予測データのデータ型を記述する、OpenAPI 仕様のインスタンス スキーマ。
    • dataset_stats: 生のデータセットを記述する統計。たとえば、dataset_stats はデータセット内の行数を返します。
    • training_schema: OpenAPI 仕様のトレーニング データスキーマで、トレーニング データのデータ型を記述します。
  3. split-materialized-data: 実体化されたデータをトレーニング セット、評価セット、テストセットに分割します。

    入力:

    • materialized_data: 実体化されたデータ。

    出力:

    • materialized_train_split: 実体化されたトレーニング分割。
    • materialized_eval_split: 実体化された評価分割。
    • materialized_test_split: 実体化されたテストセット。
  4. calculate-training-parameters-2: automl-forecasting-stage-1-tuner の予想される実行時間を計算します。

  5. get-hyperparameter-tuning-results - 省略可: アーキテクチャ検索をスキップするようにパイプラインを構成した場合は、前のパイプラインの実行によるハイパーパラメータの調整結果を読み込みます。

  6. モデル アーキテクチャの検索とハイパーパラメータの調整(automl-forecasting-stage-1-tuner)を行うか、以前のパイプライン実行のハイパーパラメータ チューニング結果(automl-forecasting-stage-2-tuner)を使用します。

    • アーキテクチャは、ハイパーパラメータの組によって定義されます。
    • これらのハイパーパラメータには、モデルタイプとモデル パラメータが含まれます。
    • 考慮されるモデルタイプは、ニューラル ネットワークとブーストツリーです。
    • モデルは、考慮される各アーキテクチャごとにトレーニングされます。

    入力:

    • materialized_train_split: 実体化されたトレーニング分割。
    • materialized_eval_split: 実体化された評価分割。
    • artifact - 前回のパイプライン実行によるハイパーパラメータ チューニングの結果。このアーティファクトは、アーキテクチャ検索をスキップするようにパイプラインを構成したときのみ、入力として使用されます。

    出力:

    • tuning_result_output: 調整の出力。
  7. get-prediction-image-uri-2: モデルタイプに基づいて、正しい予測画像の URI を生成します。

  8. automl-forecasting-ensemble-2: 最適なアーキテクチャをアンサンブルして、最終的なモデルを生成します。

    入力:

    • tuning_result_output: 調整の出力。

    出力:

    • unmanaged_container_model: 出力モデル。
  9. model-upload-2: モデルをアップロードします。

    入力:

    • unmanaged_container_model: 出力モデル。

    出力:

    • model: Vertex AI モデル。
  10. should_run_model_evaluation - 省略可: テストセットを使用して評価指標を計算します。

次のステップ