Métriques d'évaluation d'une solution de vérification d'identité PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Métriques pour évaluer une solution de vérification d'identité

À l'échelle mondiale, il y a eu une évolution accélérée vers des expériences utilisateur numériques sans friction. Qu'il s'agisse de s'inscrire sur un site Web, d'effectuer des transactions en ligne ou simplement de se connecter à votre compte bancaire, les organisations tentent activement de réduire les frictions rencontrées par leurs clients tout en améliorant leurs mesures de sécurité, de conformité et de prévention de la fraude. L'évolution vers des expériences utilisateur sans friction a donné naissance à des solutions de vérification d'identité biométrique basée sur le visage visant à répondre à la question « Comment vérifiez-vous une personne dans le monde numérique ? »

La biométrie faciale présente deux avantages clés lorsqu'il s'agit de questions d'identification et d'authentification. Premièrement, il s'agit d'une technologie pratique pour les utilisateurs : il n'est pas nécessaire de se souvenir d'un mot de passe, de relever des défis multifactoriels, de cliquer sur des liens de vérification ou de résoudre des énigmes CAPTCHA. Deuxièmement, un haut niveau de sécurité est atteint : l'identification et l'authentification sur la base de la biométrie faciale sont sécurisées et moins sensibles à la fraude et aux attaques.

Dans cet article, nous nous penchons sur les deux principaux cas d'utilisation de la vérification d'identité : l'intégration et l'authentification. Ensuite, nous plongeons dans les deux mesures clés utilisées pour évaluer la précision d'un système biométrique : le taux de fausses correspondances (également appelé taux de fausses acceptations) et le taux de fausses non-correspondances (également appelé taux de faux rejets). Ces deux mesures sont largement utilisées par les organisations pour évaluer la précision et le taux d'erreur des systèmes biométriques. Enfin, nous discutons d'un cadre et des meilleures pratiques pour effectuer une évaluation d'un service de vérification d'identité.

Reportez-vous à l'accompagnement Carnet Jupyter qui parcourt toutes les étapes mentionnées dans cet article.

Cas d'utilisation : intégration et authentification

Il existe deux principaux cas d'utilisation des solutions biométriques : l'intégration des utilisateurs (souvent appelée vérification) et l'authentification (souvent appelée identification). L'intégration implique une correspondance individuelle des visages entre deux images, par exemple en comparant un selfie à un document d'identification fiable comme un permis de conduire ou un passeport. L'authentification, d'autre part, implique la recherche un à plusieurs d'un visage dans une collection de visages stockée, par exemple la recherche d'une collection de visages d'employés pour voir si un employé est autorisé à accéder à un étage particulier dans un bâtiment.

Les performances de précision des cas d'utilisation d'intégration et d'authentification sont mesurées par les erreurs de faux positifs et de faux négatifs que la solution biométrique peut commettre. Un score de similarité (allant de 0 % signifiant aucune correspondance à 100 % signifiant une correspondance parfaite) est utilisé pour déterminer une correspondance ou une décision de non-correspondance. Un faux positif se produit lorsque la solution considère les images de deux individus différents comme étant la même personne. Un faux négatif, en revanche, signifie que la solution a considéré deux images de la même personne comme différentes.

Intégration : vérification individuelle

Les processus d'intégration basés sur la biométrie simplifient et sécurisent le processus. Plus important encore, cela prépare l'organisation et le client à une expérience d'intégration presque sans friction. Pour ce faire, les utilisateurs sont simplement tenus de présenter une image d'une forme de document d'identification de confiance contenant le visage de l'utilisateur (comme un permis de conduire ou un passeport) ainsi que de prendre une image de selfie pendant le processus d'intégration. Une fois que le système a ces deux images, il compare simplement les visages dans les deux images. Lorsque la similarité est supérieure à un seuil spécifié, alors vous avez une correspondance ; sinon, vous avez une non-correspondance. Le diagramme suivant décrit le processus.

Prenons l'exemple de Julie, une nouvelle utilisatrice ouvrant un compte bancaire numérique. La solution l'invite à prendre une photo de son permis de conduire (étape 2) et à prendre un selfie (étape 3). Une fois que le système a vérifié la qualité des images (étape 4), il compare le visage du selfie au visage du permis de conduire (correspondance un à un) et un score de similarité (étape 5) est produit. Si le score de similarité est inférieur au seuil de similarité requis, la tentative d'intégration de Julie est rejetée. C'est ce qu'on appelle un faux non-match ou un faux rejet : la solution considère deux images d'une même personne comme différentes. D'autre part, si le score de similarité était supérieur à la similarité requise, alors la solution considère que les deux images sont la même personne ou une correspondance.

Authentification : identification un-à-plusieurs

Qu'il s'agisse d'entrer dans un bâtiment, de s'enregistrer dans un kiosque ou d'inviter un utilisateur à prendre un selfie pour vérifier son identité, ce type d'authentification à friction nulle à faible via la reconnaissance faciale est devenu monnaie courante pour de nombreuses organisations. Au lieu d'effectuer une correspondance d'image à image, ce cas d'utilisation d'authentification prend une seule image et la compare à une collection d'images consultables pour une correspondance potentielle. Dans un cas d'utilisation d'authentification typique, l'utilisateur est invité à prendre un selfie, qui est ensuite comparé aux visages stockés dans la collection. Le résultat de la recherche donne zéro, une ou plusieurs correspondances potentielles avec des scores de similarité et des identifiants externes correspondants. Si aucune correspondance n'est renvoyée, l'utilisateur n'est pas authentifié ; cependant, en supposant que la recherche renvoie une ou plusieurs correspondances, le système prend la décision d'authentification en fonction des scores de similarité et des identifiants externes. Si le score de similarité dépasse le seuil de similarité requis et que l'identifiant externe correspond à l'identifiant attendu, l'utilisateur est alors authentifié (mis en correspondance). Le schéma suivant présente un exemple de processus d'authentification biométrique basée sur le visage.

processus d'authentification

Prenons l'exemple de Jose, un chauffeur-livreur de la gig-economy. Le service de livraison authentifie les chauffeurs-livreurs en les invitant à prendre un selfie avant de commencer une livraison à l'aide de l'application mobile de l'entreprise. L'un des problèmes auxquels sont confrontés les fournisseurs de services de l'économie des concerts est le partage d'emploi ; essentiellement deux utilisateurs ou plus partagent le même compte afin de jouer au système. Pour lutter contre cela, de nombreux services de livraison utilisent une caméra embarquée pour prendre des images (étape 2) du chauffeur à des moments aléatoires lors d'une livraison (pour s'assurer que le chauffeur-livreur est le chauffeur autorisé). Dans ce cas, José prend non seulement un selfie au début de sa livraison, mais une caméra embarquée prend des images de lui pendant la livraison. Le système effectue des contrôles de qualité (étape 3) et recherche (étape 4) la collection de conducteurs inscrits pour vérifier l'identité du conducteur. Si un conducteur différent est détecté, le service de livraison de la gig-économie peut enquêter plus avant.

Une fausse correspondance (faux positif) se produit lorsque la solution considère deux images ou plus de personnes différentes comme étant la même personne. Dans notre cas d'utilisation, supposons qu'au lieu du chauffeur autorisé, José laisse son frère Miguel effectuer une de ses livraisons à sa place. Si la solution correspond de manière incorrecte au selfie de Miguel avec les images de José, une fausse correspondance (faux positif) se produit.

Pour lutter contre le potentiel de fausses correspondances, nous recommandons que les collections contiennent plusieurs images de chaque sujet. Il est courant d'indexer des documents d'identification fiables contenant un visage, un selfie au moment de l'intégration et des selfies des derniers contrôles d'identité. L'indexation de plusieurs images d'un sujet permet d'agréger les scores de similarité entre les visages renvoyés, améliorant ainsi la précision de l'identification. De plus, des identifiants externes sont utilisés pour limiter le risque d'une fausse acceptation. Un exemple de règle métier pourrait ressembler à ceci :

SI score de similarité agrégé >= seuil de similarité requis ET identifiant externe == identifiant attendu ALORS authentifier

Principales mesures de précision biométrique

Dans un système biométrique, nous nous intéressons au taux de fausses correspondances (FMR) et au taux de fausses non-correspondances (FNMR) en fonction des scores de similarité des comparaisons de visages et des recherches. Qu'il s'agisse d'un cas d'utilisation d'intégration ou d'authentification, les systèmes biométriques décident d'accepter ou de rejeter les correspondances du visage d'un utilisateur en fonction du score de similarité de deux images ou plus. Comme tout système de décision, il y aura des erreurs lorsque le système accepte ou rejette de manière incorrecte une tentative d'intégration ou d'authentification. Dans le cadre de l'évaluation de votre solution de vérification d'identité, vous devez évaluer le système à différents seuils de similarité pour minimiser les taux de fausses correspondances et de fausses non-correspondances, ainsi que comparer ces erreurs au coût des rejets et des acceptations incorrects. Nous utilisons FMR et FNMR comme nos deux mesures clés pour évaluer les systèmes biométriques faciaux.

Faux taux de non-concordance

Lorsque le système de vérification d'identité ne parvient pas à identifier ou à autoriser correctement un utilisateur authentique, une fausse non-correspondance se produit, également appelée faux négatif. Le taux de fausses non-correspondances (FNMR) est une mesure de la propension du système à identifier ou autoriser de manière incorrecte un utilisateur authentique.

Le FNMR est exprimé en pourcentage d'instances où une tentative d'intégration ou d'authentification est effectuée, où le visage de l'utilisateur est incorrectement rejeté (un faux négatif) car le score de similarité est inférieur au seuil prescrit.

Un vrai positif (TP) est lorsque la solution considère que deux images ou plus de la même personne sont identiques. Autrement dit, la similarité de la comparaison ou de la recherche est supérieure au seuil de similarité requis.

Un faux négatif (FN) se produit lorsque la solution considère que deux images ou plus de la même personne sont différentes. Autrement dit, la similarité de la comparaison ou de la recherche est inférieure au seuil de similarité requis.

La formule de la FNMR est :

FNMR = nombre de faux négatifs / (nombre de vrais positifs + nombre de faux négatifs)

Par exemple, supposons que nous ayons 10,000 100 tentatives d'authentification authentiques mais que 9,900 soient refusées car leur similarité avec l'image ou la collection de référence est inférieure au seuil de similarité spécifié. Ici, nous avons 100 1.0 vrais positifs et XNUMX faux négatifs, donc notre FNMR est de XNUMX %

FNMR = 100 / (9900 + 100) ou 1.0 %

Taux de fausses correspondances

Lorsqu'un système de vérification d'identité identifie ou autorise à tort un utilisateur non autorisé comme authentique, une fausse correspondance se produit, également appelée faux positif. Le taux de fausses correspondances (FMR) est une mesure de la tendance du système à identifier ou autoriser de manière incorrecte un utilisateur non autorisé. Il est mesuré par le nombre de reconnaissances ou d'authentifications de faux positifs divisé par le nombre total de tentatives d'identification.

Un faux positif se produit lorsque la solution considère deux images ou plus de personnes différentes comme étant la même personne. Autrement dit, le score de similarité de la comparaison ou de la recherche est supérieur au seuil de similarité requis. Essentiellement, le système identifie ou autorise incorrectement un utilisateur alors qu'il aurait dû rejeter sa tentative d'identification ou d'authentification.

La formule du FMR est :

FMR = nombre de faux positifs / (total des tentatives)

Par exemple, supposons que nous ayons 100,000 100 tentatives d'authentification, mais que 100 utilisateurs fictifs sont autorisés à tort, car leur similarité avec l'image ou la collection de référence dépasse le seuil de similarité spécifié. Ici, nous avons 0.01 faux positifs, donc notre FMR est de XNUMX %

FMR = 100 / (100,000 0.01) ou XNUMX %

Taux de fausses correspondances vs taux de fausses non-correspondances

Le taux de fausses correspondances et le taux de fausses non-correspondances sont en contradiction l'un avec l'autre. À mesure que le seuil de similarité augmente, le potentiel d'une fausse correspondance diminue, tandis que le potentiel d'une fausse non-correspondance augmente. Une autre façon de penser à ce compromis est qu'à mesure que le seuil de similarité augmente, la solution devient plus restrictive, faisant moins de correspondances à faible similarité. Par exemple, il est courant que les cas d'utilisation impliquant la sûreté et la sécurité publiques définissent un seuil de similarité de correspondance assez élevé (99 et plus). Alternativement, une organisation peut choisir un seuil de similarité moins restrictif (90 et plus), où l'impact de la friction sur l'utilisateur est plus important. Le schéma suivant illustre ces compromis. Le défi pour les organisations est de trouver un seuil qui minimise à la fois FMR et FNMR en fonction de vos exigences organisationnelles et applicatives.

Compromis FMR vs FNMR

La sélection d'un seuil de similarité dépend de l'application métier. Par exemple, supposons que vous souhaitiez limiter la friction des clients lors de l'intégration (un seuil de similarité moins restrictif, comme illustré dans la figure suivante à gauche). Ici, vous pourriez avoir un seuil de similarité requis inférieur et êtes prêt à accepter le risque d'intégrer des utilisateurs lorsque la confiance dans la correspondance entre leur selfie et leur permis de conduire est plus faible. En revanche, supposons que vous souhaitiez vous assurer que seuls les utilisateurs autorisés accèdent à une application. Ici, vous pouvez opérer à un seuil de similarité assez restrictif (comme le montre la figure de droite).

seuil de similarité inférieur seuil de similarité élevé

Étapes de calcul des taux de fausse correspondance et de non-correspondance

Il existe plusieurs façons de calculer ces deux métriques. Ce qui suit est une approche relativement simple consistant à diviser les étapes en rassemblant des paires d'images authentiques, en créant une paire d'imposteurs (images qui ne devraient pas correspondre) et enfin en utilisant une sonde pour boucler sur les paires d'images correspondantes et non correspondantes attendues, capturant le similarité qui en résulte. Les étapes sont les suivantes:

  1. Rassemblez un ensemble d'images d'échantillons authentiques. Nous vous recommandons de commencer avec un ensemble de paires d'images et d'attribuer un identifiant externe, qui est utilisé pour déterminer la correspondance officielle. La paire se compose des images suivantes :
    1. Image source – Votre image source de confiance, par exemple un permis de conduire.
    2. Image cible - Votre selfie ou image avec laquelle vous allez comparer.
  2. Rassemblez un ensemble d'images de correspondances d'imposteurs. Ce sont des paires d'images où la source et la cible ne correspondent pas. Ceci est utilisé pour évaluer le FMR (la probabilité que le système corresponde de manière incorrecte aux visages de deux utilisateurs différents). Vous pouvez créer un ensemble d'images d'imposteur à l'aide des paires d'images en créant un produit cartésien des images, puis en filtrant et en échantillonnant le résultat.
  3. Sondez les ensembles de correspondance authentique et imposteur en bouclant sur les paires d'images, en comparant la source et la cible imposteuse et en capturant la similitude résultante.
  4. Calculez FMR et FNMR en calculant les faux positifs et les faux négatifs à différents seuils de similarité minimum.

Vous pouvez évaluer le coût de FMR et FNMR à différents seuils de similarité par rapport au besoin de votre application.

Étape 1 : Rassemblez des échantillons de paires d'images authentiques

Le choix d'un échantillon représentatif de paires d'images à évaluer est essentiel lors de l'évaluation d'un service de vérification d'identité. La première étape consiste à identifier un véritable ensemble de paires d'images. Il s'agit d'images source et cible connues d'un utilisateur. L'appariement d'images authentiques est utilisé pour évaluer le FNMR, essentiellement la probabilité que le système ne corresponde pas à deux visages de la même personne. L'une des premières questions souvent posées est "Combien de paires d'images sont nécessaires?" La réponse est que cela dépend de votre cas d'utilisation, mais les conseils généraux sont les suivants :

  • Entre 100 et 1,000 XNUMX paires d'images fournissent une mesure de faisabilité
  • Jusqu'à 10,000 XNUMX paires d'images sont suffisamment grandes pour mesurer la variabilité entre les images
  • Plus de 10,000 XNUMX paires d'images fournissent une mesure de la qualité opérationnelle et de la généralisabilité

Plus de données, c'est toujours mieux ; cependant, comme point de départ, utilisez au moins 1,000 10,000 paires d'images. Cependant, il n'est pas rare d'utiliser plus de XNUMX XNUMX paires d'images pour se concentrer sur un FNMR ou FMR acceptable pour un problème métier donné.

Voici un exemple de fichier de mappage de paires d'images. Nous utilisons le fichier de mappage de paires d'images pour piloter le reste du processus d'évaluation.

EXTERNAL_ID SOURCE CIBLE TEST
9055 9055_M0.jpeg 9055_M1.jpeg véritable
19066 19066_M0.jpeg 19066_M1.jpeg véritable
11396 11396_M0.jpeg 11396_M1.jpeg véritable
12657 12657_M0.jpeg 12657_M1.jpeg véritable
... . . .

Étape 2 : Générer une paire d'images d'imposteur set

Maintenant que vous disposez d'un fichier de paires d'images authentiques, vous pouvez créer un produit cartésien d'images cible et source où les identifiants externes ne correspondent pas. Cela produit des paires source-cible qui ne devraient pas correspondre. Cet appariement est utilisé pour évaluer le FMR, essentiellement la probabilité que le système associe le visage d'un utilisateur à celui d'un autre utilisateur.

id_externe SOURCE CIBLE TEST
114192 114192_4M49.jpeg 307107_00M17.jpeg Imposter
105300 105300_04F42.jpeg 035557_00M53.jpeg Imposter
110771 110771_3M44.jpeg 120381_1M33.jpeg Imposter
281333 281333_04F35.jpeg 314769_01M17.jpeg Imposter
40081 040081_2F52.jpeg 326169_00F32.jpeg Imposter
... . . .

Étape 3 : Sonder les ensembles de paires d'images authentiques et imposteurs

A l'aide d'un programme pilote, nous appliquons les Amazon Reconnaissance API CompareFaces sur les paires d'images et capturez la similitude. Vous pouvez également capturer des informations supplémentaires telles que la pose, la qualité et d'autres résultats de la comparaison. Les scores de similarité sont utilisés pour calculer les taux de fausse correspondance et de non-correspondance à l'étape suivante.

Dans l'extrait de code suivant, nous appliquons l'API CompareFaces à toutes les paires d'images et remplissons tous les scores de similarité dans un tableau :

obj = s3.get_object(Bucket= bucket_name , Key = csv_file)

df = pd.read_csv(io.BytesIO(obj['Body'].read()), encoding='utf8')
def compare_faces(source_file, target_file, threshold = 0):
    response=rekognition.compare_faces(SimilarityThreshold=threshold,
                                        SourceImage={'S3Object': {
                                                    'Bucket': bucket_name,
                                                    'Name':source_file}},
                                        TargetImage={'S3Object': {
                                                    'Bucket': bucket_name,
                                                    'Name':target_file}})
df_similarity = df.copy()
df_similarity["SIMILARITY"] = None
for index, row in df.iterrows():
    source_file = dataset_folder + row["SOURCE"]
    target_file = dataset_folder + row["TARGET"]
    response_score = compare_faces(source_file, target_file)
    df_similarity._set_value(index,"SIMILARITY", response_score)
    df_similarity.head()

L'extrait de code donne la sortie suivante.

EXTERNAL_ID SOURCE CIBLE TEST SIMILARITÉ
9055 9055_M0.jpeg 9055_M1.jpeg véritable 98.3
19066 19066_M0.jpeg 19066_M1.jpeg véritable 94.3
11396 11396_M0.jpeg 11396_M1.jpeg véritable 96.1
... . . . .
114192 114192_4M49.jpeg 307107_00M17.jpeg Imposter 0.0
105300 105300_04F42.jpeg 035557_00M53.jpeg Imposter 0.0
110771 110771_3M44.jpeg 120381_1M33.jpeg Imposter 0.0

L'analyse de la distribution des scores de similarité par des tests est un point de départ pour comprendre le score de similarité par paires d'images. L'extrait de code et le graphique de sortie suivants illustrent un exemple simple de la distribution du score de similarité par ensemble de tests, ainsi que les statistiques descriptives qui en résultent :

sns.boxplot(data=df_similarity,
            x=df_similarity["SIMILARITY"],
            y=df_similarity["TEST"]).set(xlabel='Similarity Score',
            ylabel=None,
            title = "Similarity Score Distribution")
plt.show()

distribution des scores de similarité

df_descriptive_stats = pd.DataFrame(columns=['test','count', 'min' , 'max', 'mean', 'median', 'std'])

tests = ["Genuine", "Imposter"]

for test in tests:
    count = df_similarity['SIMILARITY'].loc[df_similarity['TEST'] == test].count()
    mean = df_similarity['SIMILARITY'].loc[df_similarity['TEST'] == test].mean()
    max_ = df_similarity['SIMILARITY'].loc[df_similarity['TEST'] == test].max()
    min_ = df_similarity['SIMILARITY'].loc[df_similarity['TEST'] == test].min()
    median = df_similarity['SIMILARITY'].loc[df_similarity['TEST'] == test].median()
    std = df_similarity['SIMILARITY'].loc[df_similarity['TEST'] == test].std()

    new_row = {'test': test,
                'count': count,
                'min': min_,
                'max': max_,
                'mean': mean,
                'median':median,
                'std': std}
    df_descriptive_stats = df_descriptive_stats.append(new_row,
    ignore_index=True)

df_descriptive_stats

tester compter m. max signifier médiane std
véritable 204 0.2778 99.9957 91.7357 99.0961 19.9097
imposteur 1020 0.0075 87.3893 2.8111 0.8330 7.3496

Dans cet exemple, nous pouvons voir que la similarité moyenne et médiane pour les paires de visages authentiques était de 91.7 et 99.1, alors que pour les paires d'imposteurs, elle était de 2.8 et 0.8, respectivement. Comme prévu, cela montre les scores de similarité élevés pour les paires d'images authentiques et les faibles scores de similarité pour les paires d'images imposteurs.

Étape 4 : Calculer FMR et FNMR à différents niveaux de seuil de similarité

Dans cette étape, nous calculons les taux de faux appariement et de non-appariement à différents seuils de similarité. Pour ce faire, nous parcourons simplement les seuils de similarité (par exemple, 90-100). À chaque seuil de similarité sélectionné, nous calculons notre matrice de confusion contenant les nombres de vrais positifs, vrais négatifs, faux positifs et faux négatifs, qui sont utilisés pour calculer le FMR et le FNMR à chaque similarité sélectionnée.

Réel
Prédit
. Match Aucune concordance
>= similitude sélectionnée TP FP
< similarité sélectionnée FN TN

Pour ce faire, nous créons une fonction qui renvoie les nombres de faux positifs et négatifs, et parcourons une plage de scores de similarité (90-100) :

similarity_thresholds = [80,85,90,95,96,97,98,99]

# create output df
df_cols = ['Similarity Threshold', 'TN' , 'FN', 'TP', 'FP', 'FNMR (%)', 'FMR (%)']
comparison_df = pd.DataFrame(columns=df_cols)

# create columns for y_actual and y_pred
df_analysis = df_similarity.copy()
df_analysis["y_actual"] = None
df_analysis["y_pred"] = None

for threshold in similarity_thresholds:
    # Create y_pred and y_actual columns, 1 == match, 0 == no match
    for index, row in df_similarity.iterrows():
        # set y_pred
        if row["SIMILARITY"] >= threshold:
            df_analysis._set_value(index,"y_pred", 1)
        else:
            df_analysis._set_value(index,"y_pred", 0)

        # set y_actual
        if row["TEST"] == "Genuine":
            df_analysis._set_value(index,"y_actual", 1)
        else:
            df_analysis._set_value(index,"y_actual", 0)

    tn, fp, fn, tp = confusion_matrix(df_analysis['y_actual'].tolist(),
                                      df_analysis['y_pred'].tolist()).ravel()
    FNMR = fn / (tp + fn)
    FMR = fp / (tn+fp+fn+tp)

    new_row = {'Similarity Threshold': threshold,
                'TN': tn,
                'FN': fn,
                'TP': tp,
                'FP': fp,
                'FNMR (%)':FNMR,
                'FMR (%)': FMR}
    comparison_df = comparison_df.append(new_row,ignore_index=True)

comparison_df

Le tableau suivant présente les résultats des comptages à chaque seuil de similarité.

Seuil de similarité TN FN TP FP FNMR FMR
80 1019 22 182 1 0.1% 0.1%
85 1019 23 181 1 0.11% 0.1%
90 1020 35 169 0 0.12% 0.0%
95 1020 51 153 0 0.2% 0.0%
96 1020 53 151 0 0.25% 0.0%
97 1020 60 144 0 0.3% 0.0%
98 1020 75 129 0 0.4% 0.0%
99 1020 99 105 0 0.5% 0.0%

Quel est l'impact du seuil de similarité sur le taux de fausses non-correspondances ?

Supposons que nous ayons 1,000 10 tentatives d'intégration d'utilisateurs authentiques et que nous rejetions 95 de ces tentatives sur la base d'une similarité minimale requise de 10 % pour être considérées comme une correspondance. Ici, nous rejetons 1.0 tentatives d'intégration authentiques (faux négatifs) car leur similarité est inférieure au seuil de similarité minimum requis spécifié. Dans ce cas, notre FNMR est de XNUMX %.

Réel
Prédit
. Match Aucune concordance
>= 95% similarité 990 0
< 95% similarité 10 0
. la totalité de votre cycle de coaching doit être payée avant votre dernière session. 1,000 .

FNMR = nombre de faux négatifs / (nombre de vrais positifs + nombre de faux négatifs)

FNMR = 10 / (990 + 10) ou 1.0 %

En revanche, supposons qu'au lieu d'avoir 1,000 990 utilisateurs authentiques à intégrer, nous ayons 10 utilisateurs authentiques et 95 utilisateurs imposteurs (faux positifs). À une similarité minimale de 1,000 %, supposons que nous acceptons les 1 XNUMX utilisateurs comme authentiques. Ici, nous aurions un FMR de XNUMX%.

Réel
Prédit
. Match Aucune concordance la totalité de votre cycle de coaching doit être payée avant votre dernière session.
>= 95% similarité 990 10 1,000
< 95% similarité 0 0 .

FMR = nombre de faux positifs / (total des tentatives)

FMR = 10 / (1,000 1.0) ou XNUMX %

Évaluation des coûts de FMR et FNMR lors de l'intégration

Dans un cas d'utilisation d'intégration, le coût d'une fausse non-correspondance (un rejet) est généralement associé à une friction supplémentaire de l'utilisateur ou à la perte d'un enregistrement. Par exemple, dans notre cas d'utilisation bancaire, supposons que Julie présente deux images d'elle-même mais qu'elle soit incorrectement rejetée au moment de l'intégration car la similarité entre les deux images est inférieure à la similarité sélectionnée (une fausse non-correspondance). L'institution financière peut risquer de perdre Julie en tant que client potentiel, ou cela peut causer des frictions supplémentaires à Julie en l'obligeant à effectuer des démarches pour prouver son identité.

À l'inverse, supposons que les deux images de Julie représentent des personnes différentes et que l'intégration de Julie aurait dû être rejetée. Dans le cas où Julie est acceptée à tort (une fausse correspondance), le coût et le risque pour l'institution financière sont bien différents. Il pourrait y avoir des problèmes réglementaires, un risque de fraude et d'autres risques associés aux transactions financières.

Utilisation responsable

L'intelligence artificielle (IA) appliquée par le biais de l'apprentissage automatique (ML) sera l'une des technologies les plus transformationnelles de notre génération, s'attaquant à certains des problèmes les plus difficiles de l'humanité, augmentant les performances humaines et maximisant la productivité. L'utilisation responsable de ces technologies est essentielle pour favoriser l'innovation continue. AWS s'engage à développer des services d'IA et de ML équitables et précis et à vous fournir les outils et les conseils nécessaires pour créer des applications d'IA et de ML de manière responsable.

Au fur et à mesure que vous adoptez et augmentez votre utilisation de l'IA et du ML, AWS propose plusieurs ressources basées sur notre expérience pour vous aider dans le développement et l'utilisation responsables de l'IA et du ML :

Bonnes pratiques et erreurs courantes à éviter

Dans cette section, nous abordons les meilleures pratiques suivantes :

  • Utiliser un échantillon d'images suffisamment large
  • Évitez les ensembles de données de visage open source et synthétiques
  • Éviter la manipulation manuelle et synthétique des images
  • Vérifier la qualité de l'image au moment de l'évaluation et au fil du temps
  • Surveiller FMR et FNMR au fil du temps
  • Utilisez un humain dans l'examen de la boucle
  • Restez à jour avec Amazon Rekognition

Utiliser un échantillon d'images suffisamment large

Utilisez un échantillon d'images suffisamment grand mais raisonnable. Qu'est-ce qu'une taille d'échantillon raisonnable ? Cela dépend du problème de l'entreprise. Si vous êtes un employeur et que vous souhaitez authentifier 10,000 10,000 employés, il est probablement raisonnable d'utiliser les 5,000 20,000 images. Cependant, supposons que vous soyez une organisation avec des millions de clients que vous souhaitez intégrer. Dans ce cas, prendre un échantillon représentatif de clients tel que XNUMX XNUMX à XNUMX XNUMX est probablement suffisant. Voici quelques indications sur la taille de l'échantillon :

  • Une taille d'échantillon de 100 – 1,000 XNUMX paires d'images prouvent la faisabilité
  • Une taille d'échantillon de 1,000 – 10,000 XNUMX paires d'images sont utiles pour mesurer la variabilité entre les images
  • Une taille d'échantillon de 10,000 – 1 million de paires d'images fournissent une mesure de la qualité opérationnelle et de la généralisabilité

La clé de l'échantillonnage des paires d'images est de s'assurer que l'échantillon offre suffisamment de variabilité dans la population de visages de votre application. Vous pouvez étendre davantage votre échantillonnage et vos tests pour inclure des informations démographiques telles que le teint, le sexe et l'âge.

Évitez les ensembles de données de visage open source et synthétiques

Il existe des dizaines d'ensembles de données d'images faciales open source ainsi que des ensembles de visages synthétiques étonnamment réalistes qui sont souvent utilisés dans la recherche et pour étudier la faisabilité. Le défi est que ces ensembles de données ne sont généralement pas utiles pour 99 % des cas d'utilisation réels simplement parce qu'ils ne sont pas représentatifs des caméras, des visages et de la qualité des images que votre application est susceptible de rencontrer dans la nature. Bien qu'ils soient utiles pour le développement d'applications, les mesures de précision de ces ensembles d'images ne se généralisent pas à ce que vous rencontrerez dans votre propre application. Au lieu de cela, nous vous recommandons de commencer avec un échantillon représentatif d'images réelles de votre solution, même si les exemples de paires d'images sont petits (moins de 1,000 XNUMX).

Éviter la manipulation manuelle et synthétique des images

Il y a souvent des cas marginaux que les gens sont intéressés à comprendre. Des choses comme la qualité de capture d'image ou l'obscurcissement de traits spécifiques du visage sont toujours intéressantes. Par exemple, nous sommes souvent interrogés sur l'impact de l'âge et de la qualité de l'image sur la reconnaissance faciale. Vous pouvez simplement vieillir synthétiquement un visage ou manipuler l'image pour faire paraître le sujet plus âgé, ou manipuler la qualité de l'image, mais cela ne se traduit pas bien par le vieillissement réel des images. Au lieu de cela, notre recommandation est de rassembler un échantillon représentatif de cas marginaux réels que vous souhaitez tester.

Vérifier la qualité de l'image au moment de l'évaluation et au fil du temps

La technologie des caméras et des applications évolue assez rapidement avec le temps. Comme meilleure pratique, nous vous recommandons de surveiller la qualité de l'image au fil du temps. De la taille des visages capturés (à l'aide de boîtes englobantes), à la luminosité et à la netteté d'une image, en passant par la pose d'un visage, ainsi que les obscurcissements potentiels (chapeaux, lunettes de soleil, barbes, etc.), toutes ces images et les traits du visage changent avec le temps.

Surveiller FNMR et FMR au fil du temps

Des changements se produisent, qu'il s'agisse des images, de l'application ou des seuils de similarité utilisés dans l'application. Il est important de surveiller périodiquement les taux de fausse correspondance et de non-correspondance au fil du temps. Des changements dans les tarifs (même des changements subtils) peuvent souvent indiquer des défis en amont avec l'application ou la façon dont l'application est utilisée. Les modifications apportées aux seuils de similarité et aux règles métier utilisées pour prendre des décisions d'acceptation ou de rejet peuvent avoir un impact majeur sur les expériences utilisateur d'intégration et d'authentification.

Utilisez un humain dans l'examen de la boucle

Les systèmes de vérification d'identité prennent des décisions automatisées de correspondance et de non-correspondance en fonction de seuils de similarité et de règles métier. Outre les exigences de conformité réglementaires et internes, un processus important dans tout système de décision automatisé consiste à utiliser des examinateurs humains dans le cadre de la surveillance continue du processus de décision. La surveillance humaine de ces systèmes décisionnels automatisés assure la validation et l'amélioration continue ainsi que la transparence du processus décisionnel automatisé.

Restez à jour avec Amazon Rekognition

Le modèle de visages Amazon Recognition est mis à jour périodiquement (généralement une fois par an) et est actuellement sur la version 6. Cette version mise à jour a apporté des améliorations importantes à la précision et à l'indexation. Il est important de rester à jour avec les nouvelles versions de modèles et de comprendre comment utiliser ces nouvelles versions dans votre application de vérification d'identité. Lorsque de nouvelles versions du modèle de visage d'Amazon Rekognition sont lancées, il est recommandé de relancer votre processus d'évaluation de vérification d'identité et de déterminer tout impact potentiel (positif et négatif) sur vos taux de fausse correspondance et de non-correspondance.

Conclusion

Cet article traite des éléments clés nécessaires pour évaluer l'aspect performance de votre solution de vérification d'identité en termes de diverses mesures de précision. Cependant, la précision n'est qu'une des nombreuses dimensions que vous devez évaluer lors du choix d'un service de modération de contenu particulier. Il est essentiel que vous incluiez d'autres paramètres, tels que l'ensemble des fonctionnalités du service, la facilité d'utilisation, les intégrations existantes, la confidentialité et la sécurité, les options de personnalisation, les implications d'évolutivité, le service client et la tarification.

Pour en savoir plus sur la vérification d'identité dans Amazon Rekognition, consultez Vérification d'identité avec Amazon Rekognition.


À propos des auteurs

Métriques d'évaluation d'une solution de vérification d'identité PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Mike Ames est un data scientist devenu spécialiste des solutions de vérification d'identité, avec une vaste expérience dans le développement de solutions d'apprentissage automatique et d'IA pour protéger les organisations contre la fraude, le gaspillage et les abus. Dans ses temps libres, vous pouvez le trouver en randonnée, en VTT ou jouer au freebee avec son chien Max.

Métriques d'évaluation d'une solution de vérification d'identité PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Amit Gupta est architecte senior de solutions de services d'IA chez AWS. Il est passionné par l'offre aux clients de solutions d'apprentissage automatique bien architecturées à grande échelle.

Métriques d'évaluation d'une solution de vérification d'identité PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Zuhayr Raghib est architecte de solutions de services IA chez AWS. Spécialisé dans l'IA/ML appliquée, il se passionne pour permettre aux clients d'utiliser le cloud pour innover plus rapidement et transformer leurs activités.

Métriques d'évaluation d'une solution de vérification d'identité PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Marcel Pividal est un architecte senior de solutions de services d'IA dans l'organisation spécialisée mondiale. Marcel a plus de 20 ans d'expérience dans la résolution de problèmes commerciaux grâce à la technologie pour les fintechs, les fournisseurs de paiement, l'industrie pharmaceutique et les agences gouvernementales. Ses domaines d'intérêt actuels sont la gestion des risques, la prévention de la fraude et la vérification de l'identité.

Horodatage:

Plus de Apprentissage automatique AWS