
L’uso di alcuni algoritmi di intelligenza artificiale ha un grande impatto sulla vita delle persone: può pregiudicare l’ammissione a una scuola, la durata di una pena per un imputato, la scelta di una terapia medica o la concessione di un mutuo. In tutti questi casi non è facile stabilire se l’algoritmo abbia ragione e, come abbiamo visto in un precedente articolo su questo giornale, il problema non sta solo nell’individuare possibili decisioni “sbagliate”, ma anche decisioni “parziali” (in inglese, “biased”), cioè influenzate da pregiudizi che l’algoritmo ha inglobato in qualche fase del suo sviluppo.
C’è un altro fattore a complicare le cose: spesso gli algoritmi di intelligenza artificiale sono “scatole nere” (black box), a cui presentiamo l’istanza di un problema e da cui riceviamo una risposta. Cosa succede all’interno della scatola, come l’algoritmo “fabbrica” la risposta che riceviamo, è oscurato ai nostri occhi: o per come è costruito l’algoritmo, o perché l’algoritmo è di proprietà di un’azienda che non ne rilascia il codice. Come si può facilmente immaginare, questo complica ulteriormente il problema. Se un consulente finanziario ci nega un prestito possiamo sempre chiedergli quali sono le ragioni del diniego, e lui dovrà giustificare la decisione. Ma come si fa a ottenere una spiegazione da una scatola nera?
L’XAI (eXplainable Artificial Intelligence) ha cercato negli ultimi anni di rispondere a questa domanda, mettendo a punto tecniche che “spieghino” le decisioni degli algoritmi black box. Ma, nonostante i numerosi modelli di spiegazione prodotti, continuano a esserci alcune criticità. Proviamo a spiegare perché, almeno per quei problemi che possono avere un impatto significativo sulla vita delle persone e sulla società, sarebbe meglio fare a meno delle scatole nere.
Tecniche di spiegazione per gli algoritmi
Proviamo a immaginare gli algoritmi come meccanismi regolati da migliaia di parametri, che possiamo visualizzare come delle “manopole”: per ognuno ce ne sono almeno centinaia di migliaia, ma per quelli più grandi si arriva tranquillamente al miliardo. Le manopole devono indicare determinati valori affinché l’algoritmo funzioni correttamente. Noi non conosciamo questi valori ma, durante la fase di “allenamento” dell’algoritmo, le manopole si spostano da sole un poco alla volta. In effetti, non sappiamo se i valori a cui le manopole arrivano al termine dell’allenamento siano i migliori possibili, e non sappiamo nemmeno se per questi valori l’algoritmo funzionerà sempre bene. Possiamo solo fidarci del fatto che se l’allenamento è stato fatto bene le manopole sono andate al posto giusto.
Allo stesso tempo, non conosciamo bene neppure il ruolo di ciascuna manopola. In generale, sappiamo che senza allenamento, scegliendo dei valori a caso, l’algoritmo non funziona. Ma non abbiamo idea se dopo l’allenamento, cambiando solo i valori di qualche manopola, l’algoritmo continuerà a funzionare allo stesso modo, migliorerà o peggiorerà. In effetti, non siamo in grado di dire neppure se tutte le manopole che stiamo usando servono davvero. Insomma, è come se ci trovassimo davanti a un puzzle molto complicato, i cui pezzi sono andati al loro posto da soli, e che neanche volendo saremmo in grado di montare da capo.
Per questo motivo, gli scienziati si sono inventati varie tecniche per “spiegare” cosa fa un algoritmo, senza cercare di capire il ruolo di ogni singola manopola. Alcuni metodi si basano sul cercare di rappresentare questi algoritmi molto complicati con altri più semplici, che si comportino allo stesso modo, almeno su alcuni problemi. È come scoprire che il grande algoritmo iniziale su alcuni problemi si comporta come un algoritmo con sole dieci manopole – di cui sappiamo esattamente il funzionamento – e usassimo il secondo per spiegare come funziona il primo.
Un altro metodo di spiegazione consiste nell’evidenziare quali parti di un problema sono le più importanti per la decisione. Per esempio, per un algoritmo che ha il compito di etichettare delle immagini è possibile avere una rappresentazione grafica di quali parti dell’immagine sono più importanti nel determinare l’etichetta. In questa rappresentazione grafica, chiamata “saliency map”, i pixel più importanti sono colorati di un colore più scuro.
Infine, si può provare a spiegare il ragionamento di un algoritmo in maniera “controfattuale”. Per esempio, un algoritmo secondo cui una banca non dovrebbe concedere un prestito, potrebbe dare come spiegazione controfattuale la frase: “se il richiedente avesse un lavoro a tempo indeterminato, il prestito verrebbe concesso”.
Spiegazioni, ma limitate
Anche se esistono dei metodi per spiegare il comportamento delle scatole nere, non è sempre detto che questi forniscano le spiegazioni che vogliamo. Ricordiamo il caso di COMPAS, l’algoritmo che veniva usato nei tribunali americani per stimare la probabilità che un imputato potesse commettere nuovamente un reato, e che veniva usato come supporto decisionale per decidere l’entità della pena. È stato dimostrato che anche se COMPAS non aveva accesso a nessuna informazione diretta sull’etnia dell’imputato, questa veniva inferita da altri fattori, come il cognome e la zona di residenza. In questo caso, anche se avessimo provato a spiegare la decisione di COMPAS tramite un algoritmo più semplice, questo probabilmente ci avrebbe detto che la decisione dipendeva da fattori come il nome e la provenienza, ma non avrebbe direttamente spiegato il bias razziale alla base della decisione.
In altri casi, le spiegazioni potrebbero essere troppo sintetiche per essere davvero utili. In un interessante articolo sui limiti dei modelli spiegabili viene mostrata l’immagine di un cane husky, correttamente etichettata da un algoritmo. Anche la saliency map che mostra quali zone dell’immagine sono state le più importanti per determinare l’etichetta sembra ragionevole, in quanto evidenzia il muso del cane. Tuttavia, quando viene mostrata la saliency map che porterebbe all’etichetta “flauto traverso” le due sembrano indistinguibili! Questo solleva la domanda: una saliency map sarebbe davvero in grado di insospettirci nel caso di una decisione sbagliata?
Anche le spiegazioni controfattuali non è sempre detto siano utili. Riprendiamo l’esempio del prestito e immaginiamo che la spiegazione sia corretta (cioè, il richiedente potrebbe davvero ottenere un prestito se avesse un lavoro a tempo indeterminato), ma che il richiedente possa ottenere il prestito anche semplicemente compilando un modulo aggiuntivo. In quel caso vorremmo come spiegazione controfattuale quella che mostra la soluzione più semplice per il richiedente, cioè: “se il richiedente avesse compilato il modulo aggiuntivo avrebbe ottenuto il prestito”. Purtroppo, in molti casi non siamo in grado di garantire questa “minimalità”. Anzi, in alcuni casi non è nemmeno facile definire quali sono le spiegazioni controfattuali che vorremmo.
Questi non sono gli unici problemi dei metodi di spiegazione. Negli algoritmi black box spesso non siamo sicuri di quali informazioni vengano effettivamente prese in considerazione, ma per un metodo di spiegazione è molto difficile accorgersi che un’informazione è stata tralasciata. È invece è più facile capire quali informazioni vengono utilizzate. Inoltre, una decisione può derivare da errori o pregiudizi presenti nei dati, e anche questo è difficilmente rilevabile dai metodi di spiegazione.
Infine, alcuni studi hanno sollevato dubbi sull’efficacia dei metodi di spiegazione mostrando che, modificando anche impercettibilmente i modelli che vogliamo spiegare, è possibile alterare a piacere le spiegazioni. Per fare un esempio, un algoritmo che assegna prestiti unicamente in base al genere, potrebbe essere modificato in modo che continui a dare le stesse risposte, ma molti i metodi di spiegazione non se ne accorgerebbero, dando in ogni caso spiegazioni assolutamente plausibili e che in nessun modo farebbero sospettare del pregiudizio esistente.
W la trasparenza
Dal discorso fatto finora emerge che siamo ben lontani dal poter spiegare in maniera soddisfacente le decisioni degli algoritmi black box. Ma allora perchè continuiamo a usarli? Esistono alternative? Opposti ai modelli black box, esistono modelli detti “trasparenti”. Si tratta di algoritmi interpretabili, cioè di cui comprendiamo il funzionamento interno e per cui possiamo spiegare le decisioni e il comportamento. Tuttavia, ci sono varie ragioni per cui questa classe di algoritmi soffre la concorrenza dei black box.
In generale, inventare algoritmi trasparenti che funzionino bene quanto quelli black box non è facile. Le centinaia di migliaia di parametri (o manopole) che rendono gli algoritmi black box delle scatole nere sono anche la loro forza: li rendono estremamente flessibili e in grado di funzionare bene su una grande varietà di problemi, che vanno dal risolvere equazioni differenziali al riconoscere i soggetti delle immagini. Inoltre, gli algoritmi black box si sono dimostrati molto più bravi di quelli trasparenti nello svelare andamenti nascosti nei dati, e quindi utilissimi in tutti quei problemi di cui non abbiamo una comprensione esatta o che sono troppo difficili da descrivere nel dettaglio (come esempio possiamo pensare di nuovo al problema del riconoscimento delle immagini).
Gli algoritmi trasparenti, al contrario, devono cercare di fare lo stesso lavoro sfruttando quello che già sappiamo del problema e cercando soluzioni sofisticate, che non usino “parametri di troppo”. Spesso si basano su problemi che sapremmo risolvere in maniera esatta, ma che richiederebbero tempi troppo lunghi. In generale, sviluppare algoritmi trasparenti che siano competitivi con quelli black box richiede da parte dei ricercatori uno sforzo molto maggiore. E non sempre ne vale la pena.
Quando è meglio usare quello che comprendiamo
In effetti, per molte applicazioni della vita di tutti i giorni, gli algoritmi black box sono uno strumento formidabile e hanno segnato un enorme passo avanti. Fino agli anni ‘90 sviluppare un algoritmo in grado di riconoscere le immagini con accuratezza era quasi fantascienza. Oggi, le reti neurali, una popolare famiglia di algoritmi black box, lo rendono un compito alla portata di uno studente universitario di informatica. Ma come sempre è bene essere consapevoli: come ci ha ricordato il Regolamento Europeo sull’Intelligenza Artificiale, non siamo disposti ad accettare lo stesso livello di rischio per qualsiasi applicazione. Per alcune decisioni è fondamentale avere garanzie sul modo in cui queste vengono prese, ed è proprio in queste situazioni che dovremmo evitare i modelli black box, anche tenendo conto che quasi sempre esistono delle alternative trasparenti altrettanto valide.
Una tendenza preoccupante da segnalare nel mondo della ricerca oggi è quella a sviluppare algoritmi black box sempre più grandi, e per questo sempre più potenti e versatili, ma non più interpretabili. È importante non dimenticare che ci sono applicazioni in cui, indipendentemente dalla potenza del nostro algoritmo, non possiamo garantire una probabilità di errore abbastanza bassa da essere accettabile. Per queste applicazioni, per esempio quelle che supportano le decisioni mediche o giudiziarie, è giusto rivolgerci solo a quello che comprendiamo, e anzi spingerci con la ricerca a comprendere ancora di più.