

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# トレーニングとテストの検証結果マニフェストを理解する
<a name="tm-debugging-scope-json-line"></a>

トレーニング中、Amazon Rekognition Custom Labels は、非ターミナル JSON 行エラーを含む検証結果マニフェストを作成します。検証結果マニフェストは、エラー情報が追加されたトレーニングデータセットとテストデータセットのコピーです。検証マニフェストには、トレーニングの完了後にアクセスできます。詳細については、「[検証結果の取得](tm-debugging-getting-validation-data.md)」を参照してください。Amazon Rekognition Custom Labels では、エラーの場所や JSON 行エラー数などの JSON 行エラーの概要情報を含むマニフェストの概要も作成されます。詳細については、「[マニフェストの概要について](tm-debugging-summary.md)」を参照してください。

**注記**  
検証結果 (トレーニングとテストの検証結果のマニフェストとマニフェストの概要) は、[致命的マニフェストファイルエラーのリスト](tm-debugging.md#tm-error-category-terminal) がない場合にのみ作成されます.

マニフェストには、データセット内の各イメージの JSON 行が含まれます。検証結果マニフェスト内では、エラーが発生した JSON 行に JSON 行エラー情報が追加されます。

JSON 行エラーは、1 つのイメージに関連する非ターミナルエラーです。非ターミナル検証エラーでは、JSON 行全体または一部のみが無効になることがあります。例えば、JSON 行で参照されているイメージが PNG または JPG 形式でない場合、[ERROR\$1INVALID\$1IMAGE](tm-debugging-json-line-errors.md#tm-error-ERROR_INVALID_IMAGE) エラーが発生し、JSON 行全体がトレーニングから除外されます。トレーニングは、他の有効な JSON 行で継続されます。

JSON 行内でエラーが発生しても、JSON 行は引き続きトレーニングに使用できる場合があります。例えば、ラベルに関連付けられている 4 つの境界ボックスのうちの 1 つの左側の値が負の場合でも、モデルは他の有効な境界ボックスを使用してトレーニングされます。無効な境界ボックス ([ERROR\$1INVALID\$1BOUNDING\$1BOX](tm-debugging-json-line-errors.md#tm-error-ERROR_INVALID_BOUNDING_BOX)) の JSON 行エラー情報が返されます。この例では、エラーが発生した `annotation` オブジェクトにエラー情報が追加されます。

[WARNING\$1NO\$1ANNOTATIONS](tm-debugging-json-line-errors.md#tm-warning-WARNING_NO_ANNOTATIONS) などの警告エラーはトレーニングには使用されず、マニフェストの概要では無視された JSON 行 (`ignored_json_lines`) としてカウントされます。詳細については、「[マニフェストの概要について](tm-debugging-summary.md)」を参照してください。また、無視された JSON 行は、トレーニングとテストの 20% のエラーしきい値にはカウントされません。

 特定の非ターミナルデータ検証エラーについては、「[非ターミナル JSON 行検証エラー](tm-debugging-json-line-errors.md)」を参照してください。

**注記**  
データ検証エラーが多すぎる場合、トレーニングは停止され、マニフェストの概要に [ERROR\$1TOO\$1MANY\$1INVALID\$1ROWS\$1IN\$1MANIFEST](tm-debugging-aggregate-errors.md#tm-error-ERROR_TOO_MANY_INVALID_ROWS_IN_MANIFEST) ターミナルエラーが報告されます。

JSON 行エラーの修正方法については、「[トレーニングエラーの修正](tm-debugging-fixing-validation-errors.md)」を参照してください。



## JSON 行エラー形式
<a name="tm-json-line-error-format"></a>

Amazon Rekognition Custom Labels は、非ターミナル検証エラー情報をイメージレベルとオブジェクトローカリゼーション形式 JSON 行に追加します。詳細については、「[マニフェストファイルの作成](md-create-manifest-file.md)」を参照してください。

### イメージレベルエラー
<a name="tm-debugging-image-level"></a>

次の例は、イメージレベル JSON 行の `Error` 配列を示しています。エラーには 2 つのセットがあります。ラベル属性メタデータ (この例では sport-metadata) に関連するエラーとイメージに関連するエラー。エラーには、エラーコード (コード)、エラーメッセージ (メッセージ) が含まれます。詳細については、「[マニフェストファイルでの画像レベルラベルのインポート](md-create-manifest-file-classification.md)」を参照してください。

```
{
    "source-ref": String,
    "sport": Number,
    "sport-metadata": {
        "class-name": String,
        "confidence": Float,
        "type": String,
        "job-name": String,
        "human-annotated": String,
        "creation-date": String,
        "errors": [
            {
                "code": String, # error codes for label
                "message": String # Description and additional contextual details of the error
            }
        ] 
    },
    "errors": [
        {
            "code": String, # error codes for image
            "message": String # Description and additional contextual details of the error
        }
    ]
}
```

### オブジェクトローカリゼーションエラー
<a name="tm-debugging-object-localization"></a>

次の例は、オブジェクトローカリゼーション JSON 行のエラー配列を示しています。JSON 行には、次の JSON 行セクションのフィールドの `Errors` 配列情報が含まれています。各 `Error` オブジェクトにはエラーコードとエラーメッセージが含まれます。
+ *ラベル属性* - ラベル属性フィールドのエラー。例の「`bounding-box`」を参照してください。
+ *注釈* - 注釈エラー (境界ボックス) はラベル属性内の `annotations` 配列に保存されます。
+ *ラベル属性メタデータ* - ラベル属性メタデータのエラー。例の「`bounding-box-metadata`」を参照してください。
+ *イメージ* - ラベル属性、注釈、ラベル属性のメタデータフィールドに関係のないエラー。

詳細については、「[マニフェストファイル内のオブジェクトのローカリゼーション](md-create-manifest-file-object-detection.md)」を参照してください。

```
{
    "source-ref": String,
    "bounding-box": {
        "image_size": [
            {
                "width": Int,
                "height": Int,
                "depth":Int,
            }
        ],
        "annotations": [
            {
                "class_id": Int,
                "left": Int,
                "top": Int,
                "width": Int,
                "height": Int,
                "errors": [   # annotation field errors
                    {
                        "code": String, # annotation field error code
                        "message": String # Description and additional contextual details of the error
                    }
                ]
            }
        ],
        "errors": [ #label attribute field errors
            {
                "code": String, # error code
                "message": String # Description and additional contextual details of the error
            }
        ] 
    },
    "bounding-box-metadata": {
        "objects": [
            {
                "confidence": Float
            }
        ],
        "class-map": {
            String: String
        }, 
        "type": String,
        "human-annotated": String,
        "creation-date": String,
        "job-name": String,
        "errors": [  #metadata field errors
            {
                "code": String, # error code
                "message": String # Description and additional contextual details of the error
            }
        ] 
    },
   "errors": [  # image errors
        {
            "code": String, # error code
            "message": String # Description and additional contextual details of the error
        }
    ] 
 }
```

## JSON 行エラーの例
<a name="tm-debugging-scope-json-line-example"></a>

次のオブジェクトローカリゼーション JSON 行 (読みやすいようにフォーマットされています) は [ERROR\$1BOUNDING\$1BOX\$1TOO\$1SMALL](tm-debugging-json-line-errors.md#tm-error-ERROR_BOUNDING_BOX_TOO_SMALL) エラーを示しています。この例では、境界ボックスの寸法 (高さと幅) は 1 x 1 以下です。

```
{
    "source-ref": "s3://bucket/Manifests/images/199940-1791.jpg",
    "bounding-box": {
        "image_size": [
            {
                "width": 3000,
                "height": 3000,
                "depth": 3
            }
        ],
        "annotations": [
            {
                "class_id": 1,
                "top": 0,
                "left": 0,
                "width": 1,
                "height": 1, 
                "errors": [
                    {
                        "code": "ERROR_BOUNDING_BOX_TOO_SMALL",
                        "message": "The height and width of the bounding box is too small."
                    }
                ]
            },
            {
                "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": "2019-11-20T02:57:28.288286",
        "job-name": "my job"
    }
}
```