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 に変換したときに確認するといい
参考¶
- MLOps on GCP 入門 〜Vertex AI Pipelines 実践〜 - GMOインターネットグループ グループ研究開発本部
- Introduction to Vertex AI Pipelines | Google Cloud
- Vertex AI PipelinesのTips | フューチャー技術ブログ
- Vertex Pipelinesによる機械学習パイプラインの実行
- https://book.st-hakky.com/docs/data-science-vertex-ai-pipelines-tutorial/ これ動かしてみるの良いかも
- Vertex AIではじめるKubeflow Pipelines | DevelopersIO
- そうだ、Kubeflow Pipelinesでカスタムコンテナ利用と設定ファイルの記述をしよう | DevelopersIO
- vertex-ai-samples/notebooks at main · GoogleCloudPlatform/vertex-ai-samples · GitHub sample codes
- vertex-ai-samples/notebooks/official/pipelines/control_flow_kfp.ipynb at main · GoogleCloudPlatform/vertex-ai-samples · GitHub
- vertex-ai-samples/notebooks/official/pipelines/google_cloud_pipeline_components_model_train_upload_deploy.ipynb at main · GoogleCloudPlatform/vertex-ai-samples · GitHub
- vertex-ai-samples/notebooks/official/pipelines/pipelines_intro_kfp.ipynb at main · GoogleCloudPlatform/vertex-ai-samples · GitHub intro サクッと動かすには良さそう
- vertex-ai-samples/notebooks/community/ml_ops/stage3/README.md at main · GoogleCloudPlatform/vertex-ai-samples · GitHub pipelines のサンプル集
- Vertex AI pipelines - getting started - 1 - b.telligent サクッと動きそう
- Vertex AI Pipelines で ML パイプラインを組む時の Tips #機械学習 - Qiita tips
- Intro to Vertex Pipelines | Google Codelabs intro ちょっと重いかも
- Vertex Pipelines 一般提供のお知らせ | Google Cloud 公式ブログ pipelines 公式 blog
- Running custom model training on Vertex Pipelines | Google Codelabs カスタムモデルのサンプル。2 時間とかあれば良い感じ?
- パイプラインのビルド | Vertex AI | Google Cloud 公式 TFX パイプラインのサンプル
- https://medium.com/google-cloud/google-vertex-ai-the-easiest-way-to-run-ml-pipelines-3a41c5ed153 一通りの流れ
- Google Colab TFX sample code Google Colab
- vertex-ai-samples/notebooks/official/pipelines/google_cloud_pipeline_components_automl_images.ipynb at main · GoogleCloudPlatform/vertex-ai-samples · GitHub
- 自己流 Vertex AI Pipelines 開発プラクティス|Tatsuya Shirakawa 設計の tips
- Costom Job
- Vertex AI Pipelines の Tips よくまとまってる
- kfp artifact
- Vertex AI output-html-md
- Vertex AI Pipelines でローカルのコードを実行する例と with 句を使う例
- step by step 一通りの流れを step by step で説明してくれている