Présentation

Le service Amazon Textract permet d'extraire du texte imprimé, de l'écriture manuscrite et des données structurées à partir d'images de documents. Dans le cadre de ce service, la fonctionnalité AnalyzeID lit et extrait des données textuelles structurées à partir d'images de documents d'identité, y compris les permis de conduire et les passeports américains. Cette fonctionnalité permet aux clients d'automatiser et d'accélérer plus facilement le traitement de leurs documents.

AnalyzeID utilise le texte qui apparaît sur un document d'identité pour prédire les paires clé-valeur explicites et implicites. AnalyzeID peut extraire des paires clé-valeur explicites, dans lesquelles une clé (« Date d'émission ») apparaît sur le document et s'aligne sur sa valeur (« 18/03/2018 »), ainsi que des paires clé-valeur implicites qui peuvent ne pas être accompagnées de clés explicites (« María » apparaît au centre d'un permis, mais n'est pas marqué en tant que « Prénom »). Le service normalise les paires clé-valeur dans une taxonomie commune de 21 clés connues, afin que les clients puissent comparer les informations entre les différents types d'identifiants. Par exemple, le service extrait le numéro de licence d'un permis de conduire et le numéro de passeport d'un passeport américain, en les étiquetant tous deux comme « numéro d'identification du document ». Pour évaluer la précision d'AnalyzeID, nous comparons ces prédictions à la réalité du terrain. Les clés et les valeurs de la réalité du terrain sont corrigées par un annotateur humain. Chaque paire clé-valeur prédite est un succès si la prédiction correspond à la réalité du terrain, et un échec dans le cas contraire. Les mesures de qualité telles que la précision, le rappel et le score F1 dépendent du nombre de succès et d'échecs.

Les documents d'identité diffèrent selon les juridictions (les permis de conduire de Virginie sont différents des permis californiens) et au sein des juridictions, car chaque juridiction fait évoluer ses documents au fil du temps. Chaque version d'un document d'identification peut différer en fonction des clés incluses et des valeurs autorisées pour chaque clé. Il existe également des facteurs (appelés « variation confusionnelle ») qui rendent la reconnaissance difficile. Les documents peuvent comporter des conceptions graphiques complexes pour appuyer le texte et du plastique brillant ou d'autres laminés superposés au texte. Les documents peuvent être usés, par exemple lorsqu'ils sont transportés dans un sac à main ou une poche, ce qui masque des informations essentielles. Enfin, le document peut être mal éclairé, obstrué (par exemple à cause d'une partie de la main qui tient le document pendant l'imagerie) ou flou à cause d'une mauvaise prise d'image. AnalyzeID est conçu pour reconnaître le texte contenu dans ces images de documents, en ignorant la variation confusionnelle.

Cas d'utilisation prévus et limites

AnalyzeID est destiné à être utilisé sur les permis de conduire émis par les États américains et les passeports émis par le gouvernement américain. La fonction n'est pas destinée à être utilisée sur les documents émis par les gouvernements territoriaux (par exemple, Porto Rico) ou sur d'autres formes d'identification telles que les cartes d'admission mondiales ou les certificats de naissance. AnalyzeID prend en charge les documents publiés au cours des quinze dernières années (2007). Cela couvre environ trois itérations de mises à jour de conception au niveau de l'État, qui ont lieu environ tous les cinq ans. Ce délai compte tous les documents non expirés ; les permis de conduire américains expirent au maximum tous les douze ans et les passeports américains expirent au maximum tous les dix ans.

AnalyzeID permet l'étape d'extraction de texte dans diverses applications développées par le client. Ces applications aident généralement les utilisateurs finaux à effectuer des tâches en ligne. Par exemple, une application de services financiers pourrait inscrire de nouveaux utilisateurs avec moins de fautes de frappe et d'erreurs en permettant de scanner le contenu du permis de conduire. De même, une application de santé pourrait permettre aux utilisateurs de confirmer leur adresse ou d'autres informations de compte plus rapidement et avec moins d'erreurs lors de la prise de rendez-vous. Les applications diffèrent principalement en raison : 1) des paires clé-valeur pertinentes ; 2) du processus de capture d'image utilisé ; et 3) de la résolution des images soumises. Lorsqu'ils intègrent AnalyzeID dans le flux de travail d'une application, les clients doivent évaluer la nécessité d'une supervision humaine et encourager l'examen des résultats d'AnalyzeID par des réviseurs humains, selon les besoins.

Conception d'AnalyzeID de Textract

Machine learning : AnalyzeID est construit à l'aide des technologies de ML et de reconnaissance optique de caractères (OCR). Cela fonctionne comme suit : AnalyzeID prend l'image d'un document d'identité en entrée. Un modèle d'OCR identifie le texte du document. Un deuxième modèle d'apprentissage automatique traite l'image complète du document ainsi que la sortie OCR pour renvoyer les noms et le contenu des champs sous forme de paires clé-valeur. Consultez la documentation destinée aux développeurs pour en savoir plus sur les appels d'API.

Attentes en matière de performances : les variations confondantes diffèrent selon les applications du client. Cela signifie que les performances sont également différentes d'une application à l'autre. Prenons l'exemple de deux applications de vérification du nom et de l'adresse différentes : A et B. L'application A permet à un agent de sécurité d'un bâtiment de comparer le nom et l'adresse figurant sur le permis de conduire d'un visiteur avec le nom et l'adresse de la personne qui doit visiter le site. L'application B permet à un recruteur de recueillir des informations personnelles auprès d'un candidat lors d'un entretien vidéo. Avec l'application A, l'agent de sécurité du bâtiment utilise un scanner de documents d'identification d'entreprise pour capturer des images de licence bien éclairées, parfaitement nettes et non obstruées. Avec l'application B, la personne interrogée utilise sa propre webcam pour capturer une image de sa licence en même temps qu'elle la tient, augmentant ainsi le risque de flou, de reflet et d'occlusions de l'image. Étant donné que les applications A et B présentent des qualités d'image d'entrée différentes en raison des différents périphériques et processus de capture d'image, elles présenteront probablement des taux d'erreur différents, même en supposant que chaque application soit parfaitement déployée à l'aide de Textract.

Méthodologie pilotée par les tests : un jeu de données d'évaluation unique ne suffit pas pour évaluer les performances, c'est pourquoi nous en utilisons plusieurs. En effet, les jeux de données d'évaluation varient en fonction de leur composition démographique (le nombre et le type de groupes définis), de l'ampleur des variations confondantes (qualité du contenu, adapté à l’objectif), des types et de la qualité des étiquettes disponibles et d'autres facteurs. Nous mesurons les performances de Textract en les testant sur des jeux de données d'évaluation contenant des images de documents d'identité. Les performances globales d'un jeu de données sont représentées par le score F1 (F1), qui équilibre le pourcentage de champs prédits corrects (précision) par rapport au pourcentage de champs corrects inclus dans la prédiction (rappel). Les scores F1 sont limités par la plage [0,1]. La modification des seuils de confiance sur les paires clé-valeur modifie le score F1. Les groupes d'un jeu de données peuvent être définis par des attributs clés (tels que la juridiction, la longueur du nom de famille), des variables confusionnelles (telles que la mise en page graphique, la qualité de l'image) ou une combinaison des deux. Les différents jeux de données d'évaluation varient en fonction de ces facteurs et d'autres. De ce fait, les scores F1, à la fois globaux et pour les groupes, varient d'un jeu de données à l'autre. En tenant compte de cette variation, notre processus de développement examine les performances d'AnalyzeID à l'aide de plusieurs jeux de données d'évaluation, prend des mesures pour augmenter le score F1 pour les groupes pour lesquels AnalyzeID a obtenu les moins bons résultats, travaille à améliorer la suite d'ensembles de données d'évaluation, puis itère.

Équité et biais : notre objectif est de faire en sorte qu'AnalyzeID extraie les champs de texte des documents d'identité avec une grande précision, indépendamment de la juridiction de la licence ou des caractéristiques démographiques de la personne représentée par le document. Pour ce faire, nous utilisons le processus de développement itératif décrit ci-dessus. Dans le cadre de ce processus, nous créons des jeux de données pour capturer la plage de juridictions (États américains) et les modèles concernés par AnalyzeID, dans diverses conditions de qualité d'image. Nous effectuons régulièrement des tests sur des jeux de données d'images de documents pour lesquels nous disposons de paires clé-valeur fiables. Nous constatons qu'AnalyzeID fonctionne bien, quels que soient les attributs juridictionnels et démographiques. À titre d'exemple, sur un jeu de données interne composé du recto des permis de conduire américains de 50 États, la précision F1 la plus faible entre les États est de 95 %, et la valeur F1 la plus faible pour les groupes démographiques définis par l'âge, le statut d'ancien combattant et la longueur du nom de famille est de 99 %. Étant donné que les résultats dépendent non seulement d'AnalyzeID, mais également du flux de travail du client et du jeu de données d'évaluation, nous recommandons aux clients de tester AnalyzeID sur leur propre contenu.

Explicabilité : les clients ont accès aux scores de confiance pour chaque champ de texte, qu'ils peuvent exploiter pour établir des seuils de confiance et mieux comprendre les résultats d'AnalyzeID. La clé prédite donne un aperçu de la prévision de la valeur.

Robustesse : nous optimisons la robustesse grâce à diverses techniques, notamment l'utilisation de grands jeux de données d'entraînement qui capturent de nombreux types de variations entre un grand nombre de documents. Les entrées idéales pour AnalyzeID contiennent des images relativement exemptes d'ombres, d'éblouissements ou d'autres obstacles, le document étant orienté à la verticale dans le cadre de l'image. Cependant, les modèles AnalyzeID sont conçus pour être résilients même lorsque les entrées ne correspondent pas aux conditions idéales.

Confidentialité et sécurité : AnalyzeID capture et traite le texte. Les entrées et les sorties ne sont jamais partagées entre les clients.  Les clients peuvent se désinscrire de la formation sur le contenu client via AWS Organizations ou d'autres mécanismes de désinscription que nous pouvons proposer. Consultez la section 50.3 des conditions de service AWS et la FAQ sur la confidentialité des données d'AWS pour plus d'informations. Pour obtenir des informations de confidentialité et de sécurité spécifiques à un service, consultez la section Confidentialité des données des FAQ Textract et la documentation sur la sécurité d'Amazon Textract.

Transparence : selon leur cas d'utilisation, les clients qui intègrent les API de reconnaissance faciale d'AnalyzeID dans leur flux de travail devraient envisager de divulguer leur utilisation de la technologie de ML aux utilisateurs finaux et aux autres personnes touchées par cette utilisation, et de donner à leurs utilisateurs finaux la possibilité de fournir des commentaires concernant l'amélioration des flux de travail. Dans leur documentation, les clients peuvent également faire référence à cette carte de service d'IA.

Gouvernance : nous suivons des méthodologies rigoureuses pour développer nos services d'IA AWS de manière responsable, notamment un processus de développement de produits rétroactif qui intègre l'IA responsable dès la phase de conception, des consultations relatives à la conception et des évaluations de la mise en œuvre par des experts dédiés à la science et aux données de l'IA responsable, des tests de routine, des évaluations avec les clients, ainsi que le développement et la diffusion de meilleures pratiques et la formation à ces dernières.

Meilleures pratiques en matière de déploiement et d'optimisation des performances

Nous encourageons les clients à créer et à exploiter leurs applications de manière responsable, comme décrit dans le guide AWS Responsible Use of Machine Learning. Cela comprend la mise en œuvre de pratiques d'IA responsable pour répondre à des dimensions clés telles que l'équité et les biais, la robustesse, l'explicabilité, la confidentialité et la sécurité, la transparence et la gouvernance.
 
Conception du flux de travail : nous définissons les performances comme l'expérience des utilisateurs finaux qui interagissent avec une application développée par le client et qui inclut AnalyzeID pour l'extraction de texte. Les performances de toute application qui utilise AnalyzeID dépendent de la conception du flux de travail du client, notamment : (1) de la variation de l'image, (2) du seuil de confiance, (3) de la supervision humaine, (4) de la cohérence du flux de travail et (5) des tests périodiques pour détecter toute dérive des performances.
 
  1. Variation de l'image : images idéales relativement exemptes d'ombres, de reflets ou d'autres obstacles, avec le document capturé avec un angle direct et orienté à la verticale dans le cadre de l'image. Les clients peuvent aider leurs utilisateurs finaux en leur fournissant des conseils appropriés pour capturer de bonnes images.

  2. Seuil de confiance : les clients peuvent ajuster les performances en définissant un filtre ou un seuil pour les paires clé-valeur produites par AnalyzeID, en fonction du score de confiance attribué à cette paire. Pour une meilleure précision, choisissez un seuil élevé. Pour un meilleur rappel, choisissez un seuil inférieur. Pour définir un seuil approprié, un client peut collecter un ensemble représentatif d'entrées, étiqueter les champs de texte de chacune d'elles et essayer d'augmenter ou d'abaisser des seuils jusqu'à ce qu'il soit satisfait de l'expérience utilisateur.

  3. Supervision humaine : Si le flux de travail d'une application d'un client comporte un risque élevé ou un cas d'utilisation sensible, tel qu'une décision ayant une incidence sur les droits d'une personne ou sur l'accès à des services essentiels, un contrôle humain doit être incorporé dans le flux de travail de l'application, le cas échéant. L'extraction automatique clé-valeur avec AnalyzeID peut servir d'outil pour réduire les efforts liés à des solutions entièrement manuelles et pour permettre aux humains d'examiner et d'évaluer les documents d'identité.

  4. Cohérence : les clients doivent définir et appliquer des politiques concernant les types d'images d'entrées autorisés, ainsi que la manière dont les humains combinent l'utilisation du seuil de confiance et leur propre jugement pour déterminer les résultats finaux. Ces politiques doivent être cohérentes pour tous les groupes démographiques. La modification incohérente des images d'entrées ou des seuils de confiance pourrait entraîner des résultats injustes pour différents groupes démographiques.

  5. Dérive des performances : les résultats peuvent varier lorsque le client modifie le type d'images envoyé à AnalyzeID ou le service lui-même. Pour faire face à ces changements, les clients doivent envisager de retester périodiquement les performances de Textract et d'ajuster leur flux de travail si nécessaire.

Plus d'informations

Glossaire

Les termes équité et biais désignent l'impact d'un système d'IA sur différentes sous-populations d'utilisateurs (par exemple, selon le sexe ou l'origine ethnique).

Le terme explicabilité désigne la mise en place de mécanismes permettant de comprendre et d'évaluer les résultats d'un système d'IA.

Le terme robustesse désigne la mise en place de mécanismes garantissant le fonctionnement fiable d'un système d'IA.

Les termes confidentialité et sécurité désignent la protection des données contre le vol et la divulgation.

Le terme gouvernance désigne la mise en place de processus pour définir, mettre en œuvre et appliquer des pratiques d'IA responsable au sein d'une organisation.

Le terme transparence désigne la communication d'informations sur un système d'IA afin que les parties prenantes puissent prendre des décisions éclairées quant à leur utilisation du système.