Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Viktigt!
Översättningar som inte är engelska tillhandahålls endast för enkelhetens skull. Se versionen EN-US
av det här dokumentet för bindningsversionen.
Ansikts-API för Azure AI Vision ("Ansikts-API") är en byggsten för att skapa ett ANSIKTS-AI-system som andra byggstenar måste läggas till i, så det går inte att tillhandahålla en universellt tillämplig uppskattning av noggrannheten för det faktiska system som du planerar att distribuera. Företag kan dela noggrannhet enligt offentliga benchmark-tävlingar, men dessa noggrannheter beror på detaljer om varje benchmark-metod och kommer därför inte att vara samma som noggrannheten i ett distribuerat system.
I slutändan beror systemets noggrannhet på flera faktorer, inklusive kameratekniken och hur den är konfigurerad, miljöförhållanden, användningsfallet för systemet, hur människor ska kännas igen interagerar med kameran och hur människor tolkar systemets utdata. Följande avsnitt är avsett att hjälpa dig att förstå viktiga begrepp som beskriver noggrannhet i samband med ett system för ansiktsigenkänning och levande igenkänning. Med den förståelsen beskriver vi sedan val av systemdesign, hur de påverkar noggrannheten och referensmått.
Att definiera noggrannhet
Noggrannheten i ett system för ansiktsigenkänning baseras på en kombination av två saker: hur ofta systemet matchar en person som är registrerad i systemet korrekt och hur ofta systemet korrekt inte hittar någon matchning för en person som inte är registrerad. Dessa två villkor, som kallas "sanna" villkor, kombineras med två "falska" villkor för att beskriva alla möjliga resultat av ett ansiktsigenkänningssystem:
Tillstånd | Definition |
---|---|
Sant positivt eller korrekt matchning![]() |
Personen i sondbildenär registrerad och matchas korrekt. |
Riktig negativ eller korrekt avslag ![]() |
Personen i provsbilden är inte inlagd och systemet hittar ingen matchning. |
Falsk positiv eller felaktig matchning ![]() |
Antingen är personen i avsökningsbilden inte registrerad men matchas med en registrerad person eller så är personen i avsökningsbilden registrerad men matchas med fel person. |
Falskt negativt eller felaktigt avvisande ![]() |
Personen i sondbilden är registrerat, men systemet hittar ingen matchning. |
Konsekvenserna av en falsk positiv eller falsk negativ varierar beroende på syftet med ansiktsigenkänningssystemet. Exemplen nedan illustrerar den här varianten och hur val du gör när du utformar systemet påverkar upplevelsen för de personer som omfattas av det.
Hur exakt är ansiktsigenkänningsmodellen?
Att mäta precisionen i ansiktsigenkänningstekniken är ett mycket svårt problem och metoderna varierar i hela branschen. Om du vill veta mer om vårt engagemang för rättvisa och förbättra noggrannheten i våra AI-system kan du läsa ansvarsfulla AI-resurser.
Du kan använda exempelanteckningsboken för rättvis utvärdering för att bedöma om ansiktsverifiering är rättvist på dina egna data. Det är en Jupyter-anteckningsbok med Fairlearn Python-paketet.
Hur exakt är modellen för avkänning av äkthet hos ansiktet?
Lösningen för identifiering av ansiktsupplevnad från Microsoft överensstämmer med ISO/IEC 30107-3:2017 – Biometrisk identifiering av presentationsattacker – Del 3: Test- och rapporteringsstandard som verifierats av iBeta nivå 1- och nivå 2-efterlevnadstestning.
Avvägningar
Justering av förtroendetröskel för igenkänning
Syftet med det här avsnittet är att hjälpa dig att förstå hur systemkonfiguration påverkar systemets noggrannhet och balansen mellan falska positiva och falska negativa identifieringar.
Tröskelvärdet för igenkänningsförtroende påverkar systemets noggrannhet och avvägningen mellan falska positiva och negativa. Det är inte relaterat till konfidensintervall.
Konfidenspoäng för igenkänning
En konfidenspoäng för igenkänning beskriver likheten mellan en avsökningsmall och en registrerad mall. Konfidenspoängen för igenkänning varierar från 0 till 1. Konfidenspoäng för hög igenkänning indikerar att det är mer troligt att de två bilderna är av samma person.
Tröskelvärde för igenkänningsförtroende
Ett tröskelvärde för igenkänningsförtroende är ett konfigurerbart värde mellan 0 och 1 som avgör den förtroendepoäng för igenkänning som krävs för att betraktas som en positiv matchning.
Om igenkänningsförtroendepoängen mellan avsökningsmallen och registreringsmallen som är associerad med den primära identifieraren är minst lika hög som tröskelvärdet för igenkänningsförtroende när du använder Verifiera API:et för autentisering, anger Face att avsökningsbilden representerar den person som presenterar identifieringen.
När du använder funktionen Identifiera API kan det vara användbart för en person att granska en lista över kandidater som rangordnas efter konfidenspoäng för igenkänning för att göra ett slutligt beslut. Kunder med ansiktsigenkänning kan välja hur många kandidatmallar som når igenkänningens förtroendetröskel och returneras i rangordnad ordning efter likhet med avsökningsmallen. Dessa matchningar kallas för en "kandidatlista". Face kommer endast att returnera kandidater med igenkänningsförtroendepoäng som är minst lika höga som igenkänningströskeln. När inga mallar har förtroendepoäng för igenkänning som når tröskelvärdet för igenkänningsförtroende returneras inga matchningar.
Varför välja ett tröskelvärde för igenkänningsförtroende som är mindre än ett?
Genom att ange ett tröskelvärde för igenkänningsförtroende kan du balansera felen mellan falska positiva och falska negativa identifieringar för att bäst hantera ditt specifika scenario. Det är osannolikt att systemets övergripande noggrannhet är 100%, och när tröskelvärdet för igenkänningsförtroende är inställt på 1, det strängaste värdet, kommer alla fel som inträffar att vara falska negativa: systemet returnerar "ingen matchning" eftersom den skickade avsökningsmallen inte matchar alla registrerade mallar perfekt.
Om tröskelvärdet för igenkänningsförtroende är inställt på 0 matchar alla avsökningsmallar alla registreringsmallar. Eftersom förtroendepoängen för igenkänning påverkas av avsökningens kvalitet och registreringsbilderna kan en lägre konfidenspoäng för igenkänning indikera bilder av dålig kvalitet snarare än mindre likhet mellan personer i bilderna. Om tröskelvärdet för igenkänningsförtroende anges för högt när identifieringen görs kanske systemet inte returnerar tillräckligt många kandidater för att hitta den sanna matchningen.
Å andra sidan kan ett tröskelvärde för lågt igenkänningsförtroende returnera matchningar av låg kvalitet och kan minska effektiviteten och noggrannheten hos de människor som granskar matchningarna.
Standardvärdet för förtroende för igenkänning är 0,5, vilket är en balans som gäller för många program för identitetsverifiering, men du kan ändra tröskelvärdet för igenkänningsförtroende så att det passar varje program.
Hur bör ett tröskelvärde för igenkänningsförtroende väljas?
Tröskelvärdet för bästa igenkänningsförtroende för systemet baseras på:
- Systemets syfte,
- Effekten av falska positiva och falska negativa på de personer som kommer att genomgå ansiktsigenkänning.
- Om de slutliga avgörandena görs av en människa, och
- Hur hela systemet, inklusive upplevelsedesignen, stöder lösning av fel.
Innan du väljer ett tröskelvärde för igenkänningsförtroende rekommenderar Microsoft att du som systemägare för ansiktsigenkänning samlar in korrekt märkta utvärderingsdata på plats för att avgöra hur tröskelvärdet för igenkänningsförtroende påverkar uppnåendet av dina mål och påverkar personer som omfattas av och tolkar systemets utdata.
Korrekt märkta data kan jämföras med systemets utdata för att fastställa den övergripande noggrannheten och felfrekvensen och fördelningen av fel mellan falska positiva och falska negativa värden. Dessa korrekt märkta utvärderingsdata bör omfatta lämplig sampling av personer med olika egenskaper som kommer att bli föremål för igenkänning så att prestandaskillnader kan förstås och korrigerande åtgärder vidtas. Baserat på resultatet av den här utvärderingen kan du iterativt justera tröskelvärdet för igenkänningsförtroende tills kompromissen mellan falska positiva och falska negativa resultat uppfyller dina mål.
Exempel på ett scenario som minimerar falska positiva resultat
Ansiktsigenkänning kan hjälpa användare att logga in för att få åtkomst till kontrollerade program, till exempel en bankapp. En falsk positiv identifiering i det här scenariot minskar kundsäkerheten eftersom det resulterar i en felaktig matchning, medan ett falskt negativt kan hindra kunden från att komma åt sitt konto. Eftersom syftet med systemet är säkerhet måste felaktiga positiva resultat minimeras och därför kommer de flesta fel att vara falska negativa (misslyckade inloggningar på konton). Programutvecklaren bör ange ett tröskelvärde för hög igenkänningssäkerhet för att minimera falska positiva identifieringar. Eftersom ett högre tröskelvärde för konfidens skapar fler falska negativa identifieringar kan systemägare tillhandahålla en reservmekanism, som att skicka ett meddelande till kundens telefon med en åtkomstkod. Kundens upplevelse kan vara mindre effektiv i det här fallet, men kontoåtkomsten blockeras inte och säkerheten prioriteras.
Exempel på ett scenario som optimerar sanna positiva
Program med djupt involverad mänsklig granskning kanske vill tillhandahålla fler matchningar eftersom människor manuellt kan eliminera falska positiva identifieringar. Tänk dig till exempel ett fotogalleriprogram som visar möjliga foton av användaren. I det här fallet skulle programbyggaren välja ett lägre tröskelvärde för igenkänningsförtroende, vilket ger användaren (som också är den mänskliga granskaren i det här fallet) utrymme för att eliminera falska positiva identifieringar (ytfoton som inte tillhör användaren).
Här är en lista över förväntade teoretiska falska positiva frekvenser för en viss konfidenspoäng baserat på en dataset för recognition_03-igenkänningsmodellen; det kan finnas variationer i verkliga livet.
Tröskelvärde för igenkänningsförtroende | Falsk positiv andel |
---|---|
0,1 | 1 av 10 |
0.2 | 1 av 100 |
0,3 | 1 av 1 000 |
0,4 | 1 av 10 000 |
0,5 | 1 av 100 000 |
0,6 | 1 av 1 000 000 |
0,7 | 1 av 10 000 000 |
0,8 | 1 av 100 000 000 |
0,9 | 1 av 1 000 000 000 |
Metodtips för att förbättra noggrannheten
Ansiktsigenkänningstekniken förbättras och många system, inklusive Ansikts-API, kan fungera bra även när förhållandena inte är idealiska. Det här är dock specifika åtgärder som du kan vidta för att säkerställa resultat av bästa kvalitet från ditt ansiktsigenkänningssystem.
Planera för en utvärderingsfas
Som vi har diskuterat när du väljer ett tröskelvärde för igenkänningsförtroende rekommenderar Microsoft starkt att systemägare genomför en utvärderingsfas i det sammanhang där systemet ska användas och med de personer som ska interagera med systemet före en storskalig distribution eller distribution av något system för ansiktsigenkänning.
Du bör samarbeta med dina analys- och forskningsteam för att samla in grundsanningsutvärderingsdata för att:
- Upprätta baslinjenogngrannhet, frekvenser av falska positiva och falska negativa.
- Välj ett lämpligt tröskelvärde för igenkänningsförtroende för att uppfylla dina mål.
- Avgör om felfördelningen är skev mot specifika grupper av personer.
Detta kommer sannolikt att vara en iterativ process med justeringar av sensorposition, belysning och andra faktorer som påverkar noggrannheten, enligt beskrivningen i det här avsnittet. Den här utvärderingen bör återspegla din implementeringsmiljö och eventuella variationer i den miljön, till exempel belysning eller sensorplacering, samt data för bedömning av grundsanning som speglar personer med olika bakgrunder som kommer att interagera med systemet.
Förutom telemetridata kanske du också vill analysera feedback från personer som gör bedömningar baserat på systemets utdata, nöjdhetsdata från de personer som är föremål för igenkänning och feedback från befintliga kundröstkanaler för att hjälpa till att finjustera systemet och säkerställa ett lyckat engagemang.
Ansiktsstorlek
Att se till att ansiktet i en registrerings- eller avsökningsbild är tillräckligt stort är viktigt för matchningar av hög kvalitet.
Ansikten kan identifieras när deras storlek är så liten som 36 x 36 bildpunkter, men för bästa prestanda rekommenderar Microsoft en minsta storlek på 200 x 200 bildpunkter med minst 100 bildpunkter mellan ögonen. Observera att högre bildupplösning ökar svarstiden, men det finns sätt att optimera svarstiden. Den maximala tillåtna storleken är 4 096 x 4 096.
Ansiktsorientering
Ansikten som tittar bort från kameran kanske inte identifieras. Ansikten bör vara vända mot kameran inom 35 grader för både huvudlutning (framåt eller bakåt) och vridning (åt vänster eller höger); rullning (huvudlutning åt vänster eller höger) spelar ingen roll.
Kontrollera avbildningsmiljön
Belysning och kamerakalibrering
Var uppmärksam på hur väl detaljerna i människors ansikten kan ses i bilder.
- Ta bilder i lämpliga ljusförhållanden. Är belysningen för ljus, för mörk? Är ansikten bakgrundsbelysta? Finns det för mycket ljus från ena sidan och inte tillräckligt från den andra? När det är möjligt placerar du sensorer bort från områden med extrem belysning.
- Är belysningen tillräcklig för att korrekt fånga detaljerna i människors ansikten med olika hudtoner?
Identifiering av ansiktets äkthet
Identifiering av ansiktets livlighet använder enhetens skärm för att ändra belysningen i en persons ansikte för att kontrollera livstecken. Överdrivet ljusa ljusförhållanden kan överväldiga denna effekt och orsaka att ansiktsigenkänning misslyckas. Om du upptäcker den här situationen bör du instruera personen att flytta till en mindre ljus miljö.
Bakgrunder
- Sträva efter neutrala, icke-reflekterande bakgrunder. Undvik bakgrunder som innehåller ansikten, till exempel där det finns bilder av personer som visas, eller där andra personer än den person som ska identifieras är framträdande på bilden.
Placering och underhåll av sensor
- Placera sensorer på ansiktsnivå för att på bästa sätt ta bilder som uppfyller kvalitetsspecifikationerna.
- Se till att sensorer regelbundet kontrolleras efter damm, fläckar och andra hinder.
Planera för variationer i subjektutseende och beteende
Ansiktsblockeringar
Ansiktsigenkänning fungerar bäst när personens hela ansikte är synligt. Ansikten kan vara delvis eller helt täckta av olika skäl, inklusive:
- Religion: Huvudbonad som täcker eller delvis skyler ansiktet.
- Personlig skyddsutrustning (PPE): PPE, till exempel ansiktsskyddsmasker som täcker eller delvis skymmer ansikten
- Väder: Plagg som halsdukar lindade över ansiktet.
- Skada: Ögonlappar eller stora bandage.
- Glasögon: Mycket ogenomskinliga glasögon och hålsiktsglasögon (andra glasögon och linser bör fungera bra).
- Personlig stil: Lugg över ögonbryn, basebollkepsar, stora ansiktstatueringar osv.
Att registrera blockerade ansikten kan resultera i fel. Även om det är möjligt för ansiktsigenkänning att verifiera ett ansikte som har ocklusioner rekommenderar vi följande åtgärder för att hantera ocklusionsutmaningar, förutom sensorplacering:
- En reservmetod, till exempel ett icke-biometriskt alternativ, är kritisk. För vissa personer kan det alternativ med återgång vara det de konsekvent använder.
- Var uppmärksam på utmaningar som människor står inför under utvärdering och distribution för att identifiera åtgärder som fungerar bäst för din miljö.
- Använd Recogniton_04-modellen i API:erna Verifiera, Identifiera, Grupp och FindSimilar som kan känna igen personer som bär ansiktsbeklädnad (kirurgiska masker, N95-masker, tygmasker).
Betydande ändringar i utseende
Dramatiska förändringar i utseendet, till exempel borttagning av ett fullt skägg eller många år som passerar mellan registrerings- och avsökningsbilder (för vuxna), eller till och med korta tidsperioder mellan foton av barn, kan resultera i fel.
- Förutom att stödja en reservmetod kan design av användarupplevelsen för att stödja omedelbar omregistrering efter ett igenkänningsfel förbättra användarnöjdheten.
- Ansiktsigenkänningssystem är i allmänhet mindre exakta för barn. Microsoft rekommenderar att du använder Ansiktsigenkänning för personer över 18 år. Ansiktsigenkänning kan vara särskilt utmanande med personer som är 13 år och yngre.
Rörelse, oskärpa och extrema uttryck
Suddiga ansikten som orsakas av snabb rörelse, eller till och med extrema uttryck (som gäspning brett med slutna ögon), gör erkännandet utmanande. Så här hanterar du dessa utmaningar:
- Utforma användarupplevelsen så att människor förstår hur man tillhandahåller högkvalitativa bilder.
- Skapa en miljö där människor naturligt möter kameran och saktar ner. Annars kan rörelse leda till suddiga bilder som skulle vara svåra att känna igen.
- Ge tydliga instruktioner för hur människor ska bete sig under igenkänningen (öppna ögon, stängd mun, stå stilla osv.).
Biologiska tvillingar
Tvillingar, familjemedlemmar och andra människor som ser mycket lika varandra kommer att vara svåra för ansiktsigenkänningssystem att skilja från varandra. Detta är en annan anledning att stödja en reservmetod.
Utforma systemet för att stödja mänskligt omdöme
I de flesta fall rekommenderar Microsoft att du använder Ansikts-AI:s ansiktsigenkänningsfunktioner för att hjälpa människor att göra mer exakta och effektiva bedömningar i stället för att helt automatisera en process. Meningsfull mänsklig granskning är viktigt för att:
- Identifiera och lösa fall av felidentifiering eller andra fel.
- Ge stöd till personer som anser att deras resultat var felaktiga.
- Identifiera och lösa ändringar i noggrannheten på grund av ändrade förhållanden (t..a. belysning eller sensorrenlighet).
När du till exempel använder Face för intagning i en byggnad kan en utbildad säkerhetsansvarig hjälpa till när ansiktsigenkänningssystemet inte matchar någon som tror att de är registrerade genom att bestämma om personen ska släppas in i byggnaden. I det här fallet hjälper Face säkerhetsvakten att arbeta mer effektivt genom att kräva en bedömning för att endast tillåta någon när personen inte känns igen.
Användarupplevelsen som du skapar för att stödja de personer som ska använda systemutdata bör utformas och utvärderas med dessa personer för att förstå hur väl de kan tolka utdata, vilken ytterligare information de kan behöva, hur de kan få svar på sina frågor och i slutändan hur väl systemet stöder deras förmåga att göra mer exakta bedömningar.
Använda flera faktorer för autentisering
Använd Ansikts-API tillsammans med en eller flera andra identifieringsfaktorer när du skapar autentiseringssystem, till exempel att bekräfta passagerare som ska gå ombord på ett plan eller bekräfta en banktransaktion. Som beskrivs ovan använder ansiktsverifiering ansiktsigenkänning som en andra faktor för att identifiera någon snarare än en enda eller primär faktor. Ansiktsidentifiering kräver inte någon annan faktor; Ansiktsidentifiering är dock ett mer tekniskt svårt problem eftersom avsökningsmallen jämförs med ALLA registrerade mallar i stället för bara mallen för den primära identifieraren som är associerad med avsökningsmallen. Det är ofta fortfarande möjligt att använda andra signaler för att stödja autentisering när du använder ansiktsidentifiering, till exempel att begränsa uppsättningen registrerade mallar att jämföra genom att begränsa sökningen till personer som har en biljett för en viss flygning. Även om det inte går att välja ansiktsverifiering för alla scenarier rekommenderar Microsoft ansiktsverifiering för användning, inklusive säker åtkomst till byggnader och för andra viktiga affärs- och säkerhetsfunktioner.
Använda de senaste modellerna
Använd de senaste identifierings- och igenkänningsmodellerna i dina program. Som standard används de äldsta identifierings- och igenkänningsmodellerna för bakåtkompatibilitet, så du måste ange de senaste modellerna i dina API-begäranden.
Använd de tillhandahållna kvalitetsattributen för att ge användarfeedback och avgöra om bilden är tillräckligt bra för ansiktsigenkänning
Från vår undersökning orsakas många problem av bilder av låg kvalitet som påverkas av de begränsningar och kompromisser som beskrivs ovan som används för ansiktsigenkänning. I sådana fall kan även en människa kämpa för att fatta rätt beslut. För att stödja insamling av högkvalitativa bilder erbjuder API:et för ansiktsigenkänning ett bildkvalitetsattribut som flaggar problem som gäller belysning, oskärpa, ocklusioner eller huvudvinkel som kan begränsa användbarheten av bilder för ansiktsigenkänning. Se snabbstarten för hur du lägger till användare med hjälp av kvalitetsfiltret och hur du anropar ansiktsavkänning med ansiktsklientens SDK:er, och besök API-konsolen för att testa slutpunkten.
Metodtips för att förbättra ansiktsigenkänning med övervakning av missbruk av ansiktsupplevnad
Ansiktsigenkänningsteknik, när den används för åtkomstauktorisering, kan vara ett mål för angripare som försöker kringgå den eller tekniken för livenessidentifiering. Ofta innebär dessa förbikopplingsförsök brute force-attacker av olika typer av tryckta foton framför systemet, vilket anses vara missbruk av systemet. För att minimera sådana råstyrkeattacker bör specifika åtgärder kring antal återförsök och hastighetsbegränsning implementeras.
Skapa en session med konservativt anrop och tidsgränser
En session fungerar som den första försvarslinjen, vilket säkerställer att processen för livenessdetektering är säker och konsekvent, vilket avskräcker brute force-angrepp. En sessionsauktoriseringstoken genereras för varje session och kan användas för en förinställd kvot för försök att identifiera igenkänning eller liveness. Om en programanvändare inte lyckas inom försöksgränserna krävs en ny token. Detta möjliggör en omvärdering av den risk som är associerad med ytterligare återförsök. Genom att ange ett konservativt lågt antal tillåtna anrop per session kan du omvärdera den här risken oftare innan du utfärdar en ny token.
Använd lämplig korrelationsidentifierare när du skapar en session
Enhetskorrelations-ID vägleder heuristiken för automatisk missbruksövervakning i Ansikts-API:et så att du kan neka missbrukstrafik till systemet som implementerar identifiering av ansiktsigenkänning. När ett tröskelvärde för missbruksförsök nås av en viss korrelationsidentifierare kan inga fler sessioner skapas med den identifieraren.
Generera en slumpmässig GUID-sträng och associera den med sekventiella försök från samma enskilda primära identifierare i systemet. Valet av identifierare eller identifierare som ska mappas beror på dina programbehov och andra parametrar som används för att bedöma åtkomstrisken. Använd inte programmets primära identifierare eftersom du kan behöva återskapa ett nytt slumpmässigt GUID för att mappa till identifieraren vid behov.
Utforma systemet för att stödja mänskligt omdöme
När ett enhetskorrelations-ID flaggas och inga fler sessioner kan skapas med identifieraren implementerar du en meningsfull mänsklig granskningsprocess för att säkerställa att fel inte beror på missbrukande trafik eller brute force-attacker. Om du efter granskningen bestämmer dig för att tillåta fler försök från samma entitet eftersom tidigare fel anses vara legitima återställer du associationen genom att generera ett nytt slumpmässigt GUID som mappats till den enskilda identifieraren.