Vertex AIとは

Google Cloudが開発した機械学習プラットフォーム
ひとつのプラットフォーム上でデータセット作成、モデル作成、デプロイ、管理、運用を一貫して行える

何がすごい?

運用難易度が低い

専門知識のレベルやデータのタイプを問わずに利用可能
他の競合プラットフォームに比べ、
モデルのトレーニングに必要なコードの行数をおよそ80%少なくできるらしい

ワークフロー管理の支援機能を搭載

モデルに利用するためのデータの確保や分析、モデルの訓練、
そして訓練結果の評価に至るまでを実行する役割を果たし、
サービス実装へとスムーズに運ぶようPipelineを構築できる

将来性

エンジニアやデータサイエンティストの創造性確保

AI開発や運用を実施する場合、ただ研究を行うだけでなく、新たなツールに順応するための時間やワークフロー管理の負担、実用性のあるAIへと昇華するための技術投下などが必要になってくる
これらの業務をVertex AIが軽減し、エンジニアやデータサイエンティストは創造性の高い業務に集中できる

次世代AI技術の実用化

AI研究開発の多くは実用段階ではない技術へのリソース投下にとどまっており、
実験段階でとどまっている技術が無数に存在している
Vertex AIは既存のAI開発における課題を解消し、
AI運用のサイクルが加速することで、必然的により高度なAI技術の登場を促す事となる

様々なMLOpsツール

多くのMLサービスが内包されており、全て1つのプラットフォームに統合されている。

ツールの代表例

名称 概要
AutoML トレーニングルーティンを作成せずに、高品質のカスタム機械学習モデルを簡単に開発
Vertex AI Workbench ML のテストやデプロイ、監視など、様々な作業を1つの環境で完結
Vertex Pipelines TensorFlow ExtendedとKubeflow Pipelines を使用したパイプライン構築
Vertex AI Training カスタムコードを使用したモデルのトレーニング

チュートリアルで実際にAuto MLを体験してみる

Google Cloud公式から提供されているAuto MLがあったので、
チュートリアルに沿ってAuto MLを体験してみました。
様々なデータパターン(表形式、動画、テキスト)のチュートリアルが用意されていましたが、
今回はラベリングされた様々な花の画像データを用いて一連の流れを実施してみます。

データセットを作成して画像のインポート

1. コンソールからVertex AIのダッシュボードに移動する

2.左サイドバーのデータセットタブを押下し、データセットを作成ボタンを押下する
※リージョンはus-central1(アイオワ)を選択

3. 画像分類(単一ラベル)を選択し作成を押下

4. インポートファイルをクラウドストレージから選択 を選びURLに以下を入力

cloud-samples-data/ai-platform/flowers/flowers.csv

※インポートに時間がかかるのでしばし待つ必要あり(私の環境では30分程度)

画像分類モデルのトレーニングを行う

1. サイドバーからデータセットを選択し、参照タブを押下する事でインポートした画像の確認を行う
※エラーメッセージが表示されるが、チュートリアルのデータは必ず表示されるらしいので気にしない

2. 参照タブで新しいモデルのトレーニングを押下する

3. デプロイ場所をCloudに選択し、続行を押下する

4. Budgetを8に設定し、トレーニングを実行する

※ここから料金が発生するので、下記の料金表を見てどのくらい金額が発生するかは要確認

5. トレーニングが完了したらメールで通知される

トレーニングしたモデルをデプロイする

1. デプロイとテストタブを押下してデプロイ設定画面に移動

2. エンドポイントにデプロイを押下、エンドポイント名を任意に設定し続行を選択

3. トラフィック分割に100、ノード数を1に設定しデプロイを完了させる
※デプロイにも30分程度時間がかかる

トレーニングモデルのテスト

デプロイしたモデルに対して、ネットで探した花の画像を送信し分類できるか確認します。

向日葵の画像

sunflowersで判定されてます

チューリップの画像

tulipsで判定されてます

たんぽぽの画像

dandelionで判定されてます

薔薇の画像

rosesで判定されてます

猫の画像

モデルが対応できておらず、数値がばらけてます
学習させた画像の種類がもっと多ければ、似たような色の花を予測したかもしれません

プロジェクトのクリーンアップ

チュートリアルで利用したモデルを残しておくと料金が発生し続けるので、後片付けを実施する

1. エンドポイントを削除する

2. モデルを削除する

3. データセットを削除する

4. Cloud Storageのバケットを作成する

感想

モデルの作成からトレーニング、デプロイまでをGUIで簡単に操作できるので
私のような機械学習初心者でもすぐに実践できました。

良かったところ

  • ノーコードで簡単に機械学習がデプロイできる

気になったところ

  • プロジェクトのクリーンアップが少し面倒。GUIで一気に削除できて欲しい
    • 削除し忘れが気になる
  • 料金が発生する
    • 今回は約3000円程度でしたが、モデルの精度を上げる場合は更に課金する必要あり