Metrici pentru evaluarea unei soluții de verificare a identității PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Metrici pentru evaluarea unei soluții de verificare a identității

La nivel global, a existat o schimbare accelerată către experiențe digitale fără fricțiuni ale utilizatorilor. Fie că este vorba despre înregistrarea pe un site web, tranzacții online sau pur și simplu conectarea la contul dvs. bancar, organizațiile încearcă în mod activ să reducă frecarea experienței clienților lor și, în același timp, își sporesc măsurile de securitate, conformitate și prevenirea fraudei. Trecerea către experiențele utilizatorilor fără fricțiuni a dat naștere la soluții de verificare a identității biometrice bazate pe fețe, menite să răspundă la întrebarea „Cum verifici o persoană în lumea digitală?”

Există două avantaje cheie ale biometriei faciale atunci când vine vorba de probleme de identificare și autentificare. În primul rând, este o tehnologie convenabilă pentru utilizatori: nu este nevoie să vă amintiți o parolă, să faceți față provocărilor cu mai mulți factori, să faceți clic pe linkuri de verificare sau să rezolvați puzzle-uri CAPTCHA. În al doilea rând, se atinge un nivel ridicat de securitate: identificarea și autentificarea pe baza biometriei faciale este sigură și mai puțin susceptibilă la fraudă și atacuri.

În această postare, ne aprofundăm în cele două cazuri de utilizare principale ale verificării identității: onboarding și autentificare. Apoi ne aprofundăm în cele două valori cheie utilizate pentru a evalua acuratețea unui sistem biometric: rata de potrivire falsă (cunoscută și sub numele de rata de acceptare falsă) și rata de nepotrivire falsă (cunoscută și ca rata de respingere falsă). Aceste două măsuri sunt utilizate pe scară largă de către organizații pentru a evalua acuratețea și rata de eroare a sistemelor biometrice. În cele din urmă, discutăm despre un cadru și cele mai bune practici pentru efectuarea unei evaluări a unui serviciu de verificare a identității.

Consultați documentul însoțitor Caiet Jupyter care parcurge toți pașii menționați în această postare.

Cazuri de utilizare: Onboarding și Autentificare

Există două cazuri de utilizare principale pentru soluțiile biometrice: integrarea utilizatorului (denumită adesea verificare) și autentificare (denumită adesea identificare). Integrarea implică potrivirea unu-la-unu a fețelor între două imagini, de exemplu, compararea unui selfie cu un document de identificare de încredere, cum ar fi permisul de conducere sau pașaportul. Autentificarea, pe de altă parte, implică căutarea unu-la-mulți a unei fețe pe o colecție stocată de fețe, de exemplu căutarea într-o colecție de fețe de angajat pentru a vedea dacă un angajat are acces autorizat la un anumit etaj dintr-o clădire.

Performanța acurateței cazurilor de utilizare a integrării și a autentificării este măsurată prin erorile fals pozitive și fals negative pe care le poate face soluția biometrică. Un scor de similaritate (de la 0% care înseamnă că nu se potrivește până la 100% care înseamnă o potrivire perfectă) este utilizat pentru a determina o potrivire sau o decizie de non-potrivire. Un fals pozitiv apare atunci când soluția consideră că imaginile a doi indivizi diferiți sunt aceeași persoană. Un fals negativ, pe de altă parte, înseamnă că soluția a considerat două imagini ale aceleiași persoane ca fiind diferite.

Incorporare: verificare unu-la-unu

Procesele de integrare bazate pe biometrice simplifică și securizează procesul. Cel mai important, pregătește organizația și clientul pentru o experiență de îmbarcare aproape fără fricțiuni. Pentru a face acest lucru, utilizatorii trebuie pur și simplu să prezinte o imagine a unei forme de document de identificare de încredere care conține chipul utilizatorului (cum ar fi permisul de conducere sau pașaportul), precum și să facă o imagine selfie în timpul procesului de îmbarcare. După ce sistemul are aceste două imagini, pur și simplu compară fețele din cele două imagini. Când asemănarea este mai mare decât un prag specificat, atunci aveți o potrivire; în caz contrar, ai o nepotrivire. Următoarea diagramă prezintă procesul.

Luați în considerare exemplul lui Julie, un nou utilizator care deschide un cont bancar digital. Soluția o determină să facă o poză cu permisul de conducere (pasul 2) și să facă un selfie (pasul 3). După ce sistemul verifică calitatea imaginilor (pasul 4), compară chipul din selfie cu chipul de pe permisul de conducere (potrivire unu-la-unu) și se produce un scor de similaritate (pasul 5). Dacă scorul de similaritate este mai mic decât pragul de similaritate necesar, atunci încercarea de integrare a lui Julie este respinsă. Aceasta este ceea ce numim o falsă nepotrivire sau falsă respingere: soluția a considerat două imagini ale aceleiași persoane ca fiind diferite. Pe de altă parte, dacă scorul de similaritate a fost mai mare decât asemănarea cerută, atunci soluția consideră că cele două imagini sunt aceeași persoană sau o potrivire.

Autentificare: identificare unu-la-mulți

De la intrarea într-o clădire, până la înregistrarea la un chioșc, până la solicitarea unui utilizator pentru un selfie pentru a-și verifica identitatea, acest tip de autentificare cu frecare de la zero până la minim prin recunoașterea facială a devenit obișnuit pentru multe organizații. În loc să efectueze potrivirea imagine-la-imagine, acest caz de utilizare de autentificare preia o singură imagine și o compară cu o colecție de imagini care poate fi căutată pentru o potențială potrivire. Într-un caz obișnuit de utilizare a autentificării, utilizatorului i se cere să facă un selfie, care este apoi comparat cu fețele stocate în colecție. Rezultatul căutării generează zero, una sau mai multe potriviri potențiale cu scoruri de similaritate corespunzătoare și identificatori externi. Dacă nu se returnează nicio potrivire, atunci utilizatorul nu este autentificat; totuși, presupunând că căutarea returnează una sau mai multe potriviri, sistemul ia decizia de autentificare pe baza scorurilor de similaritate și a identificatorilor externi. Dacă scorul de similaritate depășește pragul de similaritate necesar și identificatorul extern se potrivește cu identificatorul așteptat, atunci utilizatorul este autentificat (potrivit). Următoarea diagramă prezintă un exemplu de proces de autentificare biometrică bazată pe chip.

procesul de autentificare

Luați în considerare exemplul lui Jose, un șofer de livrare în economie de concerte. Serviciul de livrare autentifică șoferii de livrare, solicitându-i șoferului să facă un selfie înainte de a începe o livrare folosind aplicația mobilă a companiei. O problemă cu care se confruntă furnizorii de servicii din gig-economie este împărțirea locurilor de muncă; în esență, doi sau mai mulți utilizatori partajează același cont pentru a juca sistemul. Pentru a combate acest lucru, multe servicii de livrare folosesc o cameră din mașină pentru a captura imagini (pasul 2) ale șoferului în momente aleatorii în timpul unei livrări (pentru a se asigura că șoferul de livrare este șoferul autorizat). În acest caz, Jose nu numai că face un selfie la începutul livrării, dar o cameră din mașină face imagini cu el în timpul livrării. Sistemul efectuează verificări de calitate (pasul 3) și caută (pasul 4) colecția șoferilor înregistrați pentru a verifica identitatea șoferului. Dacă este detectat un alt șofer, atunci serviciul de livrare gig-economie poate investiga în continuare.

O potrivire falsă (fals pozitiv) apare atunci când soluția a considerat că două sau mai multe imagini ale unor persoane diferite sunt aceeași persoană. În cazul nostru de utilizare, să presupunem că, în loc de șoferul autorizat, Jose îl lasă pe fratele său Miguel să ia una dintre livrările sale pentru el. Dacă soluția potrivește incorect selfie-ul lui Miguel cu imaginile lui Jose, atunci apare o potrivire falsă (fals pozitiv).

Pentru a combate potențialul unei potriviri false, recomandăm ca colecțiile să conțină mai multe imagini ale fiecărui subiect. Este o practică obișnuită să indexați documentele de identificare de încredere care conțin o față, un selfie în momentul integrării și selfie-uri de la ultimele verificări de identificare. Indexarea mai multor imagini ale unui subiect oferă posibilitatea de a agrega scorurile de similaritate pe fețe returnate, îmbunătățind astfel acuratețea identificării. În plus, identificatorii externi sunt utilizați pentru a limita riscul unei acceptări false. Un exemplu de regulă de afaceri ar putea arăta cam așa:

DACĂ scorul de similaritate agregat >= pragul de asemănare necesar ȘI identificatorul extern == identificatorul așteptat, atunci se autentifică

Măsuri cheie de precizie biometrică

Într-un sistem biometric, suntem interesați de rata de potrivire falsă (FMR) și rata de nonpotrivire falsă (FNMR) pe baza scorurilor de similaritate din comparațiile și căutările de fețe. Indiferent dacă este vorba de un caz de utilizare de integrare sau de autentificare, sistemele biometrice decid să accepte sau să respingă potrivirile feței unui utilizator pe baza scorului de similaritate a două sau mai multe imagini. Ca orice sistem de decizie, vor exista erori în care sistemul acceptă sau respinge în mod incorect o încercare de integrare sau autentificare. Ca parte a evaluării soluției dvs. de verificare a identității, trebuie să evaluați sistemul la diferite praguri de similaritate pentru a minimiza ratele de potrivire falsă și ratele de nepotrivire falsă, precum și pentru a contrasta aceste erori cu costul respingerii și acceptărilor incorecte. Folosim FMR și FNMR ca două valori cheie pentru a evalua sistemele biometrice faciale.

Rată falsă de nepotrivire

Atunci când sistemul de verificare a identității nu reușește să identifice sau să autorizeze corect un utilizator autentic, apare o nepotrivire falsă, cunoscută și sub numele de fals negativ. Rata falsă de nepotrivire (FNMR) este o măsură a gradului de predispoziție a sistemului la identificarea sau autorizarea incorectă a unui utilizator autentic.

FNMR este exprimat ca procent din cazurile în care se face o încercare de integrare sau de autentificare, în care fața utilizatorului este respinsă incorect (un fals negativ), deoarece scorul de similaritate este sub pragul prescris.

Un adevărat pozitiv (TP) este atunci când soluția consideră că două sau mai multe imagini ale aceleiași persoane sunt la fel. Adică, asemănarea comparației sau a căutării este peste pragul de similaritate necesar.

Un fals negativ (FN) este atunci când soluția consideră că două sau mai multe imagini ale aceleiași persoane sunt diferite. Adică, asemănarea comparației sau a căutării este sub pragul de similaritate necesar.

Formula pentru FNMR este:

FNMR = număr fals negativ / (număr pozitiv adevărat + număr fals negativ)

De exemplu, să presupunem că avem 10,000 de încercări de autentificare autentică, dar 100 sunt refuzate deoarece similitudinea lor cu imaginea sau colecția de referință scade sub pragul de similaritate specificat. Aici avem 9,900 de pozitive adevărate și 100 de negative false, prin urmare RMN-ul nostru este de 1.0%

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

Rata de potrivire falsă

Atunci când un sistem de verificare a identității identifică sau autorizează incorect un utilizator neautorizat ca fiind autentic, are loc o potrivire falsă, cunoscută și sub numele de fals pozitiv. Rata de potrivire falsă (FMR) este o măsură a cât de predispus este sistemul să identifice sau să autorizeze incorect un utilizator neautorizat. Este măsurată prin numărul de recunoașteri sau autentificări fals pozitive împărțit la numărul total de încercări de identificare.

Un fals pozitiv apare atunci când soluția consideră că două sau mai multe imagini ale unor persoane diferite sunt aceeași persoană. Adică, scorul de similaritate al comparației sau căutării este peste pragul de similaritate necesar. În esență, sistemul identifică sau autorizează incorect un utilizator atunci când ar fi trebuit să respingă încercarea de identificare sau autentificare.

Formula pentru RMF este:

FMR = Număr fals pozitiv / (Total încercări)

De exemplu, să presupunem că avem 100,000 de încercări de autentificare, dar 100 de utilizatori falși sunt autorizați incorect, deoarece asemănarea lor cu imaginea sau colecția de referință depășește pragul de similaritate specificat. Aici avem 100 de fals pozitive, prin urmare RMF este 0.01%

FMR = 100 / (100,000) sau 0.01%

Rata de potrivire falsă vs. rata de nepotrivire falsă

Rata de potrivire falsă și rata de non-potrivire falsă sunt în dezacord. Pe măsură ce pragul de similaritate crește, potențialul pentru o potrivire falsă scade, în timp ce potențialul pentru o nepotrivire falsă crește. Un alt mod de a ne gândi la acest compromis este că, pe măsură ce pragul de similaritate crește, soluția devine mai restrictivă, făcând mai puține potriviri cu similaritate scăzută. De exemplu, este obișnuit ca cazurile de utilizare care implică siguranța și securitatea publică să stabilească un prag de similitudine a potrivirii destul de ridicat (99 și mai sus). Alternativ, o organizație poate alege un prag de similaritate mai puțin restrictiv (90 și mai sus), unde impactul frecării asupra utilizatorului este mai important. Următoarea diagramă ilustrează aceste compromisuri. Provocarea pentru organizații este să găsească un prag care să minimizeze atât FMR, cât și FNMR, pe baza cerințelor dumneavoastră organizaționale și aplicației.

Compensație FMR vs FNMR

Selectarea unui prag de similaritate depinde de aplicația de afaceri. De exemplu, să presupunem că doriți să limitați frecarea clienților în timpul integrării (un prag de similaritate mai puțin restrictiv, așa cum se arată în figura următoare din stânga). Aici este posibil să aveți un prag de similaritate mai scăzut și sunteți dispuși să acceptați riscul de a integra utilizatori în cazul în care încrederea în potrivirea dintre selfie-ul lor și permisul de conducere este mai mică. În schimb, să presupunem că doriți să vă asigurați că numai utilizatorii autorizați intră într-o aplicație. Aici puteți opera la un prag de similaritate destul de restrictiv (așa cum se arată în figura din dreapta).

prag de similaritate mai mic prag de similaritate ridicat

Pași pentru calcularea ratelor de potrivire falsă și de nepotrivire

Există mai multe moduri de a calcula aceste două valori. Următoarea este o abordare relativ simplă de împărțire a pașilor în adunarea perechilor de imagini autentice, crearea unei perechi de impostor (imagini care nu ar trebui să se potrivească) și, în final, utilizarea unei sonde pentru a trece în buclă peste perechile de imagini care se potrivesc și care nu se potrivesc, captând asemănarea rezultată. Pașii sunt următorii:

  1. Adunați un set de imagini eșantion autentice. Vă recomandăm să începeți cu un set de perechi de imagini și să atribuiți un identificator extern, care este folosit pentru a determina o determinare oficială a meciului. Perechea este formată din următoarele imagini:
    1. Imagine sursă – Imaginea sursă de încredere, de exemplu un permis de conducere.
    2. Imagine țintă – selfie-ul sau imaginea cu care veți compara.
  2. Adunați un set de imagini de potriviri pentru impostori. Acestea sunt perechi de imagini în care sursa și ținta nu se potrivesc. Acesta este folosit pentru a evalua FMR (probabilitatea ca sistemul să se potrivească incorect cu fețele a doi utilizatori diferiți). Puteți crea un set de imagini impostor folosind perechile de imagini prin crearea unui produs cartezian al imaginilor, apoi filtrarea și eșantionarea rezultatului.
  3. Verificați seturile de potrivire autentică și impostor, parcurgând bucla peste perechile de imagini, comparând sursa și ținta impostorului și surprinzând asemănarea rezultată.
  4. Calculați FMR și FNMR calculând fals pozitive și false negative la diferite praguri minime de similaritate.

Puteți evalua costul FMR și FNMR la diferite praguri de similaritate în raport cu nevoile aplicației dvs.

Pasul 1: Adunați mostre autentice de perechi de imagini

Alegerea unui eșantion reprezentativ de perechi de imagini de evaluat este critică atunci când se evaluează un serviciu de verificare a identității. Primul pas este identificarea unui set autentic de perechi de imagini. Acestea sunt imagini sursă și țintă cunoscute ale unui utilizator. Împerecherea de imagini autentică este utilizată pentru a evalua FNMR, în esență, probabilitatea ca sistemul să nu se potrivească cu două fețe ale aceleiași persoane. Una dintre primele întrebări adesea adresate este „Câte perechi de imagini sunt necesare?” Răspunsul este că depinde de cazul dvs. de utilizare, dar îndrumările generale sunt următoarele:

  • Între 100–1,000 de perechi de imagini oferă o măsură de fezabilitate
  • Până la 10,000 de perechi de imagini sunt suficient de mari pentru a măsura variabilitatea dintre imagini
  • Peste 10,000 de perechi de imagini oferă o măsură a calității operaționale și a generalizabilității

Mai multe date este întotdeauna mai bine; totuși, ca punct de plecare, utilizați cel puțin 1,000 de perechi de imagini. Cu toate acestea, nu este neobișnuit să folosiți mai mult de 10,000 de perechi de imagini pentru a pune la zero pe un FNMR sau FMR acceptabil pentru o anumită problemă de afaceri.

Următorul este un exemplu de fișier de mapare a perechii de imagini. Folosim fișierul de mapare pereche de imagini pentru a conduce restul procesului de evaluare.

EXTERNAL_ID SOURCE ŢINTĂ TEST
9055 9055_M0.jpeg 9055_M1.jpeg Veritabil
19066 19066_M0.jpeg 19066_M1.jpeg Veritabil
11396 11396_M0.jpeg 11396_M1.jpeg Veritabil
12657 12657_M0.jpeg 12657_M1.jpeg Veritabil
... . . .

Pasul 2: Generați o pereche de imagini impostoare set

Acum că aveți un fișier de perechi de imagini autentice, puteți crea un produs cartezian de imagini țintă și sursă în care identificatorii externi nu se potrivesc. Acest lucru produce perechi sursă-țintă care nu ar trebui să se potrivească. Această împerechere este utilizată pentru a evalua FMR, în esență, probabilitatea ca sistemul să potrivească fața unui utilizator cu fața unui alt utilizator.

extern_id SOURCE ŢINTĂ TEST
114192 114192_4M49.jpeg 307107_00M17.jpeg impostor
105300 105300_04F42.jpeg 035557_00M53.jpeg impostor
110771 110771_3M44.jpeg 120381_1M33.jpeg impostor
281333 281333_04F35.jpeg 314769_01M17.jpeg impostor
40081 040081_2F52.jpeg 326169_00F32.jpeg impostor
... . . .

Pasul 3: Verificați seturile de perechi de imagini autentice și impostoare

Folosind un program driver, aplicăm Amazon Rekognition CompareFaces API peste perechile de imagini și surprindeți asemănarea. De asemenea, puteți captura informații suplimentare, cum ar fi poziția, calitatea și alte rezultate ale comparației. Scorurile de similaritate sunt utilizate pentru a calcula ratele de potrivire falsă și de non-potrivire în pasul următor.

În următorul fragment de cod, aplicăm API-ul CompareFaces tuturor perechilor de imagini și populăm toate scorurile de similaritate dintr-un tabel:

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()

Fragmentul de cod oferă următorul rezultat.

EXTERNAL_ID SOURCE ŢINTĂ TEST SIMILITUDINE
9055 9055_M0.jpeg 9055_M1.jpeg Veritabil 98.3
19066 19066_M0.jpeg 19066_M1.jpeg Veritabil 94.3
11396 11396_M0.jpeg 11396_M1.jpeg Veritabil 96.1
... . . . .
114192 114192_4M49.jpeg 307107_00M17.jpeg impostor 0.0
105300 105300_04F42.jpeg 035557_00M53.jpeg impostor 0.0
110771 110771_3M44.jpeg 120381_1M33.jpeg impostor 0.0

Analiza distribuției scorurilor de similaritate prin teste reprezintă un punct de plecare pentru înțelegerea scorului de similaritate pe perechi de imagini. Următorul fragment de cod și diagrama de ieșire arată un exemplu simplu de distribuție a scorului de similaritate în funcție de setul de teste, precum și statisticile descriptive rezultate:

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()

distribuția scorului de similaritate

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

test conta minute max însemna mediană std
veritabil 204 0.2778 99.9957 91.7357 99.0961 19.9097
impostor 1020 0.0075 87.3893 2.8111 0.8330 7.3496

În acest exemplu, putem vedea că similaritatea medie și mediană pentru perechile de fețe autentice a fost de 91.7 și 99.1, în timp ce pentru perechile de impostori a fost de 2.8 și, respectiv, 0.8. După cum era de așteptat, acest lucru arată scorurile de similaritate ridicate pentru perechile de imagini autentice și scorurile de similaritate scăzute pentru perechile de imagini impostoare.

Pasul 4: Calculați FMR și FNMR la diferite niveluri de prag de similaritate

În acest pas, calculăm ratele de potrivire falsă și de nepotrivire la diferite praguri de similitudine. Pentru a face acest lucru, pur și simplu parcurgem pragurile de similaritate (de exemplu, 90-100). La fiecare prag de similaritate selectat, calculăm matricea noastră de confuzie care conține numărătoarele adevărate pozitive, adevărate negative, fals pozitive și fals negative, care sunt utilizate pentru a calcula FMR și FNMR la fiecare similaritate selectată.

Real
previzibilă
. Meci Nu se potrivesc
>= asemănarea selectată TP FP
< asemănarea selectată FN TN

Pentru a face acest lucru, creăm o funcție care returnează numărul fals pozitiv și negativ și trecem printr-o gamă de scoruri de similaritate (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

Următorul tabel arată rezultatele numărărilor la fiecare prag de similaritate.

Pragul de similitudine 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%

Cum influențează pragul de similitudine rata falsă de nepotrivire?

Să presupunem că avem 1,000 de încercări de integrare a utilizatorilor autentici și respingem 10 dintre aceste încercări pe baza unei similitudini minime necesare de 95% pentru a fi considerate o potrivire. Aici respingem 10 încercări autentice de integrare (negative false), deoarece similitudinea lor scade sub pragul minim de similaritate specificat. În acest caz, RMN-ul nostru este de 1.0%.

Real
previzibilă
. Meci Nu se potrivesc
>= 95% asemănare 990 0
< 95% asemănare 10 0
. total 1,000 .

FNMR = număr fals negativ / (număr pozitiv adevărat + număr fals negativ)

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

Prin contrast, să presupunem că, în loc să avem 1,000 de utilizatori autentici de îmbarcat, avem 990 de utilizatori autentici și 10 utilizatori impostori (fals pozitiv). La o similaritate minimă de 95%, să presupunem că acceptăm toți cei 1,000 de utilizatori ca fiind autentici. Aici am avea un RMF de 1%.

Real
previzibilă
. Meci Nu se potrivesc total
>= 95% asemănare 990 10 1,000
< 95% asemănare 0 0 .

FMR = Număr fals pozitiv / (Total încercări)

FMR = 10 / (1,000) sau 1.0%

Evaluarea costurilor FMR și FNMR la îmbarcare

Într-un caz de utilizare onboarding, costul unei nepotriviri false (o respingere) este în general asociat cu o frecare suplimentară a utilizatorului sau cu pierderea unei înregistrări. De exemplu, în cazul nostru de utilizare bancară, să presupunem că Julie prezintă două imagini cu ea însăși, dar este respinsă incorect în momentul integrării, deoarece similitudinea dintre cele două imagini scade sub similaritatea selectată (o nepotrivire falsă). Instituția financiară poate risca s-o piardă pe Julie ca potențial client sau îi poate provoca fricțiuni suplimentare lui Julie, solicitându-i să efectueze pași pentru a-și dovedi identitatea.

În schimb, să presupunem că cele două imagini ale lui Julie sunt ale unor oameni diferiți și că integrarea lui Julie ar fi trebuit respinsă. În cazul în care Julie este acceptată incorect (o potrivire falsă), costul și riscul pentru instituția financiară sunt destul de diferite. Ar putea exista probleme de reglementare, risc de fraudă și alte riscuri asociate cu tranzacțiile financiare.

Utilizare responsabilă

Inteligența artificială (AI) aplicată prin învățarea automată (ML) va fi una dintre cele mai transformatoare tehnologii ale generației noastre, abordând unele dintre cele mai dificile probleme ale umanității, sporind performanța umană și maximizând productivitatea. Utilizarea responsabilă a acestor tehnologii este esențială pentru promovarea inovației continue. AWS se angajează să dezvolte servicii AI și ML corecte și precise și să vă ofere instrumentele și îndrumările necesare pentru a crea aplicații AI și ML în mod responsabil.

Pe măsură ce adoptați și creșteți utilizarea AI și ML, AWS oferă mai multe resurse bazate pe experiența noastră pentru a vă ajuta în dezvoltarea și utilizarea responsabilă a AI și ML:

Cele mai bune practici și greșeli comune de evitat

În această secțiune, discutăm următoarele bune practici:

  • Utilizați un eșantion suficient de mare de imagini
  • Evitați seturile de date open-source și sintetice pentru fețe
  • Evitați manipularea manuală și sintetică a imaginilor
  • Verificați calitatea imaginii în momentul evaluării și în timp
  • Monitorizați FMR și FNMR în timp
  • Folosiți o analiză umană în buclă
  • Rămâneți la curent cu Amazon Rekognition

Utilizați un eșantion suficient de mare de imagini

Utilizați un eșantion de imagini suficient de mare, dar rezonabil. Care este o dimensiune rezonabilă a eșantionului? Depinde de problema afacerii. Dacă sunteți angajator și aveți 10,000 de angajați pe care doriți să-i autentificați, atunci utilizarea tuturor celor 10,000 de imagini este probabil rezonabilă. Cu toate acestea, să presupunem că sunteți o organizație cu milioane de clienți pe care doriți să îi includeți. În acest caz, luarea unui eșantion reprezentativ de clienți, cum ar fi 5,000–20,000, este probabil suficientă. Iată câteva îndrumări cu privire la dimensiunea eșantionului:

  • Un eșantion de 100 – 1,000 de perechi de imagini dovedesc fezabilitatea
  • Un eșantion de 1,000 – 10,000 de perechi de imagini sunt utile pentru a măsura variabilitatea dintre imagini
  • Un eșantion de 10,000 – 1 milion de perechi de imagini oferă o măsură a calității operaționale și a generalizabilității

Cheia cu eșantionarea perechilor de imagini este să vă asigurați că eșantionul oferă suficientă variabilitate în populația de fețe din aplicația dvs. Puteți extinde și mai mult eșantionarea și testarea pentru a include informații demografice precum nuanța pielii, sexul și vârsta.

Evitați seturile de date open-source și sintetice pentru fețe

Există zeci de seturi de date de imagini faciale cu sursă deschisă organizate, precum și seturi de fețe sintetice uimitor de realiste, care sunt adesea folosite în cercetare și pentru a studia fezabilitatea. Provocarea este că aceste seturi de date nu sunt, în general, utile pentru 99% din cazurile de utilizare din lumea reală, pur și simplu pentru că nu sunt reprezentative pentru camerele, fețele și calitatea imaginilor pe care aplicația dvs. le poate întâlni în sălbăticie. Deși sunt utile pentru dezvoltarea aplicațiilor, măsurile de precizie ale acestor seturi de imagini nu se generalizează la ceea ce vei întâlni în propria ta aplicație. În schimb, vă recomandăm să începeți cu un eșantion reprezentativ de imagini reale din soluția dvs., chiar dacă perechile de imagini eșantion sunt mici (sub 1,000).

Evitați manipularea manuală și sintetică a imaginilor

Există adesea cazuri marginale pe care oamenii sunt interesați să le înțeleagă. Lucruri precum calitatea capturii imaginii sau ofucările caracteristicilor faciale specifice sunt întotdeauna de interes. De exemplu, suntem adesea întrebați despre impactul vârstei și al calității imaginii asupra recunoașterii faciale. Puteți pur și simplu să îmbătrâniți sintetic o față sau să manipulați imaginea pentru a face subiectul să pară mai în vârstă sau să manipulați calitatea imaginii, dar acest lucru nu se traduce bine în îmbătrânirea imaginilor în lumea reală. În schimb, recomandarea noastră este să adunați un eșantion reprezentativ de cazuri marginale din lumea reală pe care sunteți interesat să le testați.

Verificați calitatea imaginii în momentul evaluării și în timp

Tehnologia camerei și a aplicațiilor se schimbă destul de rapid în timp. Ca cea mai bună practică, vă recomandăm să monitorizați calitatea imaginii în timp. De la dimensiunea fețelor capturate (folosind casete de delimitare), la luminozitatea și claritatea unei imagini, la poziția unei fețe, precum și la potențialele obscurciri (pălării, ochelari de soare, bărbi și așa mai departe), toate aceste imagini și trăsăturile feței se schimbă în timp.

Monitorizați FNMR și FMR în timp

Apar modificări, fie că este vorba de imagini, de aplicație sau de pragurile de similaritate utilizate în aplicație. Este important să monitorizați periodic ratele de potrivire falsă și de nepotrivire în timp. Modificările ratelor (chiar și modificările subtile) pot indica adesea provocări din amonte cu aplicația sau modul în care este utilizată aplicația. Modificările pragurilor de similaritate și regulilor de afaceri utilizate pentru a lua decizii de acceptare sau respingere pot avea un impact major asupra experiențelor utilizatorilor de integrare și autentificare.

Folosiți o analiză umană în buclă

Sistemele de verificare a identității iau decizii automate de potrivire și nepotrivire pe baza pragurilor de similaritate și a regulilor de afaceri. Pe lângă cerințele de reglementare și de conformitate internă, un proces important în orice sistem de decizie automatizat este utilizarea evaluatorilor umani ca parte a monitorizării continue a procesului de decizie. Supravegherea umană a acestor sisteme automate de decizie oferă validare și îmbunătățire continuă, precum și transparență în procesul automat de luare a deciziilor.

Rămâneți la curent cu Amazon Rekognition

Modelul de fețe Amazon Recognition este actualizat periodic (de obicei anual) și este în prezent la versiunea 6. Această versiune actualizată a adus îmbunătățiri importante preciziei și indexării. Este important să fii la curent cu noile versiuni de model și să înțelegi cum să folosești aceste versiuni noi în aplicația ta de verificare a identității. Când sunt lansate versiuni noi ale modelului de față Amazon Rekognition, este o bună practică să reporniți procesul de evaluare a verificării identității și să determinați orice impact potențial (pozitiv și negativ) asupra ratelor de potrivire falsă și nepotrivire.

Concluzie

Această postare discută elementele cheie necesare pentru a evalua aspectul de performanță al soluției dvs. de verificare a identității în ceea ce privește diferitele valori de precizie. Cu toate acestea, acuratețea este doar una dintre numeroasele dimensiuni pe care trebuie să le evaluați atunci când alegeți un anumit serviciu de moderare a conținutului. Este esențial să includeți alți parametri, cum ar fi setul total de caracteristici ale serviciului, ușurința de utilizare, integrările existente, confidențialitate și securitate, opțiuni de personalizare, implicații de scalabilitate, serviciu pentru clienți și prețuri.

Pentru a afla mai multe despre verificarea identității în Amazon Rekognition, vizitați Verificarea identității folosind Amazon Rekognition.


Despre Autori

Metrici pentru evaluarea unei soluții de verificare a identității PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Mike Ames este un om de știință de date devenit specialist în soluții de verificare a identității, cu o experiență vastă în dezvoltarea de soluții de învățare automată și AI pentru a proteja organizațiile de fraudă, risipă și abuz. În timpul lui liber, îl puteți găsi în drumeții, ciclism montan sau jucându-se cu cainele lui Max.

Metrici pentru evaluarea unei soluții de verificare a identității PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Amit Gupta este arhitect senior de soluții de servicii AI la AWS. Este pasionat de a oferi clienților soluții de învățare automată bine proiectate la scară.

Metrici pentru evaluarea unei soluții de verificare a identității PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Zuhayr Raghib este arhitect de soluții de servicii AI la AWS. Specializat în AI/ML aplicate, el este pasionat să le permită clienților să folosească cloud-ul pentru a inova mai rapid și a-și transforma afacerile.

Metrici pentru evaluarea unei soluții de verificare a identității PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Marcel Pividal este arhitect senior de soluții de servicii AI în cadrul organizației de specialitate la nivel mondial. Marcel are peste 20 de ani de experiență în rezolvarea problemelor de afaceri prin tehnologie pentru fintechs, furnizori de plăți, farmaceutice și agenții guvernamentale. Domeniile sale actuale de concentrare sunt managementul riscurilor, prevenirea fraudei și verificarea identității.

Timestamp-ul:

Mai mult de la Învățare automată AWS