このページでは、表形式データから Vertex AI データセットを作成して、予測モデルのトレーニングを開始する方法について説明します。データセットは、Google Cloud コンソールまたは Vertex AI API を使用して作成できます。
始める前に
表形式データから Vertex AI データセットを作成する前に、トレーニング データを準備する必要があります。
空のデータセットを作成して、準備したデータを関連付ける
予測の機械学習モデルを作成するには、最初に、トレーニングに使用する代表的なデータを収集する必要があります。Google Cloud コンソールまたは API を使用して、準備したデータをデータセットに関連付けます。
データセットを作成するときに、データセットをデータソースに関連付けます。トレーニング データは、Cloud Storage の CSV ファイルか、BigQuery のテーブルのいずれかです。データソースが別のプロジェクトにある場合は、必要な権限を設定する必要があります。
Google Cloud コンソール
- Google Cloud コンソールの [Vertex AI] セクションで、[データセット] ページに移動します。
- [作成] をクリックして [データセットを作成] の詳細ページを開きます。
- [データセット名] フィールドを変更して、わかりやすいデータセットの表示名を作成します。
- [表形式] タブを選択します。
- 予測目標を選択します。
- [リージョン] プルダウン リストからリージョンを選択します。
- [作成] をクリックして空のデータセットを作成し、[ソース] タブに進みます。
- データソースに基づいて、次のいずれかのオプションを選択します。
パソコン上の CSV ファイル
- [パソコンから CSV ファイルをアップロード] をクリックします。
- [ファイルを選択] をクリックし、Cloud Storage バケットにアップロードするすべてのローカル ファイルを選択します。
- [Cloud Storage パスの選択] セクションで、Cloud Storage バケットへのパスを入力するか、[参照] をクリックしてバケットのロケーションを選択します。
Cloud Storage の CSV ファイル
- [Cloud Storage から CSV ファイルを選択] をクリックします。
- [Cloud Storage から CSV ファイルを選択] セクションで、Cloud Storage バケットのパスを入力するか、[参照] をクリックして CSV ファイルのロケーションを選択します。
BigQuery のテーブルまたはビュー
- [テーブルまたはビューを BigQuery から選択] をクリックします。
- 入力ファイルのプロジェクト、データセット、テーブル ID を入力します。
- [続行] をクリックします。
データソースはデータセットに関連付けられます。
-
[分析] タブで、このデータセットのタイムスタンプ列と時系列の ID の列を指定します。
モデルをトレーニングするときにこれらの列を指定することもできますが、通常は予測データセットには特定の時刻と時系列 ID の列があるため、データセットで指定することをおすすめします。
API: CSV
REST
データセットを作成するには、datasets.create メソッドを使用します。
リクエストのデータを使用する前に、次のように置き換えます。
-
LOCATION: データセットが格納されるリージョン。これは、データセット リソースをサポートしているリージョンにする必要があります。例:
us-central1
。 - PROJECT: 実際のプロジェクト ID。
- DATASET_NAME: データセットの表示名。
-
METADATA_SCHEMA_URI: 目的のスキーマ ファイルの URI。
gs://google-cloud-aiplatform/schema/dataset/metadata/time_series_1.0.0.yaml
-
URI: トレーニング データを含む Cloud Storage バケットへのパス(URI)。複数指定することも可能です。各 URI の形式は次のとおりです。
gs://GCSprojectId/bucketName/fileName
- PROJECT_NUMBER: プロジェクトに自動生成されたプロジェクト番号。
HTTP メソッドと URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets
リクエストの本文(JSON):
{ "display_name": "DATASET_NAME", "metadata_schema_uri": "METADATA_SCHEMA_URI", "metadata": { "input_config": { "gcs_source": { "uri": [URI1, URI2, ...] } } } }
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets"
PowerShell
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateDatasetOperationMetadata", "genericMetadata": { "createTime": "2020-07-07T21:27:35.964882Z", "updateTime": "2020-07-07T21:27:35.964882Z" } }
Java
このサンプルを試す前に、Vertex AI クイックスタート: クライアント ライブラリの使用にある Java の設定手順を完了してください。詳細については、Vertex AI Java API のリファレンス ドキュメントをご覧ください。
Vertex AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Node.js
このサンプルを試す前に、Vertex AI クイックスタート: クライアント ライブラリの使用にある Node.js の設定手順を完了してください。詳細については、Vertex AI Node.js API のリファレンス ドキュメントをご覧ください。
Vertex AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Python
Vertex AI SDK for Python のインストールまたは更新の方法については、Vertex AI SDK for Python をインストールするをご覧ください。 詳細については、Python API リファレンス ドキュメントをご覧ください。
API: BigQuery
REST
データセットを作成するには、datasets.create メソッドを使用します。
リクエストのデータを使用する前に、次のように置き換えます。
-
LOCATION: データセットが格納されるリージョン。これは、データセット リソースをサポートしているリージョンにする必要があります。例:
us-central1
。 - PROJECT: 実際のプロジェクト ID。
- DATASET_NAME: データセットの表示名。
-
METADATA_SCHEMA_URI: 目的のスキーマ ファイルの URI。
gs://google-cloud-aiplatform/schema/dataset/metadata/time_series_1.0.0.yaml
-
URI: トレーニング データを含む BigQuery テーブルへのパス。フォームで次の操作を行います。
bq://bqprojectId.bqDatasetId.bqTableId
- PROJECT_NUMBER: プロジェクトに自動生成されたプロジェクト番号。
HTTP メソッドと URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets
リクエストの本文(JSON):
{ "display_name": "DATASET_NAME", "metadata_schema_uri": "METADATA_SCHEMA_URI", "metadata": { "input_config": { "bigquery_source" :{ "uri": "URI } } } }
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets"
PowerShell
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateDatasetOperationMetadata", "genericMetadata": { "createTime": "2020-07-07T21:27:35.964882Z", "updateTime": "2020-07-07T21:27:35.964882Z" } }
Java
このサンプルを試す前に、Vertex AI クイックスタート: クライアント ライブラリの使用にある Java の設定手順を完了してください。詳細については、Vertex AI Java API のリファレンス ドキュメントをご覧ください。
Vertex AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Node.js
このサンプルを試す前に、Vertex AI クイックスタート: クライアント ライブラリの使用にある Node.js の設定手順を完了してください。詳細については、Vertex AI Node.js API のリファレンス ドキュメントをご覧ください。
Vertex AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Python
Vertex AI SDK for Python のインストールまたは更新の方法については、Vertex AI SDK for Python をインストールするをご覧ください。 詳細については、Python API リファレンス ドキュメントをご覧ください。
オペレーションのステータスを取得する
一部のリクエストでは、完了までに長時間かかるオペレーションが実行されます。このようなリクエストではオペレーション名が返されます。そのオペレーション名を使用して、オペレーションのステータス確認やキャンセルを行うことができます。Vertex AI には、長時間実行オペレーションに対して呼び出しを行うためのヘルパー メソッドが用意されています。詳細については、長時間実行オペレーションによる作業をご覧ください。