innovation Inceptionism

Published on luglio 15th, 2015 | by Roberto Ingrosso

0

Inceptionism: I have an electric dream

Lo scorso giugno il blog tenuto dal team di ricercatori di Google ha visto la pubblicazione di un post che per una volta è riuscito a solleticare non solo la fantasia di chi è affascinato dalla scienza applicata all’informatica, ma anche e soprattutto di migliaia di “uomini della strada” che pur non sapendo cosa sia una rete neurale sono rimasti a bocca aperta davanti alle immagini contenute nell’articolo.

Se ancora non avete visto linkata questa pagina è solo questione di tempo, ed il presente articolo è stato scritto appositamente per rendervi la persona più informata sull’argomento attorno al tavolo del bar quando il post sarà diventato virale.

Manteniamo le basi teoriche al minimo, per non diventare noiosi. Una rete neurale è un modello matematico in cui una struttura logica ispirata alla biologia del cervello umano ha il compito di risolvere un certo tipo di problema senza che nessuno gli abbia insegnato come, ma solo sapendo, ogni volta che fornisce una risposta, quanto questa sia corretta e modificandosi di conseguenza.

Un sacco di paroloni, non c’è dubbio, quindi facciamo un esempio. Consideriamo una rete neurale che regola i movimenti di un robot quadrupede: questo “cervello” registra in ogni istante la conformazione del terreno intorno a se, ed in ogni istante decidere quali arti muovere e come, venendo premiato quanto più si allontana dal punto di partenza. La rete neurale vergine, appena creata, non riuscirà ad avanzare di un centimetro, muovendo le gambe in maniera casuale ed insensata, ma iterazione dopo iterazione, tentativo dopo tentativo, i movimenti che le hanno permesso di avanzare più di altri rimarranno impressi nelle sinapsi e nei neuroni artificiali, facendo sì che dopo un sufficiente periodo di allenamento il robot impari a trotterellare autonomamente, senza che nessun ricercatore dovesse scrivere algoritmi impossibilmente complicati e reagendo in maniera naturale anche a condizioni nuove e sorprendenti (terreni scoscesi o scivolosi, per esempio).

BigDog, il robot militare messo appunto dalla Boston Dynamics

È facile adesso capire quale sia il tipo di problemi a cui le reti neurali vanno applicate: quelli in cui non esiste (o è troppo complesso) un metodo di risoluzione ben definito, ed in cui è possibile apprendere tramite esempi. Un problema che ricade perfettamente in questa classe è il riconoscimento di immagini, la cosiddetta computer vision.

Se utilizzate Google Photos, e siete soliti sincronizzare le vostre immagini sul cloud, potreste aver notato che da qualche settimana la funzione di ricerca dell’app è in grado di fare qualcosa che rasenta la magia: classificare le nostre foto in base al loro contenuto. È possibile scrivere “food”, oppure “sea” e vederci restituite solo le immagini pertinenti con la nostra ricerca, e la cosa funziona anche per domande più complesse come per esempio “wedding” o “dancing”. Tale stregoneria è possibile proprio grazie alle reti neurali utilizzate da Google, a cui sono state mostrate migliaia di immagini di gente che balla, e adesso sono in grado di capire che se nella foto c’è un essere umano con gli arti che vanno in tutte le direzioni, è facile che in pista abbiano messo Dancing Queen.

Arriviamo dunque all’articolo in esame, dal suggestivo titolo “Inceptionism: Going Deeper into Neural Networks”. La motivazione di partenza dei ricercatori è la seguente: abbiamo messo in piedi un sistema che ha del magico, che riesce a dirci quale sia il contenuto di una foto senza che nessuno gli abbia detto come, e che è formato al suo interno da innumerevoli strati di neuroni interconnessi non sappiamo neanche noi come, ebbene, cosa passa per la mente del computer quando avviene questo processo? Quali sono i passaggi intermedi?

Nel primo articolo della storia sull’argomento della psicologia robotica, il primo esperimento è stato quello di fornire alla rete neurale delle immagini di puro rumore (un po’ come lo schermo della TV quando non è sintonizzata su nessun canale) e chiedere di riconoscerci determinati oggetti: osservando le immagini prodotte è quindi possible capire quali siano le caratteristiche che il computer associa a quegli oggetti. Se quasi sempre il risultato è quello che ci si aspettava (il concetto di banana è associato al colore giallo ed alla forma ricurva), in alcuni casi ci si rende conto che la rete neurale potrebbe aver frainteso, per esempio quando gli viene chiesto di riconoscere dei manubri (quelli che si usano in palestra) ed oltre alle barre che collegano i due pesi, nelle immagini sono sempre presenti delle braccia che le sollevano. La conclusione per i ricercatori è che probabilmente non erano mai state mostrate alla rete neurale delle immagini di manubri che non fossero sollevati, inducendo il computer in errore.

Inceptionism

Banane, questo mi torna.

.

Inceptionism

Manubri… c’è qualcosa che non va!

Un secondo esperimento è quello di lasciare che la rete neurale sia libera di riconoscere ciò che riesce a vedere in delle immagini il più possibile neutrali. In questo caso è molto interessante andare a vedere cosa passa per la mente del computer strato dopo strato di neuroni virtuali.

Il risultato è che se ai primi livelli la rete neurale compie un lavoro di stilizzazione di forme e colori, riconoscendo nelle immagini dei pattern astratti che farebbero invidia ad un pittore di fine ‘800, ai livelli più avanzati escono fuori degli oggetti di ancor più interessanti, i quali per altro cambiano a seconda dell’input: i paesaggi diventano torri e pagode, le montagne diventano torri e le foglie diventano uccelli o insetti. Guardando queste immagini non si può che rimanere affascinati dalla natura allucinata e trascendentale delle immagini prodotte.

Inceptionism-google

I primi strati sono specializzati nel riconoscimento delle forme.

.

Inceptionism-google

Gli strati finali riconoscono forme anche molto complesse.

.

Inceptionism-google

In questa foto: niente che esista per davvero.

.

L’ultimo e più affascinante degli esperimenti dell’articolo, nonché quello maggiormente fine a se stesso, consiste nel partire da un’immagine, esattamente come prima, e ripetere il giochetto più di una volta, prendendo ad ogni passaggio l’immagine prodotta dalla rete neurale e ridandogliela da analizzare dopo averla zoomata leggermente.

Quello che otteniamo in questo modo sono delle immagini la cui natura ricorda da vicino quella dei frattali, e che non possono che lasciare a bocca aperta chiunque le guardi. Probabilmente questa è la risposta che cercava Philip K. Dick quando si chiedeva “Do Androids Dream of Electric Sheep?” nel libro che ispirò il celeberrimo Blade Runner.

Inceptionism-google

Inceptionism

Se tutto ciò vi ha affascinato sappiate che i più smanettoni di voi possono cimentarsi nella produzione di immagini roboniriche grazie al codice che Google ha messo a disposizione su questa pagina, o magari utilizzare qualche pagina web che faccia il lavoro per noi (al momento in cui scrivo l’unica sembra essere questa, e la lista d’attesa è sconfortante).

Da quando il codice è stato pubblicato il popolo di internet si è sbizzarrito, dando vita a visioni che vanno dall’esilarante all’inquietante. Giusto per fare qualche esempio:

Inceptionism

Cosa ci vedete in queste macchie? Cani dotto’, ce vedo cani!

.

Inceptionism

Le strade di Tokyo invase dalle pagode.

.

Inceptionism

La celeberrima foca spaziale.

.

Inceptionism

Collina quando era giovane e faceva serata.

.

We have to go deeper!

Nota bene: cani, pagode e quant’altro sono molto ricorrenti perché la rete che Google mette a disposizione è stata addestrata principalmente con quella roba lì. Se gli facevano vedere solo zinne, in tutte le foto avrebbe sempre visto zinne, arrivando a tanto così dalla perfetta replica del cervello maschile…

.

.






.


About the Author

Roberto Ingrosso, in arte Johnny Cicala, è uno sviluppatore Android per lavoro, un matematico per formazione ed un videogiocatore per natura. Tra la creazione di un’app e l’altra, continua a seguire l’evoluzione del mondo videoludico destreggiandosi tra le saghe storiche e la nuova scena indipendente.



Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Back to Top ↑