훈련 및 테스트 검증 결과 매니페스트의 이해 - Rekognition

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

훈련 및 테스트 검증 결과 매니페스트의 이해

Amazon Rekognition Custom Labels는 훈련 중에 비터미널 JSON 라인 오류를 보관하기 위한 검증 결과 매니페스트를 생성합니다. 검증 결과 매니페스트는 오류 정보가 추가된 훈련 및 테스트 데이터 세트의 사본입니다. 훈련이 완료된 후 검증 매니페스트에 액세스할 수 있습니다. 자세한 정보는 검증 결과 가져오기을 참조하세요. Amazon Rekognition Custom Labels는 오류 위치 및 JSON 라인 오류 수와 같은 JSON 라인 오류에 대한 개요 정보가 포함된 매니페스트 요약도 생성합니다. 자세한 정보는 매니페스트 요약 이해을 참조하세요.

참고

검증 결과(훈련 및 테스트 검증 결과 매니페스트와 매니페스트 요약)는 터미널 매니페스트 파일 오류 항목이 없는 경우에만 생성됩니다.

매니페스트에는 데이터 세트의 각 이미지에 대한 JSON 라인이 포함됩니다. 검증 결과 매니페스트 내에서 오류가 발생한 JSON 라인에 JSON 라인 오류 정보가 추가됩니다.

JSON 라인 오류는 하나의 이미지와 관련된 비터미널 오류입니다. 비터미널 검증 오류로 인해 JSON 라인 전체 또는 일부가 무효화될 수 있습니다. 예를 들어 JSON 라인에서 참조된 이미지가 PNG 또는 JPG 형식이 아닌 경우 ERROR_INVALID_IMAGE 오류가 발생하고 전체 JSON 라인이 훈련에서 제외됩니다. 다른 유효한 JSON 라인을 사용하여 훈련이 계속됩니다.

JSON 라인 내에서 오류가 발생하면 JSON 라인을 여전히 훈련에 사용할 수 있다는 의미일 수 있습니다. 예를 들어 레이블과 관련된 네 개의 경계 상자 중 하나의 왼쪽 값이 음수인 경우에도 모델은 다른 유효한 경계 상자를 사용하여 훈련됩니다. 잘못된 경계 상자(ERROR_INVALID_BOUNDING_BOX)에 대한 JSON 라인 오류 정보가 반환됩니다. 이 예제에서는 오류가 발생한 annotation 객체에 오류 정보가 추가됩니다.

WARNING_NO_ANNOTATIONS 항목과 같은 경고 오류는 훈련에 사용되지 않으며 매니페스트 요약에서 무시된 JSON 라인(ignored_json_lines)으로 간주됩니다. 자세한 정보는 매니페스트 요약 이해을 참조하세요. 또한 무시된 JSON 라인은 훈련 및 테스트의 20% 오류 임계값에 포함되지 않습니다.

특정 비터미널 데이터 검증 오류에 대한 자세한 내용은 비터미널 JSON 라인 검증 오류 항목을 참조하세요.

참고

데이터 검증 오류가 너무 많으면 훈련이 중단되고 매니페스트 요약에 ERROR_TOO_MANY_INVALID_ROWS_IN_MANIFEST 터미널 오류가 보고됩니다.

JSON Line 오류 수정에 대한 자세한 내용은 훈련 오류 수정 항목을 참조하세요.

JSON 라인 오류 형식

Amazon Rekognition Custom Labels는 비터미널 검증 오류 정보를 이미지 수준 및 객체 위치 파악 형식의 JSON 라인에 추가합니다. 자세한 정보는 매니페스트 파일 생성을 참조하세요.

이미지 수준 오류

다음 예제는 이미지 수준 JSON 라인의 Error 배열을 보여줍니다. 두 세트의 오류가 있습니다. 레이블 속성 메타데이터(이 예제에서는 스포츠 메타데이터)와 관련된 오류와 이미지와 관련된 오류가 있습니다. 오류에는 오류 코드(코드), 오류 메시지(메시지)가 포함됩니다. 자세한 정보는 매니페스트 파일의 이미지 수준 레이블을 참조하세요.

{ "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 } ] }

객체 위치 파악 오류

다음 예제는 객체 위치 파악 JSON 라인의 오류 배열을 보여줍니다. JSON 라인은 다음 JSON 라인 항목의 필드에 대한 Errors 배열 정보를 포함합니다. 각 Error 객체에는 오류 코드와 오류 메시지가 들어 있습니다.

  • 레이블 속성: 레이블 속성 필드의 오류입니다. 예제의 bounding-box를 참조하세요.

  • 주석: 주석 오류(경계 상자)는 레이블 속성 내 annotations 배열에 저장됩니다.

  • 레이블 attribute-metadata: 레이블 속성 필드의 오류입니다. 예제의 bounding-box-metadata를 참조하세요.

  • 이미지: 레이블 속성, 주석 및 레이블 속성 메타데이터 필드와 관련이 없는 오류입니다.

자세한 정보는 매니페스트 파일의 객체 위치 파악을 참조하세요.

{ "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 라인 오류

다음 객체 위치 파악 JSON 라인(가독성을 위해 형식 지정)에는 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" } }