Affideresti la tua vita all’IA?

C’è una storia abbastanza famosa nei circoli di ricerca sulla IA su un modello di rete neurale che era stato formato per distinguere tra lupi e husky. Il modello aveva imparato ad identificarli correttamente, raggiungendo una precisione elevata quando venivano fornite immagini non utilizzate per la sua formazione.

Tuttavia, presto divenne evidente che qualcosa non andava — alcune immagini molto chiare venivano classificate erroneamente. Quando esaminarono il motivo per cui la rete neurale stesse commettendo errori così grossolani, i ricercatori compresero che il modello aveva imparato a classificare un’immagine in base alla presenza della neve in essa — tutte le immagini dei lupi utilizzate per la formazione avevano la neve sullo sfondo, mentre quelle degli husky no. Ovviamente, il modello stava fallendo.

Ora, immaginate che vogliamo poter aiutare a catturare gli husky randagi in natura, quindi ripariamo in qualche modo il modello e gli insegniamo a distinguere correttamente tra lupi e husky indipendentemente dal colore dello sfondo. Lo integriamo in dispositivi con telecamere, che poi mettiamo a disposizione di volontari ed amici. Confidiamo che il nostro modello non dirà che si tratta di un husky quando in realtà è un lupo, ma quanto siamo sicuri che nient’altro guasterà il modello? Cosa succederebbe se il modello vedesse un coyote? Lo classificherà come un lupo, in base alle dimensioni? Che dire di una volpe? Un orso? Rischiamo di dire ai nostri amici di avvicinarsi, sperando che si rendano conto che il randagio è in realtà un orso prima di uscire dalla macchina con una bella succosa bistecca?

Apprendimento automatico di cosa?

Le tecniche di apprendimento automatico, in particolare le reti neurali, hanno ottenuto un enorme successo con una moltitudine di problemi, compresi quelli notoriamente difficili come la traduzione ed il riconoscimento vocale. La loro utilità è innegabile e pertanto, sono diventati onnipresenti in una varietà di applicazioni.

Nonostante una serie di passi in avanti negli ultimi 12 anni, la prassi attuale nella comunità di ricerca sulla IA è quella di fare ricerca incrementale. I miglioramenti ai sistemi di IA sono stati raggiunti utilizzando modelli più grandi e più dati, come illustrato della mia collega Catarina in un precedente articolo. I guadagni di prestazione sono frazionari e l’esistenza di quadri di valutazione ha incoraggiato la pratica.

Questi quadri di valutazione offrono set di dati pubblici per diverse attività di elaborazione del linguaggio naturale (NLP), come Question-Answering, Analisi del sentimento, Somiglianza semantica, ecc. Si tratta in realtà di un’ottima iniziativa, in quanto incoraggia i ricercatori a costruire sistemi comparabili. Tuttavia, comporta anche che i ricercatori adattino troppo su misura i loro sistemi su questi set di dati. Non che ciò non accadesse prima, ma nel bel mezzo di tutto il clamore che circonda l’IA, la cosa è andata fuori controllo.

Come nel dilemma lupo vs. husky, il problema è che sempre più modelli stanno ottenendo prestazioni più elevate apprendendo le idiosincrasie presenti nei dati. I modelli neurali sono come scatole nere, il che rende difficile confermare se il modello sta risolvendo i dati anziché l’attività. Non abbastanza persone sembrano preoccuparsi molto di questo, quindi questi modelli vengono applicati prematuramente ai casi d’uso di vita reale e quando qualcuno si accorge che la neve è un fattore, il danno è fatto.

Esistono due cause principali per questi problemi di eccesso di ottimizzazione.

1. Ottimizzare per la cosa sbagliata

I modelli sono ottimizzati per una metrica che è facile e veloce da calcolare e che è correlata, in una certa misura, all’obiettivo desiderato (o “misura” del successo). Il problema di mappare un obiettivo desiderato in una quantità facilmente misurabile è stato riconosciuto per decenni in diverse discipline, in particolare nel 1975, quando l’economista Charles Goodhart pubblicò un articolo sulla regolamentazione economica che ha reso popolare quella che diventò nota come la Legge di Goodhart:

“Quando una misura diventa una metrica, smette di essere una buona misura.”

Meno orecchiabile: “Qualsiasi regolarità statistica osservata tenderà a collassare una volta che viene esercitata su di essa una pressione per fini di controllo”. Indipendentemente dalla formulazione, ciò che la legge implica è che, ogni volta che la nostra prestazione viene misurata nei termini di un certo numero, noi ottimizziamo per quel numero. In altre parole, giochiamo con la metrica.

Legge di Goodhart, SCHIZZI ESPLICATIVI

I modelli di rete neurale finiscono per fare la stessa cosa. La metrica per cui sono ottimizzati è solo un proxy per la misura reale delle prestazioni. Non c’è modo di garantire che il modello verrà mappato sulle prestazioni attese nel mondo reale.

I modelli di Traduzione automatica neurale, ad esempio, sono ottimizzati per BLEU, che è una metrica che confronta il risultato del modello con una traduzione di riferimento, parola per parola. Nel mondo reale, quello che conta è una traduzione fluente ed accurata, anche se la frase è formulata in modo diverso dalla frase originale.

2. Ottimizzare con dati non rappresentativi

Come nella storia del rilevamento della neve, modelli potenti possono ottenere prestazioni (metriche) più elevate semplicemente apprendendo le idiosincrasie presenti nei dati della formazione. Ma i dati reali possono essere leggermente diversi e non contenere le stesse idiosincrasie o frequenze complessive di termini, classi, sfondi, ecc. Una volta applicati a scenari del mondo reale, tali modelli saranno inevitabilmente distorti verso la rappresentazione che hanno appreso dai dati della formazione. Un lupo in un paesaggio verde diventerà facilmente un husky.

Quando i dati non rappresentativi vengono utilizzati per la formazione, a volte senza considerare come i dati della formazione sono stati raccolti o da dove provengono, può risultare molto problematico applicare un modello a situazioni diverse da quelle che esso conosce. Il modello viene distorto. E anche se questa distorsione implicitamente appresa potrebbe non sembrare così problematica in questa particolare situazione (a meno che, ovviamente, qualcuno venga sbranato), quando succede con le richieste di prestito, i crediti d’imposta sulle abitazioni, persino nei colloqui di lavoro , fa paura pensare alle conseguenze.

L’anno scorso, la corte statale della California ha deciso che c’erano troppi pregiudizi umani nel decidere gli importi delle cauzioni. Con l’intento di eliminare questi pregiudizi, hanno approvato una legge che impone l’uso di un algoritmo per valutare il rischio che una persona non si presenti in tribunale, presumendo che venisse fornita una visione obiettiva. Ma da dove provengono i dati per la formazione di questo algoritmo? Molto probabilmente dai documenti storici, quelli che contengono gli stessi pregiudizi che l’algoritmo dovrebbe evitare.

Nella natura selvaggia

Le reti neurali confidano nelle loro previsioni anche quando non hanno alcun senso.

Anche dopo aver corretto il modello lupo vs. husky, continuavamo ad avere un problema. Che cosa prevederà una volta alimentato con l’immagine di un coyote, di una volpe o persino di un orso?

Sappiamo che il nostro modello lupo vs. husky non riconosce un orso quando ne vede uno. Proverà a classificarlo come un lupo o un husky. Ma il problema coi modelli neurali in generale è che la probabilità che essi assegnano ad un dato risultato non riflette la fiducia che essi hanno in quella previsione. Le probabilità non possono essere prese come stime di fiducia. Le reti neurali hanno fiducia nelle loro previsioni anche quando non hanno alcun senso, anche quando l’input è sostanzialmente diverso da qualsiasi cosa il modello abbia visto durante la formazione. Quando il modello si trova di fronte l’immagine di un orso, il risultato può variare da 100% lupo a 100% husky. Non sarebbe un sollievo se il nostro modello fornisse il 50% / 50%? Potremmo così prendere tutte le precauzioni per evitare di avvicinarci.

Ci piacerebbe che i nostri modelli mostrassero un’elevata incertezza quando hanno a che fare con dati in regioni che non hanno mai visto prima. “Vogliamo che ‘falliscano con grazia’ quando utilizzati in produzione“, come ha scritto Anant Jain nel suo post su Medium. Questo ci permetterà di fidarci delle previsioni del nostro modello.

Purtroppo, la prassi attuale è quella di fidarsi di un modello in base alle prestazioni che ottiene sotto una singola metrica piuttosto che su un set di dati non rappresentativo.

C’è speranza?

Nessuno di questi problemi può essere risolto facilmente. Richiedono impegno e tempo di ricercatori, ingegneri, regolatori, responsabili delle decisioni e della politica. Ma c’è speranza.

Per evitare l’eccessivo adattamento ad una singola metrica proxy che non si rifletterà nella misura reale desiderata, possiamo formare i modelli utilizzando metriche complementari. Il modello migliore dovrebbe essere quello che si comporta ugualmente bene su tutte queste. Inoltre, dovremmo mettere un impegno considerevole nel misurare periodicamente la prestazione nel mondo reale, anche se solo per qualche serie parziale di esempi (dal momento che questo di solito richiede un lavoro umano manuale).

Per ridurre il più possibile le distorsioni implicite, dati di formazione più rappresentativi saranno ovviamente di aiuto. Tuttavia, sapere quali dati siano più rappresentativi è di per sé una sfida. Sarebbe davvero utile avere modelli spiegabili o che potessero fornire una spiegazione per quella che è la loro previsione. Questo è esattamente ciò che ci permetterebbe di individuare immediatamente la distorsione lupo-neve.

Infine, potersi fidare di ciò che prevedono i modelli consentirebbe applicazioni molto più sicure della IA. Gli umani potrebbero intervenire ogni volta che non venisse raggiunto un certo limite di confidenza, permettendo così ai modelli di fare il loro ottimo lavoro nel trattare coi dati sui quali sono stati effettivamente creati su misura.

Ad Unbabel ci imbattiamo costantemente in husky, lupi ed orsi. Ma avendo umani nel giro, che correggono gli errori dei nostri modelli e valutando la reale qualità di ciò che consegniamo, possiamo continuare a migliorare i nostri modelli ed anche il modo in cui li valutiamo automaticamente.

Parafrasando il nostro vicepresidente di Tecnologie linguistiche, Alon Lavie:

Il fatto pratico più importante per noi è che i risultati sperimentali che otteniamo non sono generalizzati come supponiamo ed in realtà non sono rappresentativi del nostro scenario di traduzione nella pratica. Questo succede tutte le volte.

L’IA è qui per continuare ad esserci e ne abbiamo già tratto molti benefici. Ma stiamo raggiungendo un punto critico, in cui le reti neurali sono così ampiamente utilizzate che dobbiamo essere più responsabili nel modo in cui le formiamo. Vediamo sempre più lupi, la neve si sta sciogliendo ed i nostri amici sono là fuori. Forse dovremmo concentrarci nell’aggiustare quello che è rotto prima che sia troppo tardi.