Vertex AI Experiments の概要

Vertex AI Experiments は、さまざまなモデル アーキテクチャ、ハイパーパラメータ、トレーニング環境を追跡および分析し、テストの実行の手順、入力、出力を追跡する際に役立つツールです。Vertex AI Experiments では、テスト データセットに対して、トレーニングの実行中に、モデルの集計のパフォーマンスを評価することもできます。この情報を使用して、特定のユースケースに最適なモデルを選択できます。

テストの実行に追加料金はかかりません。Vertex AI の料金で説明されているように、テスト中に使用するリソースに対してのみ課金されます。

実行する処理 ノートブックのサンプルを確認する
指標とパラメータを追跡する モデルを比較する
テストのリネージを追跡する モデルのトレーニング
パイプラインの実行を追跡する パイプライン実行を比較する

手順、入力、出力を追跡する

Vertex AI Experiments では、以下を追跡できます。

  • テスト実行の手順。たとえば、前処理、トレーニング。
  • 入力。たとえば、アルゴリズム、パラメータ、データセット。
  • それらの手順の出力。たとえば、モデル、チェックポイント、指標。

その後、何がうまくいって、何がうまくいかなかったかを確認し、さらにテストのための手段を特定できます。

ユーザー ジャーニーの例については、以下をご覧ください。

モデルのパフォーマンスを分析する

Vertex AI Experiments によって、テスト データセットに対して、トレーニングの実行中に、モデルの集約のパフォーマンスを追跡および評価できます。この機能によって、モデルのパフォーマンス特性(特定のモデルが全体的にどの程度機能しているか、どこに障害があるか、モデルのどこが優れているか)を把握できます。

ユーザー ジャーニーの例については、以下をご覧ください。

モデルのパフォーマンスを比較する

Vertex AI Experiments によって、テスト実行全体で複数のモデルをグループ化して比較できます。各モデルには、独自に指定したパラメータ、モデリング手法、アーキテクチャ、入力があります。このアプローチは、最適なモデルを選択するうえで役立ちます。

ユーザー ジャーニーの例については、以下をご覧ください。

テストを検索します

Google Cloud コンソールには、テストの一元化ビュー、テスト実行のセクション横断的なビュー、各実行の詳細が表示されます。Vertex AI SDK for Python には、テスト、テスト実行、テスト実行パラメータ、指標、アーティファクトを使用するための API が用意されています。

Vertex AI Experiments は、Vertex ML Metadata とともに、テストで追跡されるアーティファクトを見つける手段を提供します。これにより、アーティファクトのリネージと、実行の手順で消費および生成されたアーティファクトをすばやく表示できます。

サポート範囲

Vertex AI Experiments では、Vertex AI カスタム トレーニング、Vertex AI Workbench ノートブック、Notebooks、およびほとんどの ML フレームワークにわたるすべての Python ML フレームワークを使用したモデルの開発がサポートされています。TensorFlow などの一部の ML フレームワークでは、Vertex AI Experiments がフレームワークへの緊密な統合を提供し、これがユーザー エクスペリエンスを自動化します。他の ML フレームワークの場合、Vertex AI Experiments では、使用できるフレームワーク ニュートラルな Vertex AI SDK for Python が提供されます。(TensorFlow、scikit-learn、PyTorch、XGBoost のビルド済みコンテナを参照。)

データモデルとコンセプト

Vertex AI Experiments はnVertex ML Metadataコンテキストであり、ここで、テストには、n 個のパイプライン実行に加えて、n 個のテスト実行が含まれます。テスト実行は、パラメータ、サマリー指標、時系列指標、PipelineJobArtifactExecution Vertex AI リソースからなります。オープンソースの TensorBoard のマネージド バージョンである Vertex AI TensorBoard は、時系列指標の保存に使用されます。パイプライン実行の実行とアーティファクトGoogle Cloud コンソールで表示できます。

Vertex AI Experiments の用語

テスト、テスト実行、パイプライン実行

テスト
  • テストは、ユーザーが入力アーティファクトやハイパーパラメータなどのさまざまな構成をグループとして調査できるパイプライン実行に加えて、一連の n 個のテスト実行を含むことができるコンテキストです。
テストを作成するをご覧ください。

テスト実行
  • テスト実行には、ユーザー定義の指標、パラメータ、実行、アーティファクト、Vertex リソース(たとえば、PipelineJob)を含めることができます。
テスト実行を作成して管理するをご覧ください。

パイプライン実行
  • 1 つ以上の Vertex PipelineJob を 1 つのテストに関連付けることができ、ここで、各 PipelineJob は単一の実行として表されます。このコンテキストで、実行のパラメータは PipelineJob のパラメータによって推定されます。指標は、その PipelineJob によって生成された system.Metric アーティファクトから推定されます。実行のアーティファクトは、その PipelineJob によって生成されたアーティファクトから推定されます。
1 つの ExperimentRun リソースに 1 つ以上の Vertex AI PipelineJob リソースを関連付けることができます。このコンテキストで、パラメータ、指標、アーティファクトは推定されません。

パイプラインをテストに関連付けるをご覧ください。

パラメータと指標

parameters
  • パラメータは、実行を構成し、実行の動作を調整して、実行の結果に影響を与えるキー付きの入力値です。例としては、学習率、ドロップアウト率、トレーニングの手順の数などがあります。

ログパラメータをご覧ください。

サマリー指標
  • サマリー指標はテスト実行の各指標キーの単一の値です。たとえば、テストのテスト精度は、トレーニング終了時にテスト データセットに対して計算された精度であり、単一の値のサマリー指標としてキャプチャできます。

ログのサマリー指標をご覧ください。

時系列指標
  • 時系列指標は長期的な指標値であり、ここで、各値は実行のトレーニング ルーチンの部分の手順を表します。時系列指標は Vertex AI TensorBoard に保存されます。Vertex AI Experiments には、Vertex TensorBoard リソースへの参照が保存されます。

時系列指標をログに記録するをご覧ください。

リソースタイプ

パイプライン ジョブ
  • パイプライン ジョブまたはパイプラインの実行は、Vertex AI API の PipelineJob リソースに対応しています。これは、ML パイプライン定義の実行インスタンスです。ML パイプライン定義は、入出力の依存関係で相互接続された一連の ML タスクとして定義されます。

artifact
  • アーティファクトは、機械学習ワークフローによって生成、使用される個別のエンティティまたはデータです。アーティファクトの例としては、データセット、モデル、入力ファイル、トレーニング ログなどがあります。

Vertex AI Experiments では、スキーマを使用してアーティファクトのタイプを定義できます。たとえば、サポートされているスキーマタイプには system.Datasetsystem.Modelsystem.Artifact があります。詳細については、システム スキーマをご覧ください。

ノートブックのチュートリアル

次のステップ