Comment puis-je résoudre les erreurs d'étiquetage sur Amazon SageMaker Ground Truth ?

Lecture de 5 minute(s)
0

Je souhaite résoudre les erreurs d'étiquetage d'Amazon SageMaker Ground Truth. -ou- Mes employés SageMaker sont inactifs. -ou- Les tâches mettent beaucoup de temps à apparaître pour mes employés SageMaker.

Solution

SageMaker Ground Truth envoie d'abord un lot de 10 tâches à vos collaborateurs SageMaker afin qu'ils les annotent. Ce lot est utilisé pour vérifier et s'assurer que la tâche d'étiquetage est correctement configurée. Ground Truth envoie ensuite de plus grands lots de tâches aux utilisateurs pour qu'ils les annotent en fonction de la valeur MaxConcurrentTaskCount.

MaxConcurrentTaskCount définit le nombre maximum d'objets de données qui peuvent être étiquetés simultanément par des travailleurs humains. Si vous utilisez la console, ce paramètre est défini sur 1 000. Si vous utilisez CreateLabelingJob, vous pouvez définir ce paramètre sur n'importe quel entier compris entre 1 et 1 000 inclus.

Une fois que Ground Truth a reçu les étiquettes, elle les traite à l'aide d'une fonction AWS Lambda de consolidation. Avec cette fonction, les annotations finales sont écrites dans le fichier manifeste ou dans la sortie d'Amazon Simple Notification Service (Amazon SNS). Ground Truth revient ensuite en boucle pour lire un autre lot de tâches en fonction de la valeur MaxConcurrentTaskCount du fichier manifeste en entrée ou de la rubrique Amazon SNS.

Résoudre les problèmes liés à la latence des tâches

  • Assurez-vous que la valeur MaxConcurrentTaskCount est définie sur une taille qui permet aux utilisateurs de terminer l'intégralité du lot dans les limites de la TaskAvailabilityLifetimeInSeconds donnée. La valeur maximale de ce paramètre est de 1 000.
  • Assurez-vous que NumberOfHumanWorkersPerDataObject est défini sur une valeur adaptée à votre cas d'utilisation. Par exemple, si le nombre de travailleurs par objet à étiqueter est défini sur 3, chaque objet doit être étiqueté par trois travailleurs. Si deux des travailleurs terminent le lot en cours, le lot suivant n'est pas attribué tant que le troisième travailleur n'a pas terminé son lot. Si un collaborateur privé remarque qu'une tâche disparaît du portail, il se peut qu'il ait terminé un lot et qu'il soit inactif en attendant qu'un nouveau lot soit disponible.
  • Assurez-vous que le paramètre TaskAvailabilityLifetimeInSeconds est défini sur une valeur adaptée à votre cas d'utilisation. Cette valeur représente la durée totale pendant laquelle les tâches sont disponibles pour les travailleurs. La valeur maximale que vous pouvez définir pour ce paramètre est de 864 000 secondes (10 jours). Il est recommandé de diviser votre jeu de données en entrée en plusieurs tâches et de les diriger vers la même équipe de travail dans les conditions suivantes :
  • Le nombre d'objets dans la tâche d'étiquetage est élevé.
  • Votre tâche a échoué car le temps d'attente a dépassé la valeur TaskAvailabilityLifetimeInSeconds.
  • Assurez-vous que TaskTimeLimitInSeconds est défini sur une valeur adaptée à votre cas d'utilisation. Si vous devez contrôler le temps nécessaire aux travailleurs pour effectuer une tâche afin de vous assurer que les tâches sont annotées et que le lot suivant est attribué, pensez à définir une valeur appropriée pour ce délai.

Résolution des erreurs d'étiquetage

Vérifiez les autorisations

Assurez-vous de disposer des autorisations nécessaires pour créer une tâche d'étiquetage, accéder aux données d'entrée et accéder au compartiment Amazon Simple Storage Service (Amazon S3) pour les données de sortie. Pour plus d'informations, voir Étape 1 : Avant de commencer.

Vérifiez les points suivants :

  • Le compartiment Amazon S3 se trouve dans la même région que la tâche d'étiquetage Ground Truth.
  • Le compartiment est associé à une politique CORS. Pour plus d'informations, consultez la section Obligation d'autorisation CORS.

Vérifiez le fichier manifeste de sortie

Consultez le fichier manifeste de sortie que vous avez spécifié dans le compartiment S3 pour stocker les fichiers de sortie. Dans ce jeu de données en sortie, vous pouvez voir les métadonnées de toutes les annotations ayant échoué qui auraient pu entraîner l'échec des tâches d'étiquetage.

Exemple :

{"source-ref":"s3://sagemaker-output-labeling-bucket-example/example.jpeg","example-metadata":{"retry-count":1,"failure-reason":"ClientError: Annotation tasks expired.  Probable Reasons are 1) TaskAvailabilityLifetimeInSeconds parameter is too small.  2) Reward is too low for workers to work on the task.  3) If you use a custom html template, your template may be broken.  4) Data (image/video/text) sent for annotation is broken or too big, preventing completion.  5) All workers declined the tasks.","human-annotated":"true"}}

Les employés sont autorisés à refuser des tâches en raison d'instructions peu claires, de données d'entrée erronées (ne s'affichant pas correctement) ou de tout autre problème lié à la tâche. Si tous les travailleurs refusent, l'objet est marqué comme expiré et n'est envoyé à aucun autre utilisateur.

Vous pouvez contrôler si les employés refusent, soumettent ou renvoient une tâche à l'aide d'Amazon CloudWatch Events. Pour plus d'informations, voir Surveiller l'état des tâches d'étiquetage.

Vérifiez le fichier manifeste d'entrée

Assurez-vous que le fichier manifeste en entrée répond à toutes les exigences des objets JSON répertoriés. Pour plus d'informations, voir Utiliser un fichier manifeste d'entrée.


Informations connexes

Création d'une tâche d'étiquetage

Contrôlez le flux d'objets de données envoyés aux travailleurs

Surveiller les tâches d'étiquetage

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an