Présentation des manifestes de résultats de validation des entraînements et des tests - Rekognition

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Présentation des manifestes de résultats de validation des entraînements et des tests

Pendant un entraînement, la fonctionnalité Étiquettes personnalisées Amazon Rekognition crée des manifestes de résultats de validation pour répertorier les erreurs non définitives de ligne JSON. Les manifestes de résultats de validation sont des copies des jeux de données d’entraînement et de test comportant les informations sur les erreurs. Vous pouvez accéder aux manifestes de validation une fois l’entraînement terminé. Pour plus d’informations, consultez Obtention des résultats de validation. La fonctionnalité Étiquettes personnalisées Amazon Rekognition crée également un récapitulatif du manifeste qui inclut des informations générales sur les erreurs de ligne JSON, comme leur emplacement et leur nombre. Pour plus d’informations, consultez Présentation du récapitulatif du manifeste.

Note

Les résultats de validation (Manifestes de résultats de validation de l’entraînement et des tests et Récapitulatif du manifeste) ne sont créés que s’il n’y en a pas d’Erreurs définitives de fichier manifeste.

Un manifeste contient des lignes JSON pour chaque image du jeu de données. Dans les manifestes de résultats de validation, les informations concernant les erreurs de ligne JSON sont ajoutées aux lignes JSON concernées.

Une erreur de ligne JSON est une erreur non définitive liée à une seule image. Une erreur de validation non définitive peut invalider la totalité ou une partie d’une ligne JSON. Par exemple, si l’image référencée dans une ligne JSON n’est pas au format PNG ou JPG, une erreur ERROR_INVALID_IMAGE se produit et l’intégralité de la ligne JSON est exclue de l’entraînement. L’entraînement se poursuit avec les autres lignes JSON valides.

Dans une ligne JSON, une erreur peut signifier que la ligne JSON peut toujours être utilisée pour l’entraînement. Par exemple, si la valeur de gauche de l’un des quatre cadres de délimitation associés à une étiquette est négative, le modèle est toujours entraîné à l’aide des autres cadres de délimitation valides. Les informations d’erreur de ligne JSON sont renvoyées pour le cadre de sélection non valide (ERROR_INVALID_BOUNDING_BOX). Dans cet exemple, les informations d’erreur sont ajoutées à l’objet annotation où l’erreur se produit.

Les erreurs d’avertissement, comme WARNING_NO_ANNOTATIONS, ne sont pas utilisées pour l’entraînement et sont considérées comme lignes JSON ignorées (ignored_json_lines) dans le récapitulatif du manifeste. Pour plus d’informations, consultez Présentation du récapitulatif du manifeste. De plus, les lignes JSON ignorées ne sont pas prises en compte dans le seuil d’erreur de 20 % applicable à l’entraînement et aux tests.

Pour plus d’informations sur les erreurs non définitives spécifiques à la validation des données, consultez Erreurs non définitives de validation de ligne JSON.

Note

S’il existe trop d’erreurs de validation des données, l’entraînement est arrêté et une erreur définitive ERROR_TOO_MANY_INVALID_ROWS_IN_IN_MANIFEST est signalée dans le récapitulatif du manifeste.

Pour plus d’informations sur la correction des erreurs de ligne JSON, consultez Correction des erreurs d’entraînement.

Format d’une erreur de ligne JSON

La fonctionnalité Étiquettes personnalisées Amazon Rekognition ajoute les informations d’erreur non définitive de validation aux lignes JSON de format de localisation d’objet et de niveau image. Pour plus d’informations, consultez Création d’un fichier manifeste.

Erreurs de niveau image

L’exemple suivant montre les tableaux Error d’une ligne JSON de niveau image. Il existe deux types d’erreurs. Erreurs liées aux métadonnées des attributs d’étiquette (dans cet exemple, sport-metadata) et erreurs liées à l’image. Une erreur inclut un code d’erreur (code), un message d’erreur (message). Pour plus d’informations, consultez Étiquettes au niveau de l’image dans les fichiers manifestes.

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

Erreurs de localisation d’objet

L’exemple suivant montre les tableaux d’erreurs dans une ligne JSON de localisation d’objet. La ligne JSON contient un tableau d’informations Errors pour les champs des sections de ligne JSON suivantes. Chaque objet Error inclut le code d’erreur et le message d’erreur.

  • attribut d’étiquette : erreurs concernant les champs d’attributs d’étiquettes. Voir bounding-box dans l’exemple.

  • annotations : les erreurs d’annotation (cadres de délimitation) sont stockées dans le tableau annotations à l’intérieur de l’attribut d’étiquette.

  • attribut d’étiquette-métadonnées : erreurs concernant les métadonnées d’attributs d’étiquettes. Voir bounding-box-metadata dans l’exemple.

  • image : erreurs non liées aux champs de métadonnées d’attribut d’étiquette, d’annotation et d’attribut d’étiquette.

Pour plus d’informations, consultez Localisation d’objets dans les fichiers manifestes.

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

Exemple d’erreur de ligne JSON

La ligne JSON de localisation d’objet suivante (formatée pour plus de lisibilité) affiche une erreur ERROR_BOUNDING_BOX_TOO_SMALL. Dans cet exemple, les dimensions du cadre de délimitation (hauteur et largeur) ne sont pas supérieures à 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" } }