メソッド: projects.locations.models.batchPredict

バッチ予測を実行します。オンライン models.predict と異なり、バッチ予測結果を即座にレスポンスで使用することはできません。代わりに、長時間実行オペレーション オブジェクトが返されます。ユーザーは、operations.get メソッドを使用してオペレーション結果を問い合わせることができます。オペレーションが完了すると、BatchPredictResultresponse フィールドで返されます。次の ML 問題に使用できます。

  • 動画分類

HTTP リクエスト

POST https://automl.googleapis.com/v1beta1/{name}:batchPredict

パスパラメータ

パラメータ
name

string

バッチ予測を行うためにリクエストするモデルの名前。

承認には、指定したリソース name に対する次の Google IAM 権限が必要です。

  • automl.models.predict

リクエストの本文

リクエストの本文には、次の構造のデータが含まれます。

JSON 表現

{
  "inputConfig": {
    object(BatchPredictionInputConfig)
  },
  "outputConfig": {
    object(BatchPredictionOutputConfig)
  },
  "params": {
    string: string,
    ...
  }
}
フィールド
inputConfig

object(BatchPredictionInputConfig)

必須。バッチ予測の入力構成。

outputConfig

object(BatchPredictionOutputConfig)

必須。出力予測の書き込み先を指定する構成。

params

map (key: string, value: string)

予測に対するドメイン固有の追加パラメータ。25,000 文字以下の文字列にする必要があります。

詳細については、動画へのアノテーション付けをご覧ください。

次のパラメータを指定できます。

score_threshold -(浮動小数点数)0.0~1.0 の値。モデルが動画の予測を行うと、ここで指定した信頼スコア以上の結果のみが生成されます。デフォルトは 0.5 です。

segment_classification -(ブール値)セグメント レベルの分類をリクエストするには、true に設定します。AutoML Video Intelligence は、ユーザーがリクエストの構成で指定した動画のセグメント全体のラベルとその信頼スコアを返します。デフォルトは「true」です。

shot_classification -(ブール値)ショットレベルの分類をリクエストするには、true に設定します。AutoML Video Intelligence は、ユーザーがリクエストの構成で指定した動画のセグメント全体で各カメラショットの境界を特定します。AutoML Video Intelligence は、検出されたショットごとのラベルとその信頼スコアとともに、ショットの開始時間と終了時間を返します。警告: この分類タイプでは、モデル評価は行われません。その品質はトレーニング データによって異なりますが、その品質を説明するための指標はありません。デフォルトは「false」です。

1s_interval -(ブール値)1 秒間隔で動画の分類をリクエストするには、true に設定します。AutoML Video Intelligence は、ユーザーがリクエストの構成で指定した動画のセグメント全体のラベルとその信頼スコアを 1 秒ごとに返します。警告: この分類タイプでは、モデル評価は行われません。その品質はトレーニング データによって異なりますが、その品質を説明するための指標はありません。デフォルトは「false」です。

"key": value ペアのリストが含まれるオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

レスポンスの本文

成功した場合、レスポンスの本文には Operation のインスタンスが含まれます。

承認スコープ

次の OAuth スコープが必要です。

  • https://www.googleapis.com/auth/cloud-platform

詳細については、認証の概要をご覧ください。

BatchPredictionInputConfig

batchPredict メソッドの入力構成。

入力ファイルの形式は、予測に使用されるモデルの ML 問題によって異なります。詳細については、ドキュメントの「データの準備」をご覧ください。入力 CSV ファイルは、gcsSource フィールドを使用して指定します。

形式は EBNF で表され、カンマはリテラルであり、このコメントの末尾付近に非終端記号が定義されます。形式は次のとおりです。

動画分類:

CSV ファイルの各行の形式は次のとおりです。

GCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END

  • GCS_FILE_PATH - 長さが最大 1 時間の動画への Google Cloud Storage パス。サポートされている拡張子は、.MOV、.MPEG4、.MP4、.AVI です。ffmpeg でサポートされているすべてのファイル形式もサポートされています。

  • TIME_SEGMENT_STARTTIME_SEGMENT_END - アノテーションを付ける動画のセグメントの開始時間と終了時間のタイムスタンプ。値は動画の長さの範囲内である必要があります。また、TIME_SEGMENT_ENDTIME_SEGMENT_START より後である必要があります。

例:

gs://folder/video1.mp4,10,40
gs://folder/video1.mp4,20,60
gs://folder/vid2.mov,0,inf

エラー: 指定された CSV ファイルのいずれも解析できない場合や一定の割合を超える CSV の行を処理できない場合、オペレーションは失敗し、予測は行われません。全体が成功したか失敗したかに関係なく、行ごとの失敗は、特定の上限数まで Operation.metadata.partial_failures にリストされます。

JSON 表現

{
  "gcsSource": {
    object(GcsSource)
  }
}
フィールド
gcsSource

object(GcsSource)

入力コンテンツの Google Cloud Storage 上の場所。

BatchPredictionOutputConfig

batchPredict メソッドの出力構成。

新しいディレクトリが、指定した gcsDestinationprediction-[model-display-name]-[timestamp-of-prediction-call] という名前で作成されます。タイムスタンプは YYYY-MM-DDThh:mm:ss.sssZ という ISO-8601 形式です。このディレクトリには、ML 予測オペレーションの結果が含まれています。

動画分類:

videoClassification.csv というファイルが出力ディレクトリに作成されます。この CSV ファイルは、アノテーション付きの動画ごとに出力が書き込まれた JSON ファイルです。つまり、video_classification_1.json、video_classification_2.json ... というように video_classification_N.json まで続きます。N は、入力から batchPredict リクエストまでの動画分類リクエストの数です。

videoClassification.csv のフィールドは次のとおりです。

GCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END,JSON_FILE_NAME,STATUS

  • GCS_FILE_PATHTIME_SEGMENT_STARTTIME_SEGMENT_END - batchPredict リクエストの入力 CSV ファイルにある各行の値。

  • JSON_FILE_NAME - 動画セグメントの予測レスポンスが含まれている出力ディレクトリ内の json ファイルの名前。

  • STATUS - 予測が正常に完了した場合は「OK」、それ以外の場合はエラー メッセージになります。エラー メッセージには、参照先の動画ファイルが存在しないか空であるといったエラーの理由が示されます。

STATUS が「OK」の各 JSON 出力ファイルには、AnnotationPayload オブジェクトが json 形式でリストされています。これらは、videoClassification.csv 内でファイルが割り当てられている動画セグメントの予測です。すべての AnnotationPayload オブジェクトに videoClassification フィールドが設定され、各オブジェクトは videoClassification.type フィールドで並べ替えられます。

JSON 表現

{
  "gcsDestination": {
    object(GcsDestination)
  }
}
フィールド
gcsDestination

object(GcsDestination)

出力を書き込む必要があるディレクトリの Google Cloud Storage の場所。