report

Il problema dei bias negli algoritmi di riconoscimento facciale

Pubblicato in Ethics da

AA

Primo articolo della serie della Redattrice Ospite Michela Cerasi. Contattaci per saperne di più sul nostro programma di Redattrici e Redattori Ospiti.

Riconoscimento facciale: che cosa è e quali scopi ha

Il riconoscimento facciale è una delle tante applicazioni dell’intelligenza artificiale che appartiene al campo del Machine Learning (o apprendimento automatico) e più in particolare ad un suo ramo, quello della Computer Vision. Questa studia i diversi modelli e metodi per rendere le macchine abili nella comprensione delle informazioni visuali contenute in immagini digitali o in frame video.

Lo scopo di tale area di studio è di emulare la visione biologica, non limitandosi unicamente all’acquisizione di un’immagine bidimensionale, ma procedendo con l’interpretazione del contenuto della stessa, riproducendo nella macchina il percorso cognitivo compiuto dall’essere umano nell’interpretazione della realtà che lo circonda. Tra tutte le abilità sensoriali dell’uomo la visione è forse il senso più importante, in quanto gli permette di percepire ed interpretare l’ambiente, di riconoscere oggetti o persone e di inferire sul mondo tridimensionale.

Il riconoscimento facciale, infatti, è in questo senso una pratica innovativa in quanto non solo riesce ad individuare persone all’interno di immagini, ma riesce anche ad attribuire un’identità specifica ad esse attraverso l’estrazione e l’analisi delle caratteristiche fisiologiche del volto.

Si può dunque meglio definire un sistema di riconoscimento facciale come un sistema di riconoscimento biometrico, la biometria infatti consente di autenticare o identificare una persona sulla base di una serie di dati riconoscibili e verificabili, che sono unici e invarianti.

In questo caso, tra le diverse caratteristiche biometriche, vengono prese in considerazione quelle fisiologiche (come le impronte digitali, l’iride, il DNA e le immagini facciali) in quanto più affidabili e difficilmente alterabili rispetto alle caratteristiche comportamentali (come la calligrafia, le registrazioni vocali o le firme) che possono invece essere facilmente duplicate, clonate o alterate e dunque meno efficaci in termini di sicurezza.

È per questo motivo che il riconoscimento biometrico del volto viene utilizzato, oltre che per lo sblocco di dispositivi, anche in tutte quelle situazioni in cui è richiesto un elevato grado di sicurezza come negli aeroporti, nelle banche o in particolari settori industriali fino ad arrivare anche al campo legale e giudiziario.

Come funzionano i sistemi di riconoscimento facciale

Essendo una tecnica di riconoscimento biometrico, il funzionamento di un sistema di riconoscimento facciale varia a seconda dell’obiettivo che ci si pone, pertanto vengono distinte l’autenticazione dall’identificazione di un soggetto:

  • Nel caso dell’autenticazione il processo è detto “one to one matching” e consiste nel verificare la corrispondenza tra l’immagine di un individuo catturata in tempo reale con quella del soggetto già memorizzata all’interno di un database. Tale processo serve ad esempio per avere la certezza che un individuo sia chi dichiara di essere;
  • Nel caso dell’identificazione il processo è invece chiamato “one to many matching” e verifica la corrispondenza tra i dati del soggetto catturati in tempo reale con tutti quelli presenti nel database. L’identità del soggetto in questo caso specifico non è nota, ma viene ricercata attraverso la verifica delle corrispondenze.

Dietro il funzionamento di tali sistemi operano una serie di algoritmi intelligenti che permettono di eseguire il riconoscimento di un soggetto attraverso la cattura, l’analisi e la comparazione di modelli basati sulle caratteristiche facciali di una persona. Vengono distinte generalmente tre fasi nel processo di riconoscimento facciale:

  • Fase della cattura del volto e di Detection, nella quale viene impiegato un software per rilevare la presenza e la posizione dei volti nell’immagine analizzata;
  • Fase di estrazione delle features, nella quale le informazioni analogiche del volto vengono digitalizzate prendendo in considerazione in particolare la geometria spaziale dei tratti distintivi del viso. Il risultato di questa operazione è un modello che presenta un insieme ridotto di dati che riassumono le caratteristiche uniche del volto;
  • Fase di matching, nella quale si verificano le corrispondenze con altri modelli di volti già registrati per poi procedere con l’autenticazione o l’identificazione del soggetto.

Ciò che ha dato un importante slancio al settore del riconoscimento facciale, e più in generale all’intero campo dell’apprendimento automatico, è stato in particolare l’utilizzo del Deep Learning (o apprendimento profondo). Si parla in questo caso di una sottocategoria del Machine Learning che implementa algoritmi in grado di processare enormi quantità di dati e di creare modelli di apprendimento su più livelli in modo da simulare il funzionamento del cervello umano, soprattutto quelle parti di esso impiegate nella visione.

Tra le architetture di Deep Learning(1)https://towardsdatascience.com/a-comprehensive-guide-to-convolutional-neural-networks-the-eli5-way-3bd2b1164a53 si annoverano in particolare le cosiddette Convolutional Neural Networks che permettono alla macchina di semplificare l’immagine di partenza segmentandola e conservando in ogni strato della rete le caratteristiche fondamentali di essa, fino ad arrivare allo strato finale nel quale le informazioni conservate vengono combinate insieme per giungere alla comprensione totale dell’immagine e alla sua successiva classificazione.

Attraverso questo apprendimento su più livelli un sistema di riconoscimento facciale acquisisce competenze sulla base delle esperienze passate e arriva a svolgere le sue funzioni automaticamente, anche quelle più complesse.

L’avvento della cosiddetta stagione dei Big Data ha permesso agli algoritmi alla base di questi sistemi di avere a che fare con una enorme mole di dati, inoltre l’utilizzo di questi attraverso l’applicazione di tecniche matematiche ha permesso agli algoritmi di effettuare delle vere e proprie previsioni.

È così che nel mondo odierno un numero sempre crescente di decisioni, che concernono sia la nostra libertà individuale ma anche collettiva, vengono prese dalle macchine, quei sistemi sempre più automatizzati governati da algoritmi.

Ciò ha completamente rivoluzionato il nostro modo di pensare e di agire, dato che per la loro natura predittiva tali strumenti vengono sempre più utilizzati in molteplici aspetti della nostra vita: per valutare il rendimento professionale, per prevedere e analizzare la situazione economica, per effettuare diagnosi, per indagare le nostre preferenze e i nostri interessi, fino ad arrivare anche a costituire strumenti importanti nelle decisioni giudiziarie.

Così, la questione del sapere che un tempo andava a identificarsi con la conoscenza del passato, viene oggi a coincidere con la capacità di prevedere invece il futuro data la preponderanza delle correlazioni algoritmiche.

Nel campo del riconoscimento facciale queste correlazioni hanno da un lato prodotto sicuramente degli effetti molto positivi, si pensi ad esempio alle sue applicazioni in fatto di pubblica sicurezza (come nei controlli alle frontiere o nel contrasto alla criminalità), dall’altro però sono altrettanto evidenti i rischi e le problematiche connesse ad un suo largo e spesso non controllato utilizzo.

Molteplici sono stati i casi in cui tali mezzi sono stati utilizzati impropriamente, è noto infatti come questi non solo possono commettere errori puramente tecnici, ma possono assumere, malgrado un intervento preventivo, decisioni fortemente discriminatorie, data la natura predittiva e automatizzata degli algoritmi.

L’operazione di interpretazione e classificazione di un’immagine da parte di un sistema di riconoscimento facciale apre così la questione dei bias algoritmici, uno dei principali problemi sollevati da questa tecnologia.

I bias algoritmici si traducono in pregiudizi e in vere e proprie discriminazioni e interessano tutti quei sistemi informatici che discriminano sistematicamente certi individui o gruppi di individui a favore di altri. Nel caso dei sistemi di riconoscimento facciale è venuto alla luce come questi siano viziati in particolare da gender bias e racial bias: ciò significa che presentano notevoli difficoltà nel riconoscere individui con la pelle scura e soprattutto individui di sesso femminile.

Da dove nascono i bias?

Le radici di tali pregiudizi sono state identificate nella fase di training degli algoritmi. Tutto dipende dai dati in entrata e in particolare dalla loro qualità, un concetto che viene efficacemente espresso con la nozione “garbage in – garbage out”, letteralmente: se introduci spazzatura otterrai come risultato spazzatura.

Se quindi gli algoritmi vengono addestrati sulla base di dati inquinati, parziali o erronei produrranno come risultato delle previsioni allo stesso modo parziali e inesatte. La macchina può a questo punto restituire visioni delle cose segnate da pregiudizi e stereotipi che rinforzano asimmetrie e ingiustizie sociali.

Nel caso del riconoscimento facciale gli algoritmi potrebbero così avere difficoltà nel riconoscere ugualmente tutti gli individui o talvolta potrebbero effettuare delle identificazioni erronee che potrebbero avere anche delle conseguenze spiacevoli, come nel caso in cui nel campo della giustizia si decidesse di punire qualcuno basandosi unicamente su tali elaborazioni automatiche di dati e non sul comportamento effettivo degli individui.

Come fa una macchina a riflettere pregiudizi?

Ovviamente non è l’algoritmo a generare direttamente pregiudizi verso determinate categorie di persone, esso non fa altro che replicare, se ci sono, i pregiudizi strutturali presenti nei dati in entrata. Sono stati così individuati in particolare 3 tipi di bias(2)https://nissenbaum.tech.cornell.edu/papers/Bias%20in%20Computer%20Systems.pdf:

  1. Preexisting bias: si tratta di pregiudizi che esistono indipendentemente dal sistema informatico. In questo caso la decisione algoritmica può essere influenzata da chi e da come vengono addestrati gli algoritmi. Questi possono così riflettere i pregiudizi dello stesso programmatore, che può trasmetterli sia attraverso sforzi espliciti o inconsciamente anche a dispetto delle migliori intenzioni;
  2. Technical bias: questi possono invece derivare da alcune limitazioni del sistema stesso che possono riguardare problemi relativi all’hardware, al software o ad altri strumenti periferici;
  3. Emergent bias: sono dei pregiudizi che emergono solamente dopo l’applicazione effettiva del sistema in un determinato contesto di utilizzo e per questo sono impossibili da identificare preventivamente.

La distorsione dei dati può dunque derivare sia dalle modalità di raccolta dei dati e da chi c’è dietro la programmazione, sia dallo strumento utilizzato per acquisirli.

Il rilevamento di questi pregiudizi e la loro analisi è essenziale per comprendere come, al contrario di come si può facilmente pensare, gli algoritmi non sono neutrali e trasparenti per la loro natura matematica e informatica, si caratterizzano piuttosto per la loro parzialità.

Il tema del pregiudizio algoritmico è così diventato il centro di numerosi studi e ricerche. Significativo è stato uno studio condotto da Joy Buolamwini, una ricercatrice del MIT, e Timnit Gebru, una computer scientist, denominato Gender Shades(3)http://gendershades.org/overview.html.

Come spiegato da Buolamwini in una sua presentazione ai TED talks, la computer vision utilizza tecniche di apprendimento automatico per essere in grado di eseguire il riconoscimento facciale, pertanto viene creato un set di allenamento costituito da diversi volti per rendere la macchina capace di riconoscerli. Se però i set non sono variegati qualsiasi faccia che si discosta dalla “norma” stabilita e dallo standard, non verrà rivelata. La ricercatrice a dimostrazione di tale tesi ha sottoposto una sua immagine all’analisi di un programma di riconoscimento facciale che difatti non è riuscito a rilevare il suo volto fin quando non ha indossato una maschera bianca.

Con il progetto Gender Shades si è voluto testare il funzionamento e l’accuratezza degli algoritmi di riconoscimento facciale di alcune tra le principali società tecnologiche come IBM, Microsoft e Megvii.

Per svolgere tale test è stato creato un dataset composto da 1270 immagini di persone provenienti da 3 paesi africani e 3 paesi europei. I volti sono stati poi suddivisi in base al genere, utilizzando unicamente le etichette “male” e “female” in quanto tutte le compagnie in esame forniscono una classificazione del genere che utilizza esclusivamente delle etichette di sesso binarie e sono poi stati suddivisi in base al tipo di pelle che anche qui prevedeva unicamente due categorie (lighter skin/darker skin). Per un’indagine più accurata sono state successivamente create delle sottocategorie per intersezione di genere e tipo di pelle (darker female, lighter female/darker male, lighter male).

Sulla base dei dati specifici ottenuti da ciascuna compagnia ne è risultato che complessivamente ciascuna di esse ha registrato notevoli difficoltà nel riconoscere individui con la pelle più scura e in particolare le donne, mentre hanno registrato una precisione talvolta del 100% nel riconoscere gli uomini con la pelle chiara.

IBM è la compagnia che ha mostrato il più grande divario di precisione, con una differenza del 34,4% nel tasso di errore tra gli uomini con la pelle più chiara e le donne con la pelle più scura. I tassi di accuratezza, infatti, mentre per il gruppo lighter male registrano il 99.7%, per il gruppo darker female registrano solo il 65.3%. Per i gruppi restanti invece il sistema registra una precisione dell’88.0% per il gruppo darker male e una precisione del 92.9% per il gruppo lighter female.

La ricerca ha così messo in luce come il problema dei bias sia un problema ormai ampiamente diffuso e che non può più essere ignorato. La posta in gioco è alta poiché ha che fare con la libertà personale e con i diritti di ognuno di noi, soprattutto se questi sistemi continueranno a riflettere pregiudizi, priorità e preferenze di chi ha il potere di intervenire su tali tecnologie.

Si possono risolvere i problemi del bias in AI?

Purtroppo, la possibilità di eliminare completamente i bias dagli algoritmi risulta per una serie di motivi impraticabile.

Uno dei motivi è di natura psicologica e ha a che fare con il fatto che i pregiudizi sono degli elementi profondamente radicati nel nostro modo di agire e difficili da eliminare poiché nascono naturalmente dal nostro primo incontro con il sociale, quindi, soprattutto nel caso in cui è il programmatore a trasmettere tali limitazioni al sistema, è complicato individuarli preventivamente in quanto spesso vengono trasmessi inconsapevolmente(4)https://www.altalex.com/documents/news/2020/08/03/intelligenza-artificiale-euristica-e-bias-cognitivi-applicati-agli-algoritmi.

Inoltre, nonostante questi sistemi siano sempre più in grado di svolgere automaticamente il proprio lavoro la supervisione umana è ancora importante e necessaria ma costituisce un problema per la difficoltà intrinseca umana di separare la propria prospettiva dalle proprie conoscenze e dai costrutti culturali.

Un altro motivo che occorre considerare è che, nella creazione di un software, è pratica comune utilizzare dei codici già esistenti, in quanto permette di rendere il lavoro molto più rapido ed efficiente, in questo modo però la distorsione nei dati diventa impossibile da rilevare poiché nascosta tra le righe di milioni di dati.

Infine, possiamo affermare che il machine learning è per sua natura un tipo di discriminazione statistica, infatti, essendo stato progettato per prendere decisioni in tempi brevi, inevitabilmente opererà una discriminazione tra le opzioni disponibili.

Il concetto stesso di pregiudizio cambia continuamente nello spazio, nel tempo e da cultura a cultura, pertanto risulta impossibile la creazione di un sistema in grado di stare al passo di tale complessità.

Trovare soluzioni al problema dei bias è per questi motivi non semplice, tuttavia alcuni interventi sono necessari e possibili soprattutto per cercare di limitare i danni.

Riguardo l’intervento umano si potrebbe cercare di sviluppare una maggiore consapevolezza dei limiti umani, attraverso una formazione più adeguata e consapevole dei rischi, in modo da poter avere un maggior margine di controllo sulle proprie azioni. Gli stessi ricercatori dovrebbero in questo senso meglio documentare le fonti e il funzionamento dei propri modelli, ad esempio attraverso le cosiddette “schede modello” che sono dei documenti rilasciati dai programmatori che contengono tutte le indicazioni tecniche e pratiche per utilizzare i modelli nei giusti contesti in modo da evitare possibili risultati indesiderati(5)https://ainowinstitute.org/AI_Now_2019_Report.pdf.

Per quanto riguarda invece gli algoritmi, si potrebbe intervenire rendendo più equi e rappresentativi i dataset attraverso una maggiore rappresentazione di tutti quei gruppi che solitamente sono invece sotto rappresentati per promuovere trasparenza, diversità, non discriminazione e inclusione. Per esempio IBM in seguito alla ricerca Gender Shades ha rilasciato un nuovo dataset “Diversity in Faces” al fine di promuovere lo studio della diversità e spingere la ricerca verso una maggiore accuratezza. Il set infatti contiene circa 1 milione di immagini di volti con anche l’annotazione di numerosi dati che descrivono i diversi modi in cui un volto può differenziarsi da un altro. All’aumentare dei dati a disposizione un sistema imparerà così meglio a riconoscere e a comprendere come i volti si diversificano tra di loro(6)https://www.ibm.com/blogs/research/2019/01/diversity-in-faces/.

Infine un altro intervento potrebbe essere quello di effettuare continui test valutativi delle performance degli algoritmi prima di renderli pubblicamente fruibili, in modo da poterli controllare prima che diventino un rischio concreto per la società, soprattutto se questi sistemi venissero presi poi come delle fonti estremamente attendibili e come fonti di assoluta verità (7)https://www.wired.it/attualita/tech/2020/10/02/pregiudizio-algoritmi/.

Sostenere lo sviluppo di tali tecnologie è dunque sicuramente essenziale per affrontare la modernità e per evolvere in termini di efficienza di processo, ma altrettanto importante si rivela lo sviluppo di un’intelligenza artificiale dinamica, etica e sicura al fine di migliorare la vita individuale e collettiva e non di comprometterla.