ターミナルマニフェストコンテンツエラー - Rekognition

ターミナルマニフェストコンテンツエラー

このトピックでは、マニフェストの概要で報告される 致命的マニフェストコンテンツエラーのリスト について説明します。マニフェストの概要には、検出された各エラーのエラーコードとメッセージが含まれます。詳細については「マニフェストの概要について」を参照してください。ターミナルマニフェストコンテンツにエラーがあっても、非致命的 JSON 行検証エラーのリスト の報告は停止されません。

ERROR_TOO_MANY_INVALID_ROWS_IN_MANIFEST

エラーメッセージ

マニフェストファイルに無効な行が多すぎます。

詳細情報

無効なコンテンツを含む JSON 行が多すぎると、ERROR_TOO_MANY_INVALID_ROWS_IN_MANIFEST エラーが発生します。

Amazon Rekognition Custom Labels コンソールを使用して、ERROR_TOO_MANY_INVALID_ROWS_IN_MANIFEST エラーを修正することはできません。

ERROR_TOO_MANY_INVALID_ROWS_IN_MANIFEST を修正するには
  1. マニフェストに JSON 行エラーがないか確認してください。詳細については「トレーニングとテストの検証結果マニフェストを理解する」を参照してください。

  2. エラーを含む JSON 行の修正の詳細については、「非ターミナル JSON 行検証エラー」を参照してください。

ERROR_IMAGES_IN_MULTIPLE_S3_BUCKETS

エラーメッセージ

マニフェストファイルに複数の S3 バケットのイメージが含まれています。

詳細情報

マニフェストは 1 つのバケットに保存されているイメージのみを参照できます。各 JSON 行には、イメージの場所の Amazon S3 の場所が source-ref の値に保存されます。次の例では、バケット名は my-bucket です。

"source-ref": "s3://my-bucket/images/sunrise.png"

Amazon Rekognition Custom Labels コンソールを使用してこのエラーを修正することはできません。

ERROR_IMAGES_IN_MULTIPLE_S3_BUCKETS を修正するには
  • すべてのイメージが同じ Amazon S3 バケットにあり、すべての JSON 行の source-ref の値がイメージの保存先のバケットを参照していることを確認してください。または、優先する Amazon S3 バケットを選択し、source-ref が優先するバケットを参照しない JSON 行を削除します。

ERROR_INVALID_PERMISSIONS_IMAGES_S3_BUCKET

エラーメッセージ

イメージ S3 バケットのアクセス許可が無効です。

詳細情報

イメージを含む Amazon S3 バケットのアクセス許可が正しくありません。

Amazon Rekognition Custom Labels コンソールを使用してこのエラーを修正することはできません。

ERROR_INVALID_PERMISSIONS_IMAGES_S3_BUCKET を修正するには
  • イメージを含むバケットのアクセス許可を確認してください。イメージの source-ref の値にはバケットの場所が含まれます。

ERROR_INVALID_IMAGES_S3_BUCKET_OWNER

エラーメッセージ

イメージ S3 バケットの所有者 ID が無効です。

詳細情報

トレーニングイメージまたはテストイメージを含むバケットの所有者は、トレーニングマニフェストまたはテストマニフェストを含むバケットの所有者と異なります。次のコマンドを使用して、バケットの所有者を検索できます。

aws s3api get-bucket-acl --bucket bucket name

OWNER ID は、イメージとマニフェストファイルを保存するバケットと一致する必要があります。

ERROR_INVALID_IMAGES_S3_BUCKET_OWNER を修正するには
  1. トレーニング、テスト、出力、およびイメージバケットの目的の所有者を選択します。所有者には Amazon Rekognition Custom Labels を使用するアクセス許可が必要です。

  2. 目的の所有者が現在所有していない各バケットについて、優先所有者が所有する新しい Amazon S3 バケットを作成します。

  3. 古いバケットのコンテンツを新しいバケットにコピーします。詳細については、「Amazon S3 バケット間でオブジェクトをコピーするには、どうしたらよいですか。」を参照してください。

Amazon Rekognition Custom Labels コンソールを使用してこのエラーを修正することはできません。

ERROR_INSUFFICIENT_IMAGES_PER_LABEL_FOR_AUTOSPLIT

エラーメッセージ

マニフェストファイルには、ラベルごとのラベル付きイメージが不足しているため、自動分割を実行できません。

詳細情報

モデルトレーニング中に、トレーニングデータセットの 20% のイメージを使用してテストデータセットを作成できます。ERROR_INSUFFICIENT_IMAGES_PER_LABEL_FOR_AUTOSPLIT は、許容できるテストデータセットを作成するのに十分なイメージがない場合に発生します。

Amazon Rekognition Custom Labels コンソールを使用してこのエラーを修正することはできません。

ERROR_INSUFFICIENT_IMAGES_PER_LABEL_FOR_AUTOSPLIT を修正するには
  • トレーニングデータセットとテストデータセットにラベル付きイメージを追加します。Amazon Rekognition Custom Labels コンソールにイメージを追加するには、トレーニングデータセットにイメージを追加するか、トレーニングマニフェストに JSON 行を追加します。詳細については「データセットの管理」を参照してください。

ERROR_MANIFEST_TOO_FEW_LABELS

エラーメッセージ

マニフェストファイルのラベルが少なすぎます。

詳細情報

トレーニングデータセットとテストデータセットには、必要最小限のラベル数があります。最小値は、データセットがイメージレベルのラベル (分類) を検出するようにモデルをトレーニング/テストするのか、モデルがオブジェクトの位置を検出するのかによって異なります。トレーニングデータセットを分割してテストデータセットを作成する場合、データセット内のラベルの数はトレーニングデータセットの分割後に決定されます。詳細については「Amazon Rekognition Custom Labels のガイドラインとクォータ」を参照してください。

ERROR_MANIFEST_TOO_FEW_LABELS を修正するには (コンソール)
  1. データセットに新しいラベルをさらに追加します。詳細については「ラベルの管理」を参照してください。

  2. データセット内のイメージに新しいラベルを追加します。モデルがイメージレベルのラベルを検出した場合は、「イメージにイメージレベルのラベルを割り当てる」を参照してください。モデルがオブジェクトの場所を検出した場合は、「境界ボックスによるオブジェクトのラベル付け」を参照してください。

ERROR_MANIFEST_TOO_FEW_LABELS を修正するには (JSON 行)
  • 新しいラベルが付いた新しいイメージには JSON 行を追加します。詳細については「マニフェストファイルの作成」を参照してください。モデルがイメージレベルのラベルが検出した場合は、class-name フィールドに新しいラベル名を追加します。例えば、次のイメージのラベルは、日の出 です。

    { "source-ref": "s3://bucket/images/sunrise.png", "testdataset-classification_Sunrise": 1, "testdataset-classification_Sunrise-metadata": { "confidence": 1, "job-name": "labeling-job/testdataset-classification_Sunrise", "class-name": "Sunrise", "human-annotated": "yes", "creation-date": "2018-10-18T22:18:13.527256", "type": "groundtruth/image-classification" } }

    モデルがオブジェクトの場所を検出した場合は、次の例に示すように、class-map に新しいラベルを追加します。

    { "source-ref": "s3://custom-labels-bucket/images/IMG_1186.png", "bounding-box": { "image_size": [{ "width": 640, "height": 480, "depth": 3 }], "annotations": [{ "class_id": 1, "top": 251, "left": 399, "width": 155, "height": 101 }, { "class_id": 0, "top": 65, "left": 86, "width": 220, "height": 334 }] }, "bounding-box-metadata": { "objects": [{ "confidence": 1 }, { "confidence": 1 }], "class-map": { "0": "Echo", "1": "Echo Dot" }, "type": "groundtruth/object-detection", "human-annotated": "yes", "creation-date": "2018-10-18T22:18:13.527256", "job-name": "my job" } }

    クラスマップテーブルを境界ボックスの注釈にマッピングする必要があります。詳細については「マニフェストファイル内のオブジェクトのローカリゼーション」を参照してください。

ERROR_MANIFEST_TOO_MANY_LABELS

エラーメッセージ

マニフェストファイルのラベルが多すぎます。

詳細情報

マニフェスト (データセット) 内の固有ラベルの数が上限を超えています。トレーニングデータセットを分割してテストデータセットを作成する場合、ラベルの数は分割後に決定されます。

ERROR_MANIFEST_TOO_MANY_LABELS を修正するには (コンソール)
  • データセットからラベルを削除します。詳細については「ラベルの管理」を参照してください。ラベルはデータセット内のイメージと境界ボックスから自動的に削除されます。

ERROR_MANIFEST_TOO_MANY_LABELS を修正するには (JSON 行)
  • イメージレベルの JSON 行を含むマニフェスト - イメージにラベルが 1 つしかない場合は、目的のラベルを使用するイメージの JSON 行を削除します。JSON 行に複数のラベルが含まれている場合は、目的のラベルの JSON オブジェクトのみを削除します。詳細については「複数のイメージレベルのラベルをイメージに追加する」を参照してください。

    オブジェクトの場所が JSON 行を含むマニフェスト - 削除するラベルの境界ボックスと関連付けられたラベル情報を削除します。目的のラベルを含む JSON 行ごとにこれを実行します。class-map 配列と、それに対応する objects および annotations 配列のオブジェクトからラベルを削除する必要があります。詳細については「マニフェストファイル内のオブジェクトのローカリゼーション」を参照してください。

ERROR_INSUFFICIENT_LABEL_OVERLAP

エラーメッセージ

トレーニングマニフェストファイルとテストマニフェストファイル間のラベルの重複が {}% 未満です。

詳細情報

テストデータセットのラベル名とトレーニングデータセットのラベル名の重複は 50% 未満です。

ERROR_INSUFFICIENT_LABEL_OVERLAP を修正するには (コンソール)
  • トレーニングデータセットからラベルを削除します。あるいは、より一般的なラベルをテストデータセットに追加することもできます。詳細については「ラベルの管理」を参照してください。ラベルはデータセット内のイメージと境界ボックスから自動的に削除されます。

トレーニングデータセットからラベルを削除して ERROR_INSUFFICIENT_LABEL_OVERLAP を修正するには (JSON 行)
  • イメージレベルの JSON 行を含むマニフェスト - イメージにラベルが 1 つしかない場合は、目的のラベルを使用するイメージの JSON 行を削除します。JSON 行に複数のラベルが含まれている場合は、目的のラベルの JSON オブジェクトのみを削除します。詳細については「複数のイメージレベルのラベルをイメージに追加する」を参照してください。削除するラベルを含むマニフェスト内の JSON 行ごとにこれを行います。

    オブジェクトの場所が JSON 行を含むマニフェスト - 削除するラベルの境界ボックスと関連付けられたラベル情報を削除します。目的のラベルを含む JSON 行ごとにこれを実行します。class-map 配列と、それに対応する objects および annotations 配列のオブジェクトからラベルを削除する必要があります。詳細については「マニフェストファイル内のオブジェクトのローカリゼーション」を参照してください。

テストデータセットに共通のラベルを追加して ERROR_INSUFFICIENT_LABEL_OVERLAP を修正するには (JSON 行)
  • トレーニングデータセットに既にラベルが付けられたイメージを含む JSON 行をテストデータセットに追加します。詳細については「マニフェストファイルの作成」を参照してください。

ERROR_MANIFEST_TOO_FEW_USABLE_LABELS

エラーメッセージ

マニフェストファイルに使用可能なラベルが少なすぎます。

詳細情報

トレーニングマニフェストには、イメージレベルのラベル形式とオブジェクトロケーション形式の JSON 行を含めることができます。トレーニングマニフェストにある JSON 行のタイプに応じて、Amazon Rekognition Custom Labels はイメージレベルのラベルを検出するモデルを作成するか、オブジェクトの場所を検出するモデルを作成します。Amazon Rekognition Custom Labels は、選択した形式ではない JSON 行の有効な JSON レコードを除外します。ERROR_MANIFEST_TOO_FEW_USABLE_LABELS は、選択したモデルタイプマニフェストに含まれるラベルの数がモデルをトレーニングするのに十分でない場合に発生します。

イメージレベルのラベルを検出するモデルをトレーニングするには、少なくとも 1 つのラベルが必要です。位置をオブジェクト化するモデルをトレーニングするには、最低 2 つのラベルが必要です。

ERROR_MANIFEST_TOO_FEW_USABLE_LABELS を修正するには (コンソール)
  1. マニフェスト概要の use_case フィールドを確認してください。

  2. トレーニングデータセットに、use_case の値と一致するユースケース (イメージレベルまたはオブジェクトのローカリゼーション) 用のラベルをさらに追加します。詳細については「ラベルの管理」を参照してください。ラベルはデータセット内のイメージと境界ボックスから自動的に削除されます。

ERROR_MANIFEST_TOO_FEW_USABLE_LABELS を修正するには (JSON Line)
  1. マニフェスト概要の use_case フィールドを確認してください。

  2. トレーニングデータセットに、use_case の値と一致するユースケース (イメージレベルまたはオブジェクトのローカリゼーション) 用のラベルをさらに追加します。詳細については「マニフェストファイルの作成」を参照してください。

ERROR_INSUFFICIENT_USABLE_LABEL_OVERLAP

エラーメッセージ

トレーニングマニフェストファイルとテストマニフェストファイル間で重複しているラベルが {}% 未満です。

詳細情報

トレーニングマニフェストには、イメージレベルのラベル形式とオブジェクトロケーション形式の JSON 行を含めることができます。トレーニングマニフェストにある形式に応じて、Amazon Rekognition Custom Labels はイメージレベルのラベルを検出するモデルを作成するか、オブジェクトの場所を検出するモデルを作成します。Amazon Rekognition Custom Labels は、選択したモデル形式ではない JSON 行には有効な JSON レコードを使用しません。ERROR_INSUFFICIENT_USABLE_LABEL_OVERLAP は、使用されているテストラベルとトレーニングラベルの重複が 50% 未満の場合に発生します。

ERROR_INSUFFICIENT_USABLE_LABEL_OVERLAP を修正するには (コンソール)
  • トレーニングデータセットからラベルを削除します。あるいは、より一般的なラベルをテストデータセットに追加することもできます。詳細については「ラベルの管理」を参照してください。ラベルはデータセット内のイメージと境界ボックスから自動的に削除されます。

トレーニングデータセットからラベルを削除して ERROR_INSUFFICIENT_USABLE_LABEL_OVERLAP を修正するには (JSON 行)
  • イメージレベルのラベルの検出に使用されるデータセット - イメージにラベルが 1 つしかない場合は、目的のラベルを使用するイメージの JSON 行を削除します。JSON 行に複数のラベルが含まれている場合は、目的のラベルの JSON オブジェクトのみを削除します。詳細については「複数のイメージレベルのラベルをイメージに追加する」を参照してください。削除するラベルを含むマニフェスト内の JSON 行ごとにこれを行います。

    オブジェクトの場所の検出に使用されるデータセット - 削除するラベルの境界ボックスと関連するラベル情報を削除します。目的のラベルを含む JSON 行ごとにこれを実行します。class-map 配列と、それに対応する objects および annotations 配列のオブジェクトからラベルを削除する必要があります。詳細については「マニフェストファイル内のオブジェクトのローカリゼーション」を参照してください。

テストデータセットに共通のラベルを追加して ERROR_INSUFFICIENT_USABLE_LABEL_OVERLAP を修正するには (JSON 行)
  • トレーニングデータセットに既にラベルが付けられたイメージを含む JSON 行をテストデータセットに追加します。詳細については「マニフェストファイルの作成」を参照してください。

ERROR_FAILED_IMAGES_S3_COPY

エラーメッセージ

S3 バケットからイメージをコピーできませんでした。

詳細情報

サービスはデータセット内のどのイメージもコピーできませんでした。

Amazon Rekognition Custom Labels コンソールを使用してこのエラーを修正することはできません。

ERROR_FAILED_IMAGES_S3_COPY を修正するには
  1. イメージのアクセス許可を確認してください。

  2. AWS KMS を使用している場合は、バケットポリシーを確認してください。詳細については「AWS Key Management Service で暗号化されたファイルの復号化」を参照してください。

マニフェストファイルにターミナルエラーが多すぎます。

ターミナルコンテンツエラーの JSON 行が多すぎます。

ERROR_TOO_MANY_RECORDS_IN_ERROR を修正するには

Amazon Rekognition Custom Labels コンソールを使用してこのエラーを修正することはできません。