Entraîner la transformation à trouver des correspondances - AWS Glue

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.

Entraîner la transformation à trouver des correspondances

Il est nécessaire d'entraîner chaque transformation FindMatches à déterminer ce qui est une correspondance et ce qui ne l'est pas. Vous enseignez votre transformation en ajoutant des étiquettes à un fichier et en téléchargeant vos choix vers AWS Glue.

Vous pouvez orchestrer cet étiquetage sur le AWS Glue console ou en utilisant le AWS Glue opérations d'API d'apprentissage automatique.

Combien de fois dois-je ajouter des étiquettes ? De combien d'étiquettes ai-je besoin ?

Les réponses à ces questions dépendent essentiellement de vous. Vous devez évaluer si FindMatches offre le niveau d'exactitude dont vous avez besoin et si vous pensez qu'un effort d'étiquetage supplémentaire est utile pour vous. La meilleure façon d'en décider est d'examiner les métriques « Précision », « Rappel » et « Zone située sous la courbe de rappel de précision » que vous pouvez générer lorsque vous choisissez Estimer la qualité sur le AWS Glue console. Une fois que vous avez étiqueté plusieurs ensembles de tâches, réexécutez ces métriques et vérifiez si elles présentent des améliorations. Si, après l'étiquetage de quelques ensembles de tâches, vous ne constatez pas une amélioration au niveau de la métrique concernée, il est vraisemblable que la qualité de la transformation a atteint son niveau maximum.

Pourquoi les étiquettes Vrai positif et Vrai négatif sont-elles nécessaires ?

La transformation FindMatches nécessite à la fois des exemples positifs et négatifs pour vous permettre d'enseigner ce que vous estimez être une correspondance. Si vous étiquetez des données de formation générées par FindMatches (par exemple, à l'aide de l'option I do not have labels (Je ne dispose pas d'étiquettes), FindMatches essaie de générer un ensemble d'« ID d'ensemble d'étiquettes » pour vous. Au sein de chaque tâche, vous donnez la même « étiquette » à certains enregistrements et des « étiquettes » différentes à d'autres enregistrements. En d'autres termes, les tâches ne sont généralement pas toutes identiques ou toutes différentes (mais c'est normal si une tâche particulière est entièrement « identique » ou entièrement « non identique »).

Si vous entraînez votre transformation FindMatches à l'aide de l'option Upload labels from S3 (Télécharger des étiquettes de S3), essayez d'inclure à la fois des exemples d'enregistrements correspondants et non correspondants. Il est acceptable d'avoir un seul type. Ces étiquettes vous aident à créer une transformation FindMatches plus exacte, mais vous devez quand-même étiqueter certains enregistrements que vous générez à l'aide de l'option Generate labeling file (Générer un fichier d'étiquetage).

Comment puis-je m'assurer que la transformation fasse exactement ce que je lui ai enseigné ?

La transformation FindMatches apprend à partir des étiquettes que vous fournissez, elle peut donc générer des paires d'enregistrements qui ne respectent pas les étiquettes fournies. Pour garantir que la FindMatches transformation respecte vos étiquettes, sélectionnez « EnforceProvidedLabelsin FindMatchesParameter».

Quelles techniques puis-je utiliser lorsqu'une transformation ML identifie des éléments en tant que correspondances alors qu'elles n'en sont pas vraiment ?

Vous pouvez utiliser les techniques suivantes :

  • Définir precisionRecallTradeoff sur une valeur plus élevée. Cela peut se traduire par la production d'un nombre de correspondances inférieur, mais cela peut également permettre de fractionner votre gros cluster lorsqu'il atteint une valeur suffisamment élevée.

  • Prenez les lignes de sortie correspondant aux résultats incorrects et reformatez-les en tant qu'ensemble d'étiquetage (en retirant la colonne match_id et en ajoutant une colonne labeling_set_id et label). Si nécessaire, fractionnez (subdivisez) en plusieurs ensembles d'étiquetage afin de vous assurer que l'étiqueteur peut continuer en gardant chaque étiquetage à l'esprit tout en affectant des étiquettes. Ensuite, étiquetez correctement les ensembles correspondants, puis chargez le fichier d'étiquettes et ajoutez-le à vos étiquettes existantes. Cela peut suffisamment entraîner votre transformateur à ce qu'il doit rechercher pour comprendre le modèle.

  • (Avancé) Enfin, examinez ces données pour voir si vous pouvez détecter un modèle que le système n'a pas remarqué. Prétraitez ces données à l'aide de la norme AWS Glue fonctions permettant de normaliser les données. Mettez en évidence ce sur quoi l'algorithme doit se baser pour apprendre en séparant les données que vous jugez différemment importantes dans leurs propres colonnes. Vous pouvez aussi créer des colonnes combinées à partir de colonnes contenant des données connexes.