チェックポイント
Create the vertex AI notebook instance
/ 20
Download the challenge Notebook
/ 20
Import dataset
/ 20
Build and train model
/ 10
Create artifact registry for custom container images
/ 20
Define a pipeline using the KFP SDK
/ 10
Vertex AI を使用した ML ソリューションの構築とデプロイ: チャレンジラボ
GSP354
概要
チャレンジラボでは、シナリオと一連のタスクが提供されます。手順ガイドに沿って進める形式ではなく、コース内のラボで習得したスキルを駆使して、ご自身でタスクを完了していただきます。タスクが適切に完了したかどうかは、このページに表示される自動スコアリング システムで確認できます。
チャレンジラボは、Google Cloud の新しいコンセプトについて学習するためのものではありません。デフォルト値を変更する、エラー メッセージを読み調査を行ってミスを修正するなど、習得したスキルを応用する能力が求められます。
100% のスコアを達成するには、制限時間内に全タスクを完了する必要があります。
このラボは、「Building Machine Learning Solutions with Vertex AI」クエストに登録している受講者を対象としています。準備が整ったらチャレンジを開始しましょう。
設定
[ラボを開始] ボタンをクリックする前に
こちらの手順をお読みください。ラボの時間は記録されており、一時停止することはできません。[ラボを開始] をクリックするとスタートするタイマーは、Google Cloud のリソースを利用できる時間を示しています。
このハンズオンラボでは、シミュレーションやデモ環境ではなく、実際のクラウド環境を使ってご自身でラボのアクティビティを行うことができます。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。
このラボを完了するためには、下記が必要です。
- 標準的なインターネット ブラウザ(Chrome を推奨)
- ラボを完了するために十分な時間を確保してください。ラボをいったん開始すると一時停止することはできません。
チャレンジ シナリオ
あなたは最近、映画レビュー ウェブサイトを運営するスタートアップ企業に機械学習エンジニアとして採用されました。上司から、ユーザーの映画レビューを肯定的か否定的かで分類するための機械学習モデルを構築するよう指示されました。これらの予測はダウンストリームの映画評価システムで入力として使用され、映画ウェブサイトのアプリケーションに上位の好意的なレビューと批判的なレビューをそれぞれ表示します。課題: ビジネス上の要件は、既存の独自ソリューションの改良として、75% を超える精度を達成するモデルを 6 週間以内に運用化することです。また、会社のデータ ウェアハウスで多少の探索的分析を行った結果、より高性能なソリューションを構築するのに、5 万件のテキスト レビューから成る小さなデータセットしか利用できないことがわかりました。
チャレンジ
高いパフォーマンスの機械学習モデルを限られたデータからすばやく構築してデプロイするために、Google Cloud の Vertex AI プラットフォームでオンライン予測を行えるよう、カスタムの TensorFlow BERT 感情分類器をトレーニングしてデプロイするプロセスを学習します。Vertex AI は Google Cloud の次世代の ML 開発プラットフォームであり、最新の事前構築済み ML コンポーネントと AutoML を活用しながら、開発の生産性、データによってワークフローや意思決定をスケーリングする能力、価値実現までの時間をそれぞれ大きく向上させることができます。
最初に、一般的なテスト ワークフローとして、TF-Hub および tf.keras
分類レイヤからの事前トレーニング済み BERT コンポーネントを基にモデルを構築し、Vertex ノートブックでモデルをトレーニングして評価します。次に、モデルのコードを Docker コンテナにパッケージ化して、Google Cloud の Vertex AI でトレーニングします。最後に、Vertex Pipelines で Kubeflow パイプラインを定義して実行することで、モデルをトレーニングし、オンライン予測のクエリを実行する Vertex Endpoint にデプロイします。
タスク 1. Vertex ノートブック インスタンスを作成する
-
[Vertex AI] > [ワークベンチ] > [インスタンス] に移動します。
-
新しいプロジェクトなので、インスタンスは表示されません。画面中央にある [新規作成] ボタンをクリックします。次のオプションを選択します。
- [名前]:
vertex-ai-challenge
- [リージョン]:
- [ゾーン]: デフォルト値
-
[
Workbench のタイプ
] で [インスタンス] を選択し、[続行] をクリックします。 -
[以前のバージョンを使用する] を選択します。[バージョン] プルダウンで [
workbench-instances-v20230717-debian-11-py310 (M109)
] を選択します。[続行] をクリックします。 -
[マシンタイプ] で [e2-standard-4] を選択します。[作成] をクリックします。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
タスク 2. Challenge Notebook をダウンロードする
-
ノートブックで [Terminal] をクリックします。
-
リポジトリのクローンを作成します。
- ラボに必要なパッケージをインストールします。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
-
ファイルが含まれる
training-data-analyst/quests/vertex-ai/vertex-challenge-lab
フォルダに移動します。 -
ノートブック ファイル
vertex-challenge-lab.ipynb
を開きます。使用するカーネルを尋ねられたら、[TensorFlow 2-11
] カーネルを選択します。 -
[設定] セクションで、
PROJECT_ID
、GCS_BUCKET
、USER
の各変数を定義します。
データセットのインポートと前処理に使用する残りのコードが、すべて提供されています。残りのステップはノートブック ファイル内にあります。進行状況やヒントを確認するには、このラボガイドを再び参照してください。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
タスク 3. Vertex ノートブックでモデルをローカルで構築してトレーニングする
このセクションでは、TensorFlow を使用してモデルをローカルでトレーニングします。
TensorFlow BERT 感情分類器を作成してコンパイルする
-
#TODO
セクションに、BERT テキストの前処理用のhub.KerasLayer
を追加するコードを記入します。 -
#TODO
セクションに、BERT テキストのエンコード用のhub.KerasLayer
を追加するコードを記入します。 -
#TODO
セクションに、BERT 感情分類器をローカルに保存するコードを記入します。保存先は./bert-sentiment-classifier-local
ディレクトリとします。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
タスク 4. Cloud Build を使用してモデルコンテナを構築し、Google Cloud Artifact Registry に送信する
カスタム コンテナ イメージ用の Artifact Registry を作成する
-
#TODO
セクションに、gcloud CLI を使用して Docker Artifact Registry を作成するコードを記入します。詳しくは、gcloud artifacts repositories create のドキュメントをご覧ください。
location
、repository-format
、description
の各フラグを指定してください。Cloud Build を使用してコンテナ イメージを構築し、Artifact Registry に送信する
-
#TODO
セクションに、Cloud Build を使用してカスタム モデルコンテナを構築し、Artifact Registry に送信するコードを記入します。詳しくは、gcloud builds submit のドキュメントをご覧ください。
{MODEL_DIR}/cloudbuild.yaml
を指定し、実際のモデル ディレクトリを含めてください。[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
タスク 5. KFP SDK を使用してパイプラインを定義する
-
#TODO
セクションに、上のセルで定義したCustomContainerTrainingJobOp
コンポーネントを追加して構成するコードを記入します。
CustomContainerTrainingJob
と同じになります。[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
タスク 6. Vertex エンドポイントでデプロイ済みモデルにオンライン予測のクエリを実行する
-
#TODO
セクションに、Vertex Endpoint でオンライン予測を生成するコードを記入します。
お疲れさまでした
これで完了です。このラボでは、Vertex AI を使用してカスタムの BERT 感情分類器を構築してデプロイする方法を学習しました。また、Cloud Build を使用してカスタムモデル コンテナを構築し、Artifact Registry に送信する方法、KFP SDK を使用してパイプラインを定義する方法も学習しました。これで、Vertex AI を使用して独自のカスタムモデルを構築し、デプロイする準備が整いました。
次のスキルバッジを獲得する
このセルフペース ラボは、「Building Machine Learning Solutions with Vertex AI」スキルバッジ クエストの一部です。修了すると成果が認められて上のようなバッジが贈られます。獲得したバッジを履歴書やソーシャル プラットフォームに記載し、#GoogleCloudBadge を使用して成果を公表しましょう。
このスキルバッジ クエストは、Google Cloud のデータ サイエンティスト / ML エンジニア向け学習プログラムの一部です。この学習プログラムの他のスキルバッジ クエストを修了済みの場合は、他の 20 科目以上の登録可能なスキルバッジ クエストをカタログから検索してみてください。
Google Cloud トレーニングと認定資格
Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。
マニュアルの最終更新日: 2023 年 11 月 11 日
ラボの最終テスト日: 2023 年 10 月 31 日
Copyright 2024 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。