06 dicembre 2016

La (non) intelligenza artificiale

Alcuni di noi vivono a cavallo di due mondi che appaiono inconciliabili.

Rete neurale che imita un cervello umano
C'è un mondo in cui ogni giorno si respira a pieni polmoni futuro, innovazione e tecnologia senza limiti percepibili. C'è un altro mondo che invece stenta a sfruttare qualunque risorsa tecnologica, perfino quelle ormai vecchie di 20 anni.
È chiaro che, ovunque io voglia mai portare questo dualismo, siamo di fronte ad un gap.
Ogni giorno leggo di nuove teorie quantistiche, di machine deep learning, di nuovi materiali con caratteristiche fisiche inconcepibili, ma nel mondo in cui esco di casa per andare al lavoro, di tutto questo non c'è traccia.

Eppure non vivo nel Burundi (1) ma in Italia.

Non sono un esperto di tecnologie emergenti, ma un semplice geek entusiasta di qualunque passo si faccia per avvicinarsi ai mondi descritti da Heinlein, Asimov, Gibson e chi più ne ha, più ne metta.

Proverò a dare una risposta "ragionevole", rimanendo su un terreno a me più familiare, ovvero quello dell'intelligenza artificiale. E la domanda, semplificandola, diventa dunque questa:
Come possiamo leggere degli enormi progressi con l'intelligenza artificiale quando la Boldrini (2) si lamenta che non si riesca ad individuare un banale "hate speech" e a rimuoverlo da Facebook?
Facebook, una delle più grandi tech companies del mondo, che vanta un reparto di ricerca dedicato al machine learning (3), pare non essere in grado di risolvere questo banalissimo problema.

Ma c'è qualcosa che non torna nel mio ultimo periodo, una sola parola che stravolge completamente il senso della domanda.

BANALISSIMO

Iniziamo a mettere subito in chiaro, in ambito intelligenza artificiale, che ciò che per noi umani è banale non lo è per una macchina. Se fosse "banale" insegnare ad un computer che cosa significa "hate", o anche solo "speech", non saremmo qui a discutere. Più un concetto è astratto, più è complicato programmare una AI per riconoscerlo e isolarlo. E per quanto attiene il campo dell'AI non c'è nulla di più lontano dal classico concetto di "programma" che tutti abbiamo in mente quando pensiamo a Tron o a War Games.

Oggi parliamo di deep learning, ovvero delle tecniche per "addestrare" una rete neurale a svolgere un compito preciso e specifico senza programmarla direttamente, ma lasciandola imparare per errori successivi finché il compito non sarà svolto perfettamente. In questo modo, recentemente, due reti neurali sono state in grado di produrre un algoritmo di cifratura noto solo a loro stesse: nemmeno i loro "creatori" sono stati in grado di comprendere come le due reti riuscivano a scambiarsi le informazioni, e nemmeno una terza rete neurale che aveva invece il compito di hackerare quel codice è riuscita nell'intento. Il senso di questo esperimento era quello di dimostrare che una macchina è oggi in grado di scrivere il suo stesso software che svolge efficacemente un compito specifico quando si trova in un ambiente controllato, con minima interferenza e con un set di regole ben definito (ovvero il paradiso dell'impiegato amministrativo).

Aprire una rete neurale a Facebook e chiederle di individuare un generico hate speech, dopo essere stata addestrata a farlo per mesi su un set di dati noti, significa che avrà una prestazione nel migliore dei casi uguale a quella del gruppo di ricercatori che ha preparato il set di training.

Ma che cosa dovrebbe fare in caso si trovasse a interpretare un tipo hate speech del tipo:
Dachau chiama
Ma non avete una carretta del cielo x un viaggio di sola andata!!!!!!!!!….?????….. Gli regaliamo anche l aereo!!!… Senza nemmeno andare in perdita.
Brutti scimmioni tornate nella giungla in Italia non vi vogliamo
per non nuocere alla salute altrui sedato con un calibro 12 a pallettoni.
Sono frasi che per me, anche decontesutalizzate, sono chiare e inequivocabili (4), ma che per una macchina potrebbero non avere alcun senso compiuto (a causa della sintassi, della grammatica e dell'ortografia spesso sbagliate) o non avere alcun "contatto" con le regole apprese nel training set.

Probabilmente, senza comprensione del reale contesto, della storia e dello stile comunicativo di ciascun utente oltre che di una buona dose di "fantasia" nel ricostruire la sintassi corretta dei periodi, è difficile che una AI possa riuscire a discernere un post "di odio". Non parliamo poi di complicare la questione introducendo le figure retoriche a noi più care, ovvero il sarcasmo, la satira, l'ironia, il cinismo e le loro sfumature più sottili.

Per concludere: non è affatto facile e non lo si fa in quattro e quattr'otto: i due mondi iniziali sono separati da un gap incolmabile: da una parte c'è la purezza del laboratorio sterile, dall'altra la sporcizia della bettola di periferia. inoltre più la ricerca procede e più tempo passa dalla sua reale applicazione alla nostra vita quotidiana, e questo procede in una spirale che appare interminabile.

Noi geek, siamo sul confine e viviamo con il cuore da un lato e con il cervello dall'altro, e sempre con un macigno sullo stomaco e il cruccio che probabilmente non potremo mai dire...
"Signor Sulu ci porti a casa!"
Ma è bello sperarci ogni giorno!


Link e note:

(1) scelto perché è all'ultimo posto della classifica dei Paesi per "felicità" percepita dai loro abitanti, come indicato da World Happyness Report
(2) Ansa: Boldrini, ancora attacchi sui social
(3) FAIR: Facebook AI Reasearch
(4) Sono commenti reali e vengono da esempi pubblicati qui: http://www.cartadiroma.org/editoriale/hate-speech/