Immagine da rawpixel.com (CC 0).
Una delle ragioni con cui viene giustificato il ricorso agli algoritmi come sistemi di assistenza alla decisione è la necessità di diminuire gli errori umani e arginare la parzialità dei loro punti di vista. Inserire nel processo decisionale una procedura automatica formulata nel linguaggio della matematica e magari anche basata sui dati, sembra una buona strategia per renderlo più oggettivo e affidabile.
Ma gli algoritmi sbagliano, eccome. E sbagliano in tanti modi diversi. In alcuni casi sbagliano nel senso che sono approssimazioni numeriche di qualche formula matematica implicita, in altri casi sbagliano in senso statistico perché hanno un’accuratezza limitata, in altri sbagliano perché, come scriveva la matematica Cathy O’Neil nel 2016, sono “opinioni scritte nel linguaggio della matematica”.
Questa tassonomia degli errori degli algoritmi non ha nessuna pretesa di essere esaustiva, ma è utile per ragionare su quanto gli algoritmi siano fallibili, senza mai perdere di vista il fatto che anche le persone sbagliano e l’obiettivo da perseguire dovrebbe essere quello di costruire un’alleanza virtuosa tra esseri umani e computer.
Gli algoritmi “sbagliavano” già prima dell’era digitale, dei social media e delle reti neurali.
Il 25 febbraio 1991, durante la guerra del golfo, un missile Scud lanciato dall’esercito iracheno verso la base americana a Dhahran in Arabia Saudita uccise 28 soldati americani e ne ferì 260. Il sistema antimissile a disposizione dell’esercito statunitense aveva nel passato intercettato con missili Patriot gli ordigni lanciati dall’Iraq verso Israele e Arabia Saudita, ma quel giorno fallì. Per il sistema di tracciamento la traiettoria dello Scud non è altro che la posizione del missile istante dopo istante, calcolata moltiplicando la velocità del missile per la durata in secondi dell’intervallo con cui viene discretizzato il tempo di volo. L’ampiezza di questo intervallo era di un decimo di secondo, ma il computer ha bisogno di rappresentarlo in forma binaria, cioè come somma di potenze di grado crescente della frazione ½. Con un po’ di aritmetica si capisce che la rappresentazione binaria è 0.000110011001100 … e così via ripetendo 1100 all’infinito. Ma il computer non ha spazio infinito per rappresentare un numero, aveva, quello di allora, 24 bit a disposizione, cioè una stringa di 24 interi, 0.00011001100110011001100, che tradotta in notazione decimale è 0,099999905, di pochissimo inferiore a 0,1. L’errore è piccolo, ma ripetuto per tutti i passi temporali necessari a descrivere la traiettoria del missile, causò un errore di ben 573 metri nel determinare la posizione finale dello Scud iracheno, e come conseguenza non venne attivato il sistema di difesa.
Il vantaggio con questo tipo di errori è che possiamo stimarli in anticipo. Così come quando istruiamo un computer a calcolare l’integrale di una funzione, cioè l’area sotto la curva che descrive questa funzione. Uno dei metodi più semplici è riempire quest’area con una serie di rettangoli, come per costruire un istogramma che stia sempre sotto la curva. A seconda di quale sia il nostro obiettivo, possiamo decidere di raffinare la nostra stima scegliendo rettangoli con base sempre più piccola, ma questo verrà al costo di un maggiore tempo computazionale.
Ma se degli errori numerici degli algoritmi potevamo forse ignorare l’esistenza, perché tutto sommato rimanevano confinati a campi specifici per cui era accettabile pensare che solo gli specialisti dovessero conoscerne il funzionamento e i limiti, degli algoritmi “statistici” dobbiamo interessarci, perché sono alla base di una serie di servizi che mediano le nostre interazioni sociali, che influenzano le decisioni delle amministrazioni pubbliche e le nostre scelte personali, che in alcuni casi determinano la qualità dell’assistenza sanitaria che riceviamo o l’equità del sistema giuridico.
Con algoritmi “statistici” intendiamo qui tutti gli algoritmi basati sui dati, siano essi semplici regressioni lineari o reti neurali profonde. Tra questi rientrano i sistemi di classificazione che sono alla base di tanti dei servizi che abbiamo elencato prima.
Un esempio è l’algoritmo che filtra lo spam nei servizi di posta elettronica. L’algoritmo in questione funziona su base statistica. Prima “impara” a riconoscere cosa è spam e cosa non lo è analizzando i testi di un campione di messaggi già etichettati e poi applica quello che ha imparato sui nuovi messaggi in arrivo. Chiaramente c’è un margine di errore, o più propriamente di incertezza. L’algoritmo infatti calcola per ogni messaggio la probabilità che sia spam e se questa probabilità supera una certa soglia lo dirotta nella cartella dedicata.
Esistono diverse metriche per calcolare l’accuratezza di un simile sistema di classificazione: la sensibilità, cioè la frazione di messaggi spam correttamente identificati come tali, la specificità, ovvero la frazione di messaggi non spam correttamente identificati come tali, il tasso di falsi positivi, cioè la frazione di messaggi non spam identificati erroneamente come spam oppure il tasso di falsi negativi, ovvero la frazione di messaggi spam erroneamente identificati come non spam. Ne esistono molte altre e l’accuratezza dell’algoritmo può essere regolata entro certi limiti a seconda di quale sia l’obiettivo da raggiungere.
Il compromesso che si raggiunge sull’accuratezza può avere anche conseguenze molto gravi. Un esempio è il programma SKYNET della National Security Agency statunitense, rivelato grazie all’attività del whistleblower Edward Snowden nel 2015.
L’algoritmo, analizzando il traffico mobile di 55 milioni di cittadini Pakistani in possesso di un cellulare, cercava di individuare potenziali membri di Al Qaeda. Il punto di partenza erano le identità di sette terroristi, noti al servizio di intelligence statunitense. L’algoritmo “apprendeva” le loro abitudini: spengono frequentemente il cellulare, cambiano spesso SIM, si spostano di notte su determinati percorsi. Confrontando queste abitudini con quelle degli altri Pakistani, l’algoritmo assegnava un punteggio: maggiore la somiglianza nelle modalità di utilizzo, maggiore il punteggio. Il sistema produceva lo 0,18% di falsi positivi, una percentuale apparentemente piccola ma che applicata su una popolazione di 55 milioni di persone, significa 99 000 innocenti potenzialmente scambiati per terroristi.
Queste valutazioni danno per buona la definizione di terrorista. Ma anche in quella definizione si possono annidare degli errori, che forse in questo caso sarebbe più corretto chiamare sbagli.
Un esempio è l’algoritmo ImpactPro sviluppato dalla società privata statunitense Optum e utilizzato in ambito sanitario. L’obiettivo dell’algoritmo è individuare le persone che beneficerebbero maggiormente dall’accesso a cure mediche aggiuntive, valutando il rischio individuale di sviluppare in futuro patologie gravi che richiederebbero interventi più complessi e costosi. Per farlo utilizza la storia clinica di ciascun paziente e le corrispondenti spese mediche e prevede le spese mediche future, con l’ipotesi che queste costituiscano una buona approssimazione delle cure necessarie. Ai pazienti per cui sono previsti elevati livelli di spese mediche future, vengono offerte cure speciali, ad esempio vengono inclusi in programmi di screening.
A ottobre del 2019 un gruppo di ricercatori statunitensi ha pubblicato su Science un’analisi delle previsioni di ImpactPro relative a un campione di pazienti del Mass General Brigham Hospital di Boston. i ricercatori hanno constatato che solo il 18% delle persone nere venivano ritenute bisognose di assistenza. Inoltre, a parità di condizione di salute (misurata attraverso il numero di patologie croniche) l’algoritmo assegnava ai pazienti neri un punteggio di rischio sistematicamente più basso rispetto ai bianchi. Questo accade perché l’algoritmo non considera il fatto che le peggiori condizioni socioeconomiche della comunità afroamericana e la sfiducia verso il sistema sanitario hanno storicamente limitato l’accesso alle cure mediche e di conseguenza i livelli di spesa.
Infatti, guardando alle spese mediche di gruppi di persone con lo stesso numero di patologie croniche, gli scienziati si sono accorti che queste sono più basse per i neri rispetto ai bianchi: in media i neri spendono 1800 dollari all’anno meno dei bianchi.
Il problema in questo caso era nell’ipotesi che le spese mediche rappresentassero una buona approssimazione delle condizioni di salute.
I ricercatori hanno mostrato che esiste una formulazioni alternativa dell’algoritmo che permette di prevedere meglio la condizione di salute dei pazienti. Adottando queste formulazione, la percentuale di persone nere a cui sarebbe stato consigliato di offrire assistenza supplementare sarebbe salita dal 18% al 47%.
L’altro tipo di sbagli a cui si può andare in contro derivano dalla qualità dei dati su cui gli algoritmi vengono allenati.
Uno degli esempi più famosi in questo senso è l’algoritmo COMPAS sviluppato dalla società statunitense Northpointe e venduto a corpi di polizia e tribunali negli Stati Uniti. L’algoritmo, sulla base di una serie di informazioni demografiche e delle risposte a un questionario, assegna ai sospettati di reato un punteggio di rischio che valuta la probabilità che il reato venga reiterato nei due anni seguenti. Questo punteggio viene utilizzato, per esempio, dai giudici per decidere se concedere gli arresti domiciliari in attesa del processo o invece tenere i sospettati in carcere.
Nel 2016 un’inchiesta del giornale ProPublica rivelò che l’algoritmo penalizzava i neri rispetto ai bianchi. Il tasso di falsi positivi, cioè di cittadini a cui l’algoritmo assegnava un livello di rischio alto ma che non reiteravano il reato nei due anni successivi, era del 45% tra i neri e del 24% tra i bianchi. Viceversa, il tasso di falsi negativi, cioè di cittadini a cui l’algoritmo assegnava un basso livello di rischio ma che andavano incontro a recidiva, era del 28% tra i neri e del 48% tra i bianchi. All’origine di questo bias c’è il fatto che il campione su cui l’algoritmo viene addestrato contiene un maggior numero di neri che vanno incontro a recidiva rispetto a bianchi che vanno incontro a recidiva. Questo è dovuto alle disuguaglianze strutturali della società statunitense, perché la propensione a commettere reati è correlata a variabili come il reddito, il luogo in cui si vive e il livello di istruzione, che penalizzano fortemente le comunità afroamericane.
Il caso di COMPAS spiega in modo molto chiaro come gli algoritmi basati sui dati apprendano anche i pregiudizi e le disuguaglianze “scritte” in quei dati e li replichino. Non solo, rischiano di rinforzarle: spingendo i giudici a sentenze più severe verso i neri diminuiscono la probabilità che questi possano reintegrarsi nella società e aumentano il rischio di recidiva, sbilanciando ulteriormente i dati che informeranno gli algoritmi in futuro.
Proprio l’esercizio della giustizia ci permette però di riflettere sulla fallibilità delle decisioni umane.
Nel 2011 un gruppo di giuristi americani ha pubblicato sulla rivista Proceedings of the National Academy of Sciences, uno studio in cui ha analizzato 1 000 sentenze emesse da otto giudici in un tribunale israeliano. La giornata in tribunale comprende due pause, in cui i giudici possono bere un caffè o pranzare, e si articola quindi in tre sessioni decisionali. I ricercatori hanno osservato che la percentuale di decisioni favorevoli scende gradualmente dal 65% a quasi zero all’interno della sessione decisionale e ritorna bruscamente al 65% dopo la pausa. Le uniche altre variabili che hanno influenzato la decisione dei giudici sono state il numero di volte che il detenuto era stato in carcere e la presenza di un programma di riabilitazione. Altri fattori, come la gravità del reato commesso dal detenuto, la durata del carcere, il sesso e l'etnia, non hanno avuto alcun effetto sulle sentenze. “I nostri risultati suggeriscono che le sentenze giudiziarie possono essere influenzate da variabili estranee ai casi esaminati e che non dovrebbero avere alcuna influenza sulle decisioni legali”, scrivevano i ricercatori.
La partita che si gioca in questi anni sulla regolamentazione dell’utilizzo degli algoritmi come sistemi automatici di assistenza alla decisione è dunque una partita fondamentale. Possiamo puntare a costruire un’alleanza virtuosa tra algoritmi e persone, ma questo richiede consapevolezza da parte dei cittadini, l’impegno delle istituzioni a difendere i diritti fondamentali e coraggio nel limitare il potere e i profitti delle società tecnologiche.