Print Friendly, PDF & Email

iltascabile

Ripensare l’Intelligenza Artificiale

di Nicola Nosengo*

Algoritmi come cervelli umani: promesse e illusioni del deep learning, la tecnica che ha rivoluzionato il campo

tascabile 1Come l’inverno dello scontento di cui parla Riccardo III nell’omonimo dramma shakespeariano, anche l’inverno dell’intelligenza artificiale si è oramai trasformato in una gloriosa estate. È stato un inverno freddo e lungo. Magari non trent’anni, come la guerra delle Due Rose a cui allude Riccardo, ma a chi lavora in quel settore sembrava comunque non finire mai. La metafora non ce la siamo inventata, nell’ambiente si dice proprio così: “AI winter”, il periodo in cui gli investimenti sull’intelligenza artificiale erano ai minimi storici, il pubblico si era stufato di promesse strombazzate e non mantenute, e molti tra gli stessi ricercatori dubitavano che il loro lavoro andasse mai da qualche parte. Per la precisione di inverni ce ne sono stati due, uno alla fine degli anni Settanta e un altro, il più rigido, tra la fine degli Ottanta e la prima metà dei Novanta. Ma le temperature sono rimaste bassine anche dopo, se è vero che ancora nel 2012 il fisico David Deutsch scriveva, nei primi paragrafi di un suo saggio pubblicato su Aeon, che “il tentativo di ottenere un’intelligenza artificiale generale non ha fatto alcun progresso durante sei decenni di esistenza”.

Quanto sembra lontano, quel gelo. Ora i successi dell’intelligenza artificiale riempiono le pagine dei giornali, spazi pubblicitari compresi: avete notato quante case automobilistiche o produttori di telefonini si vantino nei loro annunci di avere una qualche forma di intelligenza artificiale a bordo dei loro prodotti? Qualche anno fa l’effetto sarebbe stato comico, ora è già cliché. E ai successi si accompagnano i timori: quelli relativi all’impatto che queste tecnologie avranno sull’occupazione, o al modo in cui gli algoritmi condizionano il dibattito pubblico con i loro bias più o meno espliciti.

Il sole di York che ha spazzato via l’inverno della AI è il deep learning, una varietà di intelligenza artificiale che in realtà affonda le sue radici proprio in quei freddi anni Novanta, ma che solo negli ultimi anni è fiorita, accumulando primati scientifici e applicativi. Ha tanto successo che sta eclissando gli approcci alternativi, e porta qualcuno a chiedersi se il settore dell’intelligenza artificiale non stia rischiando troppo, mettendo tutte le uova nello stesso paniere. Nello specifico, non stia rischiando una nuova overdose di promesse impossibili da mantenere, che porterebbero dritti verso un nuovo inverno.

 

L’alba del deep learning

Per cominciare, un piccolo riassunto. Un sistema di deep learning è una rete neurale con molti, molti strati nascosti. Ovvero: è un sistema informatico che imita alcuni aspetti della struttura del cervello umano, con una rete di unità, o neuroni artificiali, collegate tra loro con connessioni, proprio come i neuroni veri sono collegati da sinapsi. Ogni nodo riceve un segnale in entrata, lo modifica, lo trasmette ad altri nodi, che a loro volta fanno lo stesso. I nodi della rete non sono programmati in nessun modo, non sanno nulla del compito che devono svolgere. Semplicemente, la rete riceve un input (per esempio, la foto di un gatto) e deve restituire un output (scrivere “gatto” nella didascalia). All’inizio, non ne azzecca una. Ma ogni volta che sbaglia, riaggiusta le connessioni tra i suoi nodi (ovvero il modo in cui ogni neurone artificiale modifica e trasmette ad altri il suo segnale), e ci riprova, fino a che l’output non si avvicina a quello atteso.

Fin dagli anni Novanta si è capito che le reti neurali potevano funzionare molto meglio se costruite a strati: tra i neuroni che ricevono l’input esterno e quelli che devono produrre l’output si inseriscono tanti, tantissimi strati nascosti di neuroni, ognuno con regole diverse (ovvero, una diversa funzione matematica che ne regola il funzionamento). Ogni strato riceve il segnale dallo strato precedente, lo filtra e lo passa allo strato successivo. Come nel gioco del telefono senza fili, solo che in questo caso la precisione dell’informazione aumenta con il numero di passaggi, anziché diminuire.

Un sistema di deep learning è un sistema informatico che imita alcuni aspetti della struttura del cervello umano, con una rete di unità collegate tra loro con connessioni.

Questa è una rete “deep”, profonda, e la tecnica con cui tipicamente viene addestrata è la backpropagation. Si prendono gli ultimi neuroni, quelli che danno l’output (“gatto!”) e si misura di quanto hanno sbagliato rispetto al risultato atteso (c’è differenza tra scambiare per gatto una lince o una balena). Da quelli si procede all’indietro. Per ogni strato di neuroni sottostante si calcola quanto ha contribuito a quell’errore, in base alla struttura matematica della rete. Arrivati in fondo, si riaggiustano tutte le connessioni in modo proporzionale al loro contributo all’errore. Poi si ricomincia: nuovo input, nuovo output, nuovo errore, nuova propagazione all’indietro. Ripetere per qualche milione di volte e il gioco è fatto.

Perché funzioni però ci vogliono due cose che negli anni Novanta non erano ancora in vista: grande potenza di calcolo, come quella oggi garantita dalle Graphic Processing Unit (i potenti processori sviluppati inizialmente per i videogiochi, diventati ferri del mestiere della computazione più avanzata). E poi enormi quantità di dati da dare in pasto alla rete come esempi, che oggi si possono immagazzinare su un hard disk portatile ma ancora venti anni fa richiedevano intere stanze. Grazie a questi sviluppi, i sistemi di deep learning hanno avuto enorme successo nel riconoscimento delle immagini, per esempio aiutando i motori di ricerca a riconoscerne il contenuto e indicizzarle. Ancora, è al deep learning che dobbiamo il rapido progresso della traduzione automatica, per cui le traduzioni di Google Translate da un paio d’anni non sono più comiche come un tempo, anzi sono in media decisamente buone.

 

Vincere a Go

Il successo più eclatante del deep learning lo dobbiamo però a DeepMind, società del gruppo Google, e al suo AlphaGo, un sistema di deep learning che fa solo una cosa: gioca a Go, antico gioco da tavola cinese in cui si dispongono pedine bianche e nere su una scacchiera, e si muovono con lo scopo di circondare le pedine avversarie. Quando ci riesci, la mangi. Alla fine della partita (di solito, molte ore dopo), quando nessuno dei due giocatori ha più mosse utili, vince chi controlla la parte più grande di scacchiera. Nella semplicità delle sue regole, Go è un gioco di enorme complessità matematica. Molto, molto superiore a quella degli scacchi, tanto è vero che, mentre Deep Blue già nel 1996 batteva Kasparov, GO è stato a lungo considerato un banco di prova e un obiettivo irraggiungibile per l’AI. Fino alla primavera del 2016, quando AlphaGo ha battuto Lee Sedol, mega campione coreano, al meglio delle cinque partite. Per allenarsi, Alpha Go aveva digerito migliaia di partite giocate da umani, imparando da solo sia le regole, sia la strategia.

Vittoria sorprendente e giustamente celebrata, ma con un limite: l’apprendimento di AlphaGo era del tipo “supervised”, basato sulla disponibilità di un grande database di esempi opportunamente etichettati (mosse vincenti, mosse perdenti, partite dove ha vinto il bianco o il nero, e così via). “In questo senso non c’era molto di nuovo in AlphaGo” spiega a Il Tascabile Marco Zorzi, professore di psicologia all’Università di Padova e tra i maggiori esperti italiani di intelligenza artificiale. “Quel tipo di apprendimento esiste in letteratura fin dagli anni Novanta, qui c’è solo più potenza di calcolo e più dati. Oggi si arriva a mettere in fila 100 strati nascosti di neuroni, cosa folle da pensare quindi anni fa”.

Perché il deep learning funzioni servono due cose che negli anni Novanta non erano ancora in vista: grande potenza di calcolo ed enormi quantità di dati.

Il fatto è che non tutti i problemi del mondo offrono un catalogo di dati su cui imparare, paragonabile all’archivio di milioni di partite che AlphaGo ha potuto digerire prima di battere Lee. Un bel passo avanti è arrivato però qualche settimana fa con una nuova versione, AlphaGoZero, basata stavolta sul cosiddetto reinforcement learning. Questa volta, cioè, il sistema sapeva le regole del gioco dall’inizio (che d’altronde è come un umano impara a giocare), ma ha imparato giocando contro se stesso e basta, senza esempi di partite reali giocate “come si deve” dagli esseri umani. Semplicemente, riceveva un “premio” ogni volta che vinceva una partita.

“Stavolta si tratta di un tipo di apprendimento molto plausibile in senso psicologico” spiega Zorzi. “È un po’ come nei famosi esperimenti di Skinner, in cui il topo scopre che schiacciando la leva gli arriva una pallina di cibo. Si rinforzano le azioni che hanno prodotto una ricompensa, anziché indicare esplicitamente quale è la risposta corretta”.

Nel giro di tre giorni, AlphaGoZero era arrivato al livello “Lee Sedol”, ovvero poteva battere la sua versione precedente del 2016. Nel giro di quaranta giorni poteva battere anche tutte le versioni successive, che a loro volta avevano continuato a migliorare e stracciare campioni umani. Il tutto impegnando molte meno risorse computazionali della versione precedente, e giocando “solo” 3,9 milioni di partite anziché i 30 milioni necessari per battere Lee.

 

Scontro tra modelli

La vittoria a Go cementa ulteriormente la posizione dominante del deep learning tra le scuole di intelligenza artificiale (e quelle di Deep Mind sul relativo mercato). Ma è davvero questa la strada per l’agognata Intelligenza Artificiale Generale, capace non solo di risolvere brillantemente un problema ben definito, come un gioco da tavola, ma che sappia trovare una strategia per affrontare situazioni nuove e impreviste? Da un vero assistente personale, software o robotico che fosse, ci aspettiamo esattamente questo, vorremmo che capisse le nostre intenzioni, riconoscesse le sfumature nelle situazioni, sapesse consigliarci o aiutarci nella vita quotidiana. Insomma, che pensasse un po’ come noi.

Qui iniziano i problemi. Come spiega a Il Tascabile Giovanni Pezzulo, ricercatore all’Istituto di Scienze e Tecnologie Cognitive del CNR di Roma, un grande spartiacque divide i sistemi di intelligenza artificiale e la stessa comunità di ricerca. “Questo mondo si divide tra approcci basati su model based (basati su modelli, ndr) e model free (privi di modelli), e quasi tutti i successi del deep learning si basano su un approccio model free” spiega il ricercatore. Noi esseri umani (ma vale per la maggior parte degli animali) affrontiamo i fenomeni affidandoci a modelli che ci permettono di interpretarli. Per esempio, abbiamo una fisica intuitiva e una psicologia intuitiva che ci permettono di prevedere la traiettoria di un oggetto che cade, o di aspettarci che una persona reagisca in un certo modo se le diamo un pugno. Se poi questi modelli siano (in parte, in tutto, per niente) innati oppure appresi, è questione dibattuta. Ma di sicuro li abbiamo, e quando impariamo non ci limitiamo a memorizzare esempi di un fenomeno fino a dire “nella maggior parte dei casi le cose vanno così” – che, semplificando molto, è quello che fa un sistema di Deep Learning.

Quanta differenza possa fare la presenza o assenza di un modello lo si vede persino nel settore in cui le reti neurali hanno avuto finora i maggiori successi: il riconoscimento di immagini. Joshua Tenenbaum del MIT si è divertito a far lavorare un sistema – generalmente molto efficiente – basato su reti neurali che assegna automaticamente didascalie a delle foto. Il sistema funziona benissimo il 99 per cento dei casi, ma diventa comico di fronte a foto di situazioni estreme, come quella che mostra gli istanti prima dell’incidente aereo del volo TransAsia nel 2015. All’immagine che mostra l’aereo fuori controllo, completamente inclinato sul fianco, che tocca con l’ala un ponte autostradale prima di cadere in un fiume, il sistema assegna la didascalia “un aeroplano parcheggiato sull’asfalto in aeroporto”. Certo, c’è un aereo visto da vicino, c’è dell’asfalto, ma la situazione è tutt’altra. Un’altra foto che mostra una famiglia in fuga da una casa travolta da un’alluvione diventa un tranquillo “gruppo di persone sulla spiaggia”.

I modelli spiegano perché gli esseri umani siano, a parità di potenza computazionale, enormemente più efficienti delle macchine nell’imparare.

“La comprensione umana”, spiega Tennenbaum commentando questi errori, “comporta la creazione di una narrazione che spieghi ciò che viene osservato, basato su una fisica intuitiva e una psicologia intuitiva. La percezione, senza questi ingredienti, e senza nessi causali a tenerli assieme, porta a errori molto istruttivi. In molti casi, le reti neurali identificano bene gli oggetti in una scena ma non riescono a capire le forze fisiche in azione su di essi, gli stati mentali delle persone, o le relazioni causali tra gli oggetti. In altre parole, non costruiscono i giusti modelli casuali per spiegare i dati”. Oltre a produrre risultati comici in questi casi volutamente estremi, l’assenza di modelli è quella che impedisce a un sistema di AI di passare con naturalezza da un problema a un altro, per quanto simile. Per esempio, mentre un giocatore di Go in carne e ossa può facilmente giocare su un tabellone con più o meno caselle di quello ufficiale, AlphaGo va in panne se cambia il numero di caselle, e deve imparare da capo.

Sempre i modelli spiegano perché gli esseri umani siano, a parità di potenza computazionale, enormemente più efficienti delle macchine nell’imparare. Un bambino impara a riconoscere i gatti dopo averne visti due o tre, non milioni. Impara a parlare in un tempo sorprendentemente veloce. E i campioni di Go, quelli che ora AlphaGo umilia, sono diventati campioni giocando al massimo qualche migliaio di partite, non i milioni su cui si è addestrato il sistema di deep learning.

“Chi lavora a Deep Mind sa benissimo che servono i modelli, il problema è che nessuno è riuscito a farli lavorare bene: i sistemi senza modelli sono più efficienti” chiarisce Pezzulo. Ma sono anche opachi: fanno alcune cose molto bene, ma non sanno spiegare come. O meglio (ma è la stessa cosa) chi li analizza non sa spiegare esplicitamente perché facciano una scelta anziché un’altra.  AlphaGo è imbattibile, ma se gli si chiedesse perché fa una certa mossa risponderebbe, se solo sapesse parlare: non capisco la domanda. “Questo è un limite non solo per la plausibilità psicologica, ma anche per le applicazioni e l’accettabilità da parte degli utenti” secondo Pezzulo. “Un assistente medico o finanziario per esempio deve essere capace di spiegare le proprie ragioni”. Se una macchina mi dice di comprare certe azioni o di aumentare il dosaggio di una medicina, difficilmente lo accetterò senza chiedere “perché” come farei con un medico o un consulente finanziario. Ma anche un’auto senza pilota ha bisogno, per non causare incidenti e non investire nessuno, di modelli della realtà. Se non li ha, può scambiare il colore del posteriore di un TIR per il cielo e accelerarci dritto dentro, come ha fatto una Tesla in un incidente diventato un caso di scuola.

 

Altre opzioni

Le alternative ci sono. Per esempio c’è una famiglia di algoritmi che va sotto il nome di machine learning probabilistico, o Bayesiano, dal nome della statistica ispirata al lavoro di Thomas Bayes, che calcola le probabilità a partire da ipotesi e conoscenze pregresse, e non solo misurando le frequenze di certi eventi nei dati osservati. Si tratta di reti neurali, o altri sistemi di calcolo, dotati di ipotesi e conoscenze pregresse sul mondo: modelli, appunto. Ipotesi che si possono inserire a priori, come fa il gruppo di Tennenbaum al MIT, ma così si apre il problema di quanti e quali modelli dare a un sistema di AI che abbia ambizioni di intelligenza generale. Oppure, ed è la strada più intrigante, si può fare in modo che la rete crei da sola i propri modelli. È quanto fa il gruppo di Zorzi a Padova, lavorando in particolare con una famiglia di reti neurali chiamate macchine di Boltzmann.

Nelle macchine di Boltzmann, c’è un assetto che permette il salto verso l’apprendimento non supervisionato: quello in cui la rete se la cava davvero da sola.

Nelle reti classiche, Alpha Go compreso, il segnale va solo in avanti: da un nodo all’altro, dallo strato che riceve l’input esterno a quello che produce l’output. Beh, in un tipo di reti, chiamate non a caso recurrent, c’è un po’ di feedback, ma niente di paragonabile al cervello, dove per ogni fascio di connessioni che collega una regione della corteccia a un’altra, c’è di solito un fascio altrettanto denso che torna indietro. Secondo molti psicologi e neurobiologi, questo permette al cervello di fare continuamente ipotesi su quello che sta per succedere: mentre vedo una scena, le zone superiori del cervello fanno già ipotesi su quello che sta per succedere, e le mandano ai neuroni che elaborano le percezioni, perché verifichino se la previsione era azzeccata, e rendano la prossima previsione più precisa. E così il cervello impara a far fronte velocemente a situazioni nuove. Nelle macchine di Boltzmann, invece, ci sono molte connessioni “rientranti” tra i livelli superiori e quelli inferiori, un assetto che permette il salto verso l’apprendimento non supervisionato: quello in cui la rete se la cava davvero da sola, e riproduce almeno in piccola parte ciò che vediamo all’opera nell’apprendimento umano.

“Ci siamo chiesti per esempio come sia possibile che nei bambini ci siano abilità rudimentali di percezione della numerosità già alla nascita” spiega Zorzi “quando nessuna esperienza nell’utero può preparare ai numeri”. Usando macchine di Boltzmann, Zorzi ha dimostrato che una attività spontanea e poco più che casuale all’interno della rete, paragonabile al tipo di attività che nel cervello umano serve a far maturare il sistema visivo prima della nascita, abbinata alla semplice percezione di un centro e una periferia del corpo, possa dar luogo a un modello di base della numerosità. Insomma, la rete impara a contare senza aver mai visto un numero né una lezione di aritmetica.

Gli algoritmi che muovono le macchine di Boltzmann, o altri approcci “model based” non sono ancora lontanamente efficienti, maneggevoli e stabili come quelli deep di AlphaGo. Ma per i loro sostenitori, indicano una strada per andare oltre le applicazioni. “Credo che in futuro i grandi passi avanti verranno da modelli basati su apprendimento, ma che riescono a estrarre dai dati rappresentazioni complesse, gerarchie di ipotesi sui dati” spiega Zorzi. Per tornare al nostro esempio, un assistente personale basato su questo principio non si limiterebbe, di fronte a movimenti del mercato azionario, a suggerire la mossa che in milioni di situazioni simili ha funzionato meglio. Ma cercherebbe una spiegazione di quanto sta succedendo (una guerra, l’approssimarsi di un’elezione incerta); magari saprebbe riconoscere una bolla speculativa, anziché accodarsi ad essa. E potrebbe esplicitare questa spiegazione su richiesta dell’utente.

Prospettiva lontanissima, e ognuno può decidere per sé quanto desiderabile. Ma per arrivarci servirà qualcosa di radicalmente diverso dalla pur sorprendente intelligenza artificiale che oggi riempie le pagine dei giornali e domina il settore.


* Nicola Nosengo è un giornalista, e si occupa di scienza e tecnologia. Collabora con Nature, con la RAI e con diverse testate italiane. Ha pubblicato "L’Estinzione dei Tecnosauri" (Sironi, 2003), "Compagno Darwin" (Sironi 2009, con Daniela Cipolloni) e "I Robot ci guardano" (Zanichelli 2013).

Add comment

Submit