コンテンツにスキップ

Vertex AI Pipelines を触ってみた

Vertex AI Pipelines とは

Vertex AI Pipelines は、Google Cloud のマネージド機械学習プラットフォームである Vertex AI で利用可能な機械学習パイプラインの構築と実行を容易にするサービス。Kubeflow Pipelines の機能をベースにしており、Kubernetes 上で動作する機械学習パイプラインの開発や実行に必要な機能を提供している。

Vertex AI Pipelines では、次のような機能が利用できる。

  • パイプラインの視覚化とデバッグ:パイプラインのステップをグラフィカルに表示し、パイプラインの実行時にデバッグできる
  • パラメータの調整:機械学習モデルのハイパーパラメータを調整し、モデルの精度を向上
  • データの前処理:データの前処理や変換を自動化し、機械学習モデルの品質を向上
  • 分散トレーニング:複数のワーカーノードで機械学習モデルをトレーニングし、トレーニング時間を短縮
  • モデルのデプロイメント:機械学習モデルのデプロイメントを容易に行い、実際のアプリケーションに統合
  • Python の関数もしくはコンテナベースでコンポーネントを記述する

さらに、Vertex AI Pipelines では、Kubeflow Pipelines に加えて、Google Cloud の機械学習サービスと統合するための機能も提供されています。たとえば、AutoML や BigQuery などの Google Cloud のサービスをパイプラインに組み込むことができる。

tips

コンポーネントの記述

Python の関数ベースで記述するときは@component(base_image=...のデコレータで実行するコンテナイメージを指定する。YAML ベースで記述するときはこちらが詳しい。

Output

生成したモデルや Dataset、レポート(Confusion Matrix や HTML、Markdown)などの出力ができる。この機能を使うとコンポーネントの結果を確認・共有しやすくなる。

使ってみた感想

  • kfp の 1 系、2 系で挙動が変わるので参考にするコードがどのバージョンで動いるか注意が必要
  • リージョンの指定に気を付ける。pipeline の yaml に変換したときに確認するといい

参考