コンソールから直接、またはプログラムでトレーニング パイプラインを作成することによって、API や、Vertex AI クライアント ライブラリの 1 つを使用して AutoML モデルを作成します。
このモデルは、コンソールまたは API から提供される準備済みのデータセットを使用して作成されます。Vertex AI API は、データセットの項目を使用してモデルのトレーニングとテストを行い、モデルのパフォーマンスを評価します。評価結果を確認して、必要に応じてトレーニング データセットを調整し、改善されたデータセットで新しいトレーニング パイプラインを作成します。
モデルのトレーニングが完了するまで数時間かかることがあります。Vertex AI API を使用すると、トレーニングのステータスを取得できます。
AutoML Edge トレーニング パイプラインを作成する
代表的なトレーニング アイテムのセットを含むデータセットを用意したら、AutoML Edge トレーニング パイプラインを作成します。
データタイプを選択します。
画像
目標に応じて以下のタブを選択してください。
分類
トレーニング時に、特定のユースケースで必要な AutoML Edge モデルのタイプを選択できます。
- 低レイテンシ(
MOBILE_TF_LOW_LATENCY_1
) - 一般的な用途(
MOBILE_TF_VERSATILE_1
) - 予測品質の向上(
MOBILE_TF_HIGH_ACCURACY_1
)
お使いの言語または環境に応じて、以下のタブを選択してください。
REST とコマンドライン
リクエストのデータを使用する前に、次のように置き換えます。
- LOCATION: データセットが配置され、モデルが作成されるリージョン。例:
us-central1
- PROJECT: プロジェクト ID。
- TRAININGPIPELINE_DISPLAYNAME: 必須。trainingPipeline の表示名。
- DATASET_ID: トレーニングに使用するデータセットの ID 番号。
- fractionSplit: 省略可。ML が使用する可能性のあるデータ分割オプションの 1 つ。
fractionSplit
の場合、値の合計 1 でなければなりません。例:-
{"trainingFraction": "0.7","validationFraction": "0.15","testFraction": "0.15"}
-
- MODEL_DISPLAYNAME*: TrainingPipeline によってアップロード(作成)されたモデルの表示名。
- MODEL_DESCRIPTION*: モデルの説明。
- modelToUpload.labels*: モデルを整理するための任意の Key-Value ペアのセット。例:
- "env": "prod"
- tier: backend
- EDGE_MODELTYPE†: トレーニングする Edge モデルのタイプ。次のオプションがあります。
MOBILE_TF_LOW_LATENCY_1
MOBILE_TF_VERSATILE_1
MOBILE_TF_HIGH_ACCURACY_1
- NODE_HOUR_BUDGET†: 実際のトレーニング料金はこの値以下になります。Edge モデルでは、予算は 1,000~100,000 ミリノード時間(上限、下限を含む)にする必要があります。
- PROJECT_NUMBER: プロジェクトのプロジェクト番号。
* | trainingTaskDefinition で指定したスキーマ ファイルの説明により、このフィールドの使用方法が記述されます。 |
† | trainingTaskDefinition で指定したスキーマ ファイルにより、このフィールドが宣言および記述されます。 |
HTTP メソッドと URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/trainingPipelines
JSON 本文のリクエスト:
{ "displayName": "TRAININGPIPELINE_DISPLAYNAME", "inputDataConfig": { "datasetId": "DATASET_ID", "fractionSplit": { "trainingFraction": "DECIMAL", "validationFraction": "DECIMAL", "testFraction": "DECIMAL" } }, "modelToUpload": { "displayName": "MODEL_DISPLAYNAME", "description": "MODEL_DESCRIPTION", "labels": { "KEY": "VALUE" } }, "trainingTaskDefinition": "gs://google-cloud-aiplatform/schema/trainingjob/definition/automl_image_classification_1.0.0.yaml", "trainingTaskInputs": { "multiLabel": "false", "modelType": ["EDGE_MODELTYPE"], "budgetMilliNodeHours": NODE_HOUR_BUDGET } }
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/trainingPipelines"
PowerShell
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth application-default 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/trainingPipelines" | Select-Object -Expand Content
レスポンスには、仕様と TRAININGPIPELINE_ID に関する情報が含まれています。