Vertex AI TensorBoard を設定するには、以下の手順が必要です。
- 必要な権限を持つサービス アカウントを作成する。
- Vertex AI TensorBoard のログを保存する Cloud Storage バケットを作成する。
- Vertex AI TensorBoard インスタンスを作成する。
必要な権限を持つサービス アカウントを作成する
Vertex AI TensorBoard をカスタム トレーニングと統合するには、サービス アカウントが必要です。
サービス アカウントを作成します。
gcloud --project=PROJECT_ID iam service-accounts create USER_SA_NAME
次のように置き換えます。
PROJECT_ID
: サービス アカウントを作成するプロジェクトの ID。USER_SA_NAME
: 作成するサービス アカウントの一意の名前
新しいサービス アカウントは、Vertex AI Training サービスが Google Cloud サービスとリソースにアクセスするために使用されます。必要に応じて、次のコマンドを使用してこれらのロールを付与します。
SA_EMAIL="USER_SA_NAME@PROJECT_ID.iam.gserviceaccount.com" gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:${SA_EMAIL}" \ --role="roles/storage.admin" gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:${SA_EMAIL}" \ --role="roles/aiplatform.user"
Vertex AI TensorBoard のログを保存する Cloud Storage バケットを作成する
トレーニング スクリプトが生成する Vertex AI TensorBoard のログを保存するには、Cloud Storage バケットが必要です。バケットがマルチリージョンやデュアルリージョン以外のリージョンで、次のリソースが同じリージョンに存在している必要があります。
- Cloud Storage バケット
- Vertex AI Training ジョブ
- Vertex AI TensorBoard インスタンス
ここで説明するバケット作成手順に沿わなくても、既存のバケットを使用できます。既存のバケットを使用する場合、バケットのロケーションは、Vertex AI TensorBoard インスタンスが作成されたロケーションと同じであることが必要です。
GCS_BUCKET_NAME="PROJECT_ID-tensorboard-logs-LOCATION_ID"
gcloud storage buckets create "gs://${GCS_BUCKET_NAME}" --location=LOCATION_ID
LOCATION_ID は、Vertex AI TensorBoard インスタンスが作成されたロケーション(例: us-central1
)に置き換えます。
Vertex AI TensorBoard インスタンスを作成する
テストを可視化する前に、Vertex AI TensorBoard のテストを保存するリージョン リソースとして Vertex AI TensorBoard インスタンスが存在する必要があります。2 つの選択肢があります。デフォルトのインスタンスを使用することも、手動で作成することもできます。1 つのプロジェクトとリージョン内に複数のインスタンスを作成できますが、ほとんどのユーザーは 1 つのインスタンスのみが必要です。
デフォルトの Vertex AI TensorBoard インスタンスを使用する
Vertex AI Experiments を初期化すると、デフォルトの TensorBoard インスタンスが自動的に作成されます。このバッキング TensorBoard は Vertex AI Experiments に関連付けられており、後続のすべての Vertex AI Experiments の実行で使用されます。tensorboard_resource_name
はテストから直接取得できます。これは Vertex AI TensorBoard の使用を開始する最も簡単な方法であり、ほとんどのユーザーの要望にかなうはずです。
Vertex AI SDK for Python
デフォルト インスタンスで Vertex AI SDK for Python を使用して Vertex AI TensorBoard テストを作成します。テストから tensorboard_resource_name
を取得します。Vertex AI SDK リファレンス ドキュメントの init と Experiment をご覧ください。
Python
experiment_name
: テストの名前。experiment_description
: テストの説明。project
: TensorBoard インスタンスを作成するプロジェクトのPROJECT_ID
。location
: TensorBoard インスタンスを作成するロケーション。Vertex AI TensorBoard のロケーションはリージョンです。Vertex AI TensorBoard をサポートするリージョンを選択してください。
Vertex AI TensorBoard インスタンスを手動で作成する
Vertex AI TensorBoard は手動で作成できます。これは、Google Cloud コンソールに慣れているユーザー、CMEK 対応の TensorBoard を必要とするユーザー(CMEK を参照)、複数の TensorBoard を使用するユーザーに役立ちます。このインスタンスは、Vertex AI Experiment の初期化、テスト実行の開始、トレーニング コードの構成時に直接指定できます。
Vertex AI SDK for Python
Vertex AI SDK for Python を使用して Vertex AI TensorBoard インスタンスを作成します。
Python
project
: TensorBoard インスタンスを作成するプロジェクトのPROJECT_ID
。display_name
: Vertex AI TensorBoard インスタンスのわかりやすい名前。location
: TensorBoard インスタンスを作成するロケーション。Vertex AI TensorBoard のロケーションはリージョンです。Vertex AI TensorBoard をサポートするリージョンを選択してください。
Google Cloud CLI
Google Cloud CLI を使用して Vertex AI TensorBoard インスタンスを作成します。
- gcloud CLI をインストールする
gcloud init
を実行して、Google Cloud CLI を初期化します。- コマンドでインストールを確認します。
gcloud ai tensorboards --help
コマンドには、create
、describe
、list
、update
、delete
があります。先に進む前に、必要に応じてこちらの手順に沿ってプロジェクトとロケーションのデフォルト値を設定します。
- gcloud CLI を認証します。
gcloud auth application-default login
- プロジェクト名と表示名を指定して Vertex AI TensorBoard インスタンスを作成します。プロジェクトで初めての場合は、この手順が完了するまでに数分かかることがあります。次のコマンドの最後に出力される Vertex AI TensorBoard インスタンス名(
projects/123/locations/us-central1/tensorboards/456
など)をメモします。これは、後のステップで必要になります。
gcloud ai tensorboards create --display-name DISPLAY_NAME \ --project PROJECT_NAME
次のように置き換えます。
PROJECT_NAME
: TensorBoard インスタンスを作成するプロジェクト。DISPLAY_NAME
: TensorBoard インスタンスのわかりやすい名前。
Google Cloud コンソール
Vertex AI TensorBoard のデータを暗号化する場合は、インスタンスの作成時に CMEK 鍵を有効にする必要があります。
Google Cloud コンソールを使用して Vertex AI TensorBoard CMEK の有効化されたインスタンスを作成する手順は次のとおりです。
- Vertex AI を初めて使う場合や新しいプロジェクトを開始する場合は、プロジェクトと開発環境を設定します。
- Google Cloud コンソールの [Vertex AI] セクションで、[テスト] ページに移動します。
[テスト] ページに移動 - [TensorBoard インスタンス] タブに移動します。
- ページの上部にある [作成] をクリックします。
- [リージョン] プルダウン リストからロケーションを選択します。
- (省略可)説明を追加します。
- (省略可)[暗号化] で [顧客管理の暗号鍵(CMEK)] を選択し、顧客管理鍵を選択します。
- [作成] をクリックして、TensorBoard インスタンスを作成します。
Terraform
次のサンプルでは、google_vertex_ai_tensorboard
Terraform リソースを使用して、暗号化されていない Vertex AI TensorBoard インスタンスを作成します。
Terraform 構成を適用または削除する方法については、基本的な Terraform コマンドをご覧ください。
Terraform
TensorBoard インスタンスを削除する
TensorBoard インスタンスを削除すると、その TensorBoard と、関連するすべての TensorBoard テストと TensorBoard 実行が削除されます。インスタンスが関連付けられている Vertex AI Experiments は削除されません。
Vertex AI Experiments とそれに関連付けられた Vertex AI TensorBoard テストを削除するには、テストを削除するをご覧ください。
Vertex AI SDK for Python
Vertex AI SDK for Python を使用して Vertex AI TensorBoard インスタンスを削除します。
Python
tensorboard_resource_name
: TensorBoard リソース名を指定します。project
: TensorBoard インスタンスが存在するPROJECT_ID
。location
: TensorBoard インスタンスが存在するロケーション。
Google Cloud コンソール
Google Cloud コンソールを使用して Vertex AI TensorBoard インスタンスを削除する手順は次のとおりです。
- Google Cloud コンソールの [Vertex AI] セクションで、[テスト] ページに移動します。
[テスト] ページに移動 - [TensorBoard インスタンス] タブを選択します。TensorBoard インスタンスのリストが表示されます。
- を選択し、[削除] をクリックします。
関連用語
これらの用語、「TensorBoard リソース名」、「TensorBoard インスタンス ID」は多くのサンプルで参照されます。
TensorBoard リソース名
TensorBoard リソース名は、Vertex AI TensorBoard インスタンスを完全に識別するために使用されます。形式は次のとおりです。
projects/PROJECT_ID_OR_NUMBER/locations/REGION/tensorboards/TENSORBOARD_INSTANCE_ID
TensorBoard リソース名は、gcloud CLI または Vertex AI SDK を使用して作成時にログメッセージに出力されるか、プレースホルダに適切な値を指定して作成できます。
Vertex AI SDK for Python
TensorBoard リソース名は、Vertex AI SDK を使用して Vertex AI Experiments から取得できます。
Python
experiment_name
: テストの名前。project
: テストのPROJECT_ID
。location
: テストが配置されている場所。
TensorBoard インスタンス ID
TensorBoard インスタンス ID は、生成され、TensorBoard インスタンスに関連付けられた ID 値です。TENSORBOARD_INSTANCE_ID
を確認するには、Google Cloud コンソールで [テスト] ページの [Vertex AI] セクションに移動し、[TensorBoard インスタンス] タブを選択します。
インスタンス ID は、TensorBoard リソース名から取得することもできます。