Avviso

Ricordiamo agli utenti che gli articoli possono essere inviati per email, stampati e salvati in formato pdf cliccando sul simbolo dell'ingranaggio in alto a destra dell'articolo (nel menù a tendina la voce "Stampa" o "Print" consente sia di stampare che di salvare in pdf).

prismo

Il lato oscuro del machine learning

di Andrea Daniele Signorelli

La domanda che Alan Turing si è posto 66 anni fa (“Le macchine possono pensare?”) ha oggi trovato risposta: no, non possono (almeno per ora). Le si può però imbottire di una quantità tale di dati da costringerle a metterli in relazione tra loro, e identificare eventuali collegamenti. Miracoli del machine learning, la tecnologia alla base dell’intelligenza artificiale che, nel tempo, ha trovato infinite applicazioni commerciali: dai filtri per distinguere la posta dallo spam, alle traduzioni da una lingua all’altra, fino alle automobili che si guidano da sole.

Il punto, però, è che parlare di intelligenza e apprendimento rischia di suggerire che le macchine imparino davvero, e diventino davvero intelligenti. Niente di più sbagliato: “Forse invece di ‘apprendimento automatico’ dovremmo dire ‘trovare automaticamente l’equazione che risolve uno specifico problema basandosi su un set di dati esemplificativi’. Purtroppo, non è un granché come nome, quindi abbiamo optato per machine learning”, //medium.com/@ageitgey/machine-learning-is-fun-80ea3ec3c471#.l0u5zrhzp">scrive su Medium il programmatore Adam Geitgey.

Il professor Roger Schank della Northwestern University esprime lo stesso concetto in un articolo sul New Scientist, spiegando come l’intelligenza artificiale funzioni con un metodo simile a quello usato per forzare una password: si inseriscono nel sistema una quantità di combinazioni tali che a un certo punto salta fuori quella giusta. Secondo questa prospettiva, ogni illusione di una vera intelligenza e di un vero apprendimento viene meno: si tratta di provare e riprovare finché non ci si azzecca.

Ma il machine learning può davvero essere ridotto a questi termini?

Un esempio che chiarisce le cose arriva sempre da Adam Geitgey e ha come protagonista un software che deve stimare correttamente il prezzo delle case. Per addestrarlo, come detto, gli si dà in pasto un numero sufficiente di esempi in cui sono riportati, per ogni casa, i metri quadrati, il numero di stanze, la posizione in cui si trova (quartiere di lusso, quartiere hipster, quartiere degradato) e ovviamente il prezzo finale. Una volta che ha ricevuto tutte queste informazioni, il computer inizierà a cercare la combinazione che gli consente di arrivare al prezzo esatto. Quando il software ha trovato i valori (il “peso”) da applicare correttamente ai singoli elementi per ottenere il prezzo corretto, il lavoro è finito: la macchina è adesso capace di stimare il valore di una casa.

L'intelligenza artificiale funziona con un metodo simile a quello usato per forzare una password: si inseriscono nel sistema una quantità di combinazioni tali che a un certo punto salta fuori quella giusta.

Questo tipo di machine learning è chiamato “apprendimento supervisionato”, una tecnica che consente alla macchina di risolvere compiti in maniera autonoma sulla base di una serie di esempi ideali (definizione chiarissima presa in prestito da Wikipedia).

Esiste anche l’apprendimento non supervisionato, e qui le cose si fanno più complesse. In questo caso, si tratta di fornire alla nostra macchina una serie di dati, ma non il risultato finale (nel nostro esempio, il prezzo delle case); sarà la macchina stessa a trovare degli schemi, delle caratteristiche comuni tra i diversi dati, cercando similarità e differenze.

Per restare all’esempio delle case, il nostro sistema di machine learning sarebbe in grado di scoprire che nel quartiere hipster vengono venduti facilmente i monolocali o i bilocali, mentre nell’hinterland vanno forte le case con giardino. La più nota applicazione commerciale di questo sistema è la capacità di Google di fornirci risposte mettendo a confronto le parole chiave che digitiamo sul motore di ricerca con l’immenso set di dati (l’intero world wide web) che ha a disposizione.

Questi esempi non esauriscono il mondo del machine learning (ci sarebbe da parlare anche dell’apprendimento per rinforzo, così come dei network neurali e del deep learning), ma sono sufficienti per farsi un’idea molto basilare del meccanismo che, per esempio, è alla base della “face recognition”, la funzione di Facebook che riconosce i vostri amici nelle foto.

C’è però un lato oscuro in tutto ciò: a differenza dei classici software, che eseguono un codice che spiega loro che cosa devono fare, i programmi basati sul machine e deep learning imparano da soli e non c’è modo di sapere con esattezza come hanno imparato, in che modo il software è arrivato alla soluzione corretta. Nell’esempio riguardante il prezzo delle case, è impossibile scoprire come la macchina ha trovato il peso corretto da applicare ai vari fattori e perché quel peso funziona. Sotto questo aspetto, il machine learning è una scatola nera dentro la quale è impossibile guardare.

“Il programmatore vecchio stampo è come un dio, autore delle leggi che governano i sistemi dei computer”, si legge su Wired USA. “Oggi è più simile a un genitore o a un addestratore di cani”. Possiamo insegnare al nostro cane a riportarci la pallina, ma non sapremo mai esattamente cos’è scattato nel suo cervello nel momento in cui ha capito come comportarsi correttamente.

A differenza dei classici software, che eseguono un codice che spiega loro cosa fare, i programmi basati sul machine learning imparano da soli e non c’è modo di sapere con esattezza come.

Ma è poi così importante comprenderne i meccanismi? Non conta solo che il computer porti a termine il lavoro per cui è stato addestrato? In linea di massima, sì. Ogni tanto, però, questi misteri del machine learning portano a situazioni molto imbarazzanti. Ne sa qualcosa Google: nel 2015 il suo sistema di riconoscimento immagini ha iniziato a taggare persone di colore come “gorilla”. Non essendoci modo di capire esattamente dove l’algoritmo di Google stesse sbagliando, ci si è limitati (temporaneamente) a vietargli di classificare qualunque cosa come gorilla.

Tim Urban del popolare blog WaitButWhy ha provato a immaginare le peggiori conseguenze possibili del machine learning in un racconto in cui un’intelligenza artificiale creata con l’obiettivo di scrivere (utilizzando un braccio meccanico) quante più cartoline possibili stermina l’umanità perché ha scoperto che la strada più breve per raggiungere il suo obiettivo è disboscare l’intero pianeta per fabbricare carta. Un racconto iperbolico (e poco convincente), ma che dà l’idea di come possa essere pericoloso ignorare in che modo queste intelligenze imparano a portare a termine i loro compiti.

Quanti scenari spaventosi si possono aprire, invece, immaginando due intelligenze artificiali che imparano a comunicare usando messaggi cifrati? In questo caso, non siamo davanti a un racconto, ma a un esperimento del team di ricerca Google Brain: tre reti neurali (Alice, Bob e Eve) sono state istruite per comunicare tra di loro. Alice, però, doveva inviare a Bob un messaggio che Eve non potesse decifrare. Dopo 15mila tentativi, Alice è riuscita nella missione, mandando un messaggio cifrato che Bob è stato in grado di interpretare interamente, mentre Eve è riuscita a decrittarlo solo in parte. In poche parole, come scrive Arturo Di Corinto, “le reti neurali possono utilizzare una tecnica semplice per cifrare le informazioni che si scambiano senza essere state programmate per farlo; senza aver ricevuto in dotazione algoritmi di cifratura dei dati”.

Quello che colpisce è la velocità con cui le tecniche di machine learning e la potenza delle reti neurali stanno progredendo. Nel giro di pochi anni, si sta passando da algoritmi che hanno bisogno di vedere centinaia di migliaia di foto di un cane per imparare a riconoscerlo correttamente, a esperimenti riguardanti algoritmi capaci di cifrare i messaggi. Ma non è tutto, si è arrivati anche a intelligenze artificiali capaci di portare a termine il loro compito al primo colpo grazie a ciò che sembra essere l’embrione di un vero e proprio ragionamento.

Nel mese di ottobre, la società londinese DeepMind (sempre di proprietà di Google) ha pubblicato su Nature uno studio in cui rivela di aver creato una rete neurale dotata di una memoria esterna che le consente di immagazzinare e richiamare all’occorrenza i dati necessari a fare deduzioni. Il sistema, chiamato differentiable neural computer, è stato testato attraverso la mappa della metropolitana di Londra: l’intelligenza artificiale è stata capace di pianificare al primo colpo il percorso migliore per arrivare in una determinata stazione della metro.

Un progresso enorme, reso possibile semplicemente dal precedente allenamento della macchina (con il classico metodo “sbaglia e riprova”) su mappe casuali che riportavano stazioni della metro collegate tra loro. Mentre si allenava su queste mappe, la rete neurale ha imparato a utilizzare la sua memoria per immagazzinare dati utili e richiamarli all’occorrenza.

La capacità di utilizzare in modo pratico la memoria, dando quindi prova di apprendimento, sembra essere il primo passo per arrivare a una vera intelligenza artificiale, di tipo umano.

Per quanto anche questa AI sia in grado di svolgere un solo compito, la sua capacità di utilizzare in modo pratico la memoria, dando quindi prova di apprendimento, sembra essere il primo passo per arrivare a una vera intelligenza artificiale, di tipo umano, che sappia imparare in termini generali e poi richiamare i dati che le servono per sfruttare ciò che ha appreso. In poche parole, una AI che è in grado di fare un ragionamento (da notare che anche in Westworld, le intelligenze artificiali mostrano i primi segni di essere davvero autonome e coscienti nel momento in cui iniziano a ricordare).

Siamo pronti, quindi, a relazionarci con intelligenze artificiali capaci di ragionare (seppur in maniera rudimentale), senza che per noi sia possibile capire come prendono decisioni, proprio mentre scarichiamo su di loro un numero sempre maggiore di responsabilità (dalla guida delle auto, fino alla diagnosi di tumori)? Ovviamente, no.

Se l’algoritmo che guida un’auto dovrà decidere se investire un bambino che si è gettato all’improvviso in mezzo alla strada oppure sterzare di colpo con il rischio di ferire gravemente l’autista e i passeggeri, è davvero il caso di sapere perché l’auto abbia preso una determinata decisione. Questo è l’obiettivo di un team di ricercatori del MIT che ha appena pubblicato uno studio intitolato “razionalizzare le predizioni neurali”.

Il loro lavoro, ancora agli stadi preliminari, ha uno scopo decisivo: forzare l’algoritmo a “spiegare” perché sia giunto a una determinata conclusione. Sintetizzando al massimo (ma una spiegazione esaustiva e chiara si può trovare qui), la macchina viene obbligata a mostrare quali frasi in particolare, all’interno dei testi scritti utilizzati come set di dati, abbiano giocato un ruolo importante nel prendere una determinata decisione, permettendo così ai programmatori di capire quale sia stata la base logica.

“È da vedere se sarà questa architettura a darci la soluzione giusta. Al momento stiamo rivedendo tutto il lavoro per renderlo più sofisticato, ma si apre un’area di ricerca molto importante”, ha spiegato a Digital Trends uno degli autori del paper, Tommi Jaakkola. “Giustificare le decisioni prese sarà una questione decisiva per i sistemi complessi: le intelligenze artificiali devono imparare a comunicare con noi”. Benvenuti nel futuro.

Pin It

Add comment

Saranno eliminati tutti i commenti contenenti insulti o accuse non motivate verso chiunque.


Security code
Refresh