Conversare con un computer: i progressi che farebbero felice Alan Turing - Agenda Digitale

Intelligenza artificiale

Conversare con un computer: i progressi che farebbero felice Alan Turing

Non ci sono, al momento, macchine la cui competenza linguistica si avvicini nemmeno lontanamente a quella di un parlante comune, ma il balzo in avanti degli ultimi anni porta a ritenere che il progresso continui. Non mancano, però, neanche le controversie verso l’IA, che ricordano quelle legate al test di Turing

10 Mar 2021
Alessio Plebe

Università degli Studi di Messina

Alan Turing, oltre ad aver inventato l’informatica, ha pure anticipato l’Intelligenza Artificiale (IA) con il suo celebre test descritto in un articolo del 1950, in cui un ipotetico software riesce a conversare con un umano, in modo talmente naturale e convincente da risultare indistinguibile da un interlocutore in carne ed ossa.

Chissà se Turing credeva potesse mai esistere un software del genere: certo, azzardò che entro cinquant’anni ci si sarebbe potuti avvicinare, ma il suo scopo principale era lanciare la provocazione che considerare un computer intelligente era perfettamente lecito e persino verificabile. Da questo punto di vista il successo del suo articolo fu assoluto, pochi esperimenti mentali hanno suscitato un vespaio di dotte controversie filosofiche come il test di Turing. Oggi quando i modelli neurali deep stanno inaspettatamente facendo intravedere la possibilità che la provocazione di Turing si concretizzi, l’eco di quelle lontane controversie si riverbera, con sorprendenti somiglianze, in molti dei commenti all’IA.

Prima di entrare nel merito di queste diatribe, è interessante notare come Turing, nello scegliere la competenza linguistica come la più pregevole capacità per una macchina che ambisca alla qualifica di “intelligente”, la assume evidentemente a facoltà centrale e caratterizzante per gli esseri umani. Turing in questo si associa ad una lunga schiera di filosofi, a partire da Aristotele fino a Wittgenstein e Dummett, passando per Herder e von Humboldt, che considerano il linguaggio, oltre che strumento per comunicare, l’impalcatura su cui si fonda la concettualizzazione del mondo da parte dei parlanti.

La sfida della competenza linguistica

L’atteggiamento provocatorio di Turing era stato recepito da alcuni pionieri dell’IA, che avevano accolto la sfida della competenza linguistica, con un paio di irriverenti programmi: Eliza, che colloquiava in parodia di uno psicoterapeuta di scuola rogeriana; e Perry impersonificante uno schizofrenico paranoide.

WEBINAR
22 Settembre 2021 - 10:30
DIGITAL360|PRESENTAZIONE SEMESTRALE 2021: fatturato +28%, EBITDA +32%, Annual Recurrent Revenue +50%

In tempi dell’IA meno archeologici, l’ombra di Turing continuò a pervadere le ricerche più mature di software in grado colloquiare, grazie all’iniziativa di un eccentrico imprenditore americano, Hugh Loebner, che finanziò l’omonimo premio annuale in cui competevano programmi, in una falsariga di test di Turing, con giornalisti in qualità di valutatori. Sono transitati dal premio Loebner diversi degli agenti artificiali conversazionali di maggior successo, come Julia di Michael Mauldin nel 1991, che introdusse l’appellativo chatbot per designare questo genere di software, o ALICE (Artificial Linguistic Internet Computer Entity) di Richard Wallace nel 2000. Pur trattandosi di software basati su una serie di euristiche piuttosto semplici, pur se astute, riuscivano ad essere abbastanza convincenti in conversazioni limitate, tanto che ad ALICE si è ispirato il film di successo Her di Spike Jonze, del 2013, in cui l’introverso e solitario protagonista si innamora di un chatbot.

Mentre l’arena del test di Turing era praticata prevalentemente da pochi geniali virtuosi della programmazione, si andava costituendo parallelamente un interesse informatico verso il linguaggio umano molto più sobrio e rigoroso. Il dominio di ricerca abitualmente etichettato come NLP (Natural Language Processing) si è sviluppato per virtù naturale, sulla scia della singolare coincidenza storica tra nascita dell’informatica e della moderna grammatica, di cui si è raccontato in dettaglio in. In breve, la svolta formalistica in linguistica impressa da Noam Chomsky dagli anni ’60 in poi, ha offerto agli informatici una serie di strumenti per comunicare, non tra esseri umani, ma tra un programmatore e il processore di un computer. Una volta quindi che gli informatici teorici avevano fatto propri i ferri del mestiere del linguista chomskiano, la tentazione di vedere come se la cavava il computer con il linguaggio naturale era ovvia.

Visione e linguaggio, così il deep learning ha monopolizzato l’intelligenza artificiale

Le accuse di impostura

Gli informatici che intrapresero la strada del NLP seguendo i passi di Chomsky (il quale, per inciso, era totalmente disinteressato alla faccenda), storcevano il naso nei confronti delle spericolate acrobazie dei software che si cimentavano col test di Turing. L’accusa di fondo, talvolta nemmeno troppo velata, era di essere degli impostori.

Marvin Minsky, con la ben nota acidità che contraddistingueva il personaggio, descrisse il cimentarsi nel test di Turing “obnoxious and stupid” (“odioso e stupido”) e propose un generoso premio in denaro a chiunque avesse convinto Loebner a smettere di organizzare la competizione. Pur senza l’acrimonia di Minsky, la comunità scientifica del NLP si manteneva fredda e distaccata nei confronti dei chatbot, perché non era un genere di ricerca che impiegava i progressi teorici in NLP, e di conseguenza nemmeno li stimolava.

Occorre dire che effettivamente, fin da Eliza, questi software giocavano su aspetti psicologici dell’interlocutore umano, per evitare il più possibile brutte figure, anche quando si trovavano alle prese con domande totalmente incomprese. Anziché rimanere silenti, o peggio avventurarsi con risposte che potevano risultare palesemente errate, facevano uso di un repertorio di emergenza fatto di frasi vaghe, misteriosamente allusive, domande per sviare il discorso. Per un giudice umano al test di Turing l’interlocutore poteva sembrare credibile, anche se piuttosto bizzarro. Diciamo che non sono esenti da questo genere di strategie anche i più recenti compagni di conversazione virtuali, ma nei primi si trattava di una componente fondamentale.

Però il punto dell’impostura è diventato man mano un perno di critiche anche più qualificate nei confronti dei chatbot, come per esempio quelle sollevate dai filosofi Ned Block o John Searle. Quest’ultimo per mostrare come il test di Turing sia di per sé un inganno ha escogitato un esperimento mentale che ha avuto un successo enorme. Searle ci fa immaginare la macchina intelligente come una stanzetta chiusa, con una feritoia attraverso cui entrano ed escono i messaggi della conversazione. Entro la stanzetta un essere umano prende il messaggio in arrivo, e consulta un manuale, fino a trovarvi l’esatta copia di tale messaggio. In corrispondenza c’è la risposta corretta, che la persona copia diligentemente su un foglio e la passa in uscita. La conversazione può procedere liscia e pienamente convincete. Ma c’è un particolare. Chi conversa fuori della stanza è un cinese, i messaggi sono in ideogrammi cinesi così come il manuale, ma l’addetto che scambia messaggi è un americano che non conosce il cinese. Searle vuol così dimostrare come sia possibile barare e far finta di sostenere una conversazione pur senza averci capito una sola parola. In effetti, lo stesso esperimento mentale di Searle gioca un po’ sporco, apparentemente è convincente, ma non regge un’analisi filosofica più attenta, come spiegato in

Il deep learning diventerà onnipotente? Limiti e prospettive delle reti neurali artificiali

Le difficoltà del Neural Language Processing

Il più serioso ambito del NLP ha prodotto una sterminata ricerca, utile sia per meglio comprendere come funzioni proprio il linguaggio umano, sia per dotare i computer di alcune primordiali forme di abilità linguistica. Senza troppo addentrarsi, si può osservare come il progresso sia stato estremamente lento, in quanto ogni nuovo strumento si dimostrava troppo semplice ed inadeguato rispetto alla variabilità e complessità dei fenomeni linguistici.

Soprattutto il NLP ha sofferto delle enormi difficoltà che la linguistica stessa ha incontrato, nel tentativo di formalizzare interamente una lingua naturale. Se già le costruzioni dei linguisti teorici erano incapaci di formalizzare adeguatamente il conversare delle persone, era difficile pretendere di dotare il computer di capacità linguistiche basate su tali teorie. Non a caso in linguistica, da diversi decenni si assiste ad un progressivo allontanamento dalle formalizzazioni sintattiche di scuola chomskiana, verso direzioni diverse, come la linguistica cognitiva.

Le cose non sono andate meglio riguardo la semantica, ovvero la gestione dei contenuti concettuali di una frase, e l’organizzare in qualche modo i concetti nell’insieme di relazioni che li contraddistinguono. La semantica tradizionale si basa sulla logica per esprimere tali relazioni, questo è l’approccio impiegato nel più imponente tentativo di dotare i computer di competenza semantica: il CYC, intrapreso da Douglas Lenat negli anni ’80. La velleità era di codificare in maniera certosina il sapere di una persona comune, concetto per concetto, creando manualmente tutte le relazioni necessarie. Per esempio, MarmellataFragole deve essere una sottocollezione della collezione Marmellata, la quale è un elemento della collezione AlimentoMolliccio, AlimentoDolce, rende veri predicati come spalmabileSulPane, haSaporeDolce e via dicendo. È lampante come sia sterminata la lista di concetti e loro relazioni per assomigliare anche alla persona più sempliciotta ed ingenua si possa immaginare. Ad oggi CYC possiede circa 24 milioni di entità semantiche, il cui inserimento manuale è costato qualcosa come mille anni–uomo di lavoro, e pur se ancora attivo, il progetto è considerato un fallimento rispetto alle sue iniziali ambizioni.

Negli anni ’80 tra i virtuosismi non troppo limpidi degli arditi chatbot, il rigore austero dei linguisti computazionali, si insinua un terzo attore, le reti neurali artificiali, dove le abilità linguistiche sono direttamente apprese da esempi, eliminando radicalmente ogni necessità di regole sintattiche e logiche. Uno scandalo. Pur dimostrando la possibilità di apprendere qualche semplice competenza sintattica e semantica in vocabolari estremamente limitati, le prime reti neurali non avevano la minima capacità di sostenere una conversazione. Il problema più serio era che i neuroni processano numeri reali, perfetti per veicolare informazioni contenute in segnali sensoriali, ma estranei alla forma in cui ci appare il linguaggio. È lampante: le frasi sono fatte di parole, non di numeri, e un modo efficace di far digerire ai neuroni le parole rimase irrisolto per decenni.

Nel frattempo, i lenti progressi del NLP avevano consentito di impostare dei sistemi conversazionali senza ricorrere a spericolate euristiche. Uno schema che si è presto consolidato vede al suo centro una componente che tiene traccia dello stato corrente del dialogo, un analizzatore della frase dell’interlocutore, un sistema decisionale per scegliere l’azione corretta, e un generatore linguistico. Ognuna di queste componenti è di tipo simbolico, la traccia del dialogo è uno tra possibili stati predefiniti, il risultato dell’analisi della frase consiste nell’assegnare le entità semantiche presenti alle categorie previste nel sistema, e di inferire “intenti”, ancora una volta da una lista predefinita, stessa cosa per le azioni.

Questo schema ha consentito di realizzare semplici agenti conversazionali, ciascuno confinato ad un ristretto vocabolario e un ristretto compito, come informazioni su orari di treni, sulle disponibilità alberghiere, proiezioni di film e via dicendo.

La svolta del riconoscimento del parlato

Un notevole balzo in avanti fu permesso da quel singolo aspetto del linguaggio dove le reti neurali, ancor prima di diventare “deep”, riuscivano ad eccellere: il riconoscimento del parlato. Nell’ampio spettro che compone le problematiche del linguaggio naturale, questo è l’angolino dove le reti neurali artificiali si trovano naturalmente a loro agio, essendo i dati da analizzare segnali continui nel tempo. Il riconoscimento vocale tramite reti neurali fu, nel 1991, l’oggetto della ricerca di dottorato nientemeno che di Yoshua Bengio, oggi celebrato come uno dei padri del deep learning insieme a Geoffrey Hinton e Yann LeCun.

Già ad inizio secolo le reti neurali avevano soppiantato gli altri metodi nel riconoscimento del parlato, rendendolo relativamente robusto. Questo punto di forza ha reso commercialmente proponibili gli assistenti virtuali come Siri, Alexa, l’assistente di Google e Cortana. Pur se le loro risposte sono molto lontane da quel che si può chiamare un conversare, già il riuscire ad afferrare una buona parte di quel che l’interlocutore chiede, risulta impressionante ed apprezzato dagli utenti. Un numero sempre crescente di applicativi ha considerato il vezzo, tutto sommato a buon mercato, di dotarsi di un’interfaccia vocale, tanto che nel 2016 il MIT Technology Review ha incluso i chatbot tra le dieci più influenti nuove tecnologie dell’anno.

Il word embedding: maneggiare parole come numeri

Ma la vera rivoluzione dei dialoganti artificiali doveva arrivare, ed era legata alla soluzione dell’annoso problema di convertire parole in numeri, che aveva afflitto le reti neurali. Soluzione trovata con il metodo genericamente denominato word embedding, in cui le parole vengono trasformate in vettori di numeri reali, appresi da corpora di esempi di una lingua. I vettori, inizialmente casuali, vengono progressivamente modificati in modo da essere similari quando circondati da parole simili, anch’esse sottoforma di vettori. Il risultato sorprendente è che effettuando operazioni vettoriali, i risultati rispettano relazioni di significato tra le parole, per esempio l’operazione

vec(“re”) – vec(“uomo”) + vec(“donna”)

produce come risultato un vettore che è più similare a vec(“regina”) di qualunque altro vettore. Tra il 2014 e il 2017 il word embedding venne ulteriormente raffinato, prendendo in considerazione anche informazioni sia a livello inferiore della singola parola, entrando nella morfologia sia a livello più ampio di una frase. Il mondo dei vettori e dell’algebra lineare è l’angolo di matematica più congeniale alle reti neurali, che nella loro astrazione artificiale non sono altro che collezioni di vettori e matrici. Il maneggiare parole come numeri ha tolto di mezzo la magia dei simboli, e aperto la strada all’irrompere delle reti neurali in ogni dominio del NLP. A partire proprio dalla sfida ritenuta più ardua nella linguistica computazionale seriosa: la traduzione.

Perché insegnare alle macchine a parlare e scrivere come noi? I pericoli

Il Transformer di Google

Fino a pochi anni fa il genere di rete neurale in grado di operare sul linguaggio era quella ricorsiva, introdotta negli anni ’90 da Jeffrey Elman, nell’epoca in cui ancora ci si disperava su come convertire le parole da simboli a numeri. Ora grazie al word embedding si può andare oltre, quel che ha fatto Google affrontando la problematica della traduzione, introducendo nel 2017 l’architettura denominata Transformer, a detta di Goffrey Hinton una delle più brillanti idee nell’ambito del deep learning. Mentre nelle reti ricorsive le attivazioni dei neuroni dipendono dalla parola corrente, con l’aggiunta dell’attivazione precedente, mantenendo implicitamente una memoria delle parole nella frase, nel Transformer la parola corrente produce un’attivazione vettoriale che considera anche tutte le altre parole nella frase, ciascuna pesata secondo la loro rilevanza. Tale rilevanza, che può essere considerata una sorta di processo attentivo, è semplicemente appresa dai diversi contesti linguistici a cui il modello è esposto. Sia il calcolo della rilevanza, che l’accumulo del contributo delle diverse parole, diventano semplici grazie alla codifica vettoriale.

Come detto la ricerca che ha condotto al Transformer mirava soprattutto alla traduzione automatica, pertanto il modello è concepito in due parti, entrambe composte da diversi strati di neuroni con meccanismo attentivo. Una, chiamata encoder analizza la frase nella lingua di origine, e un’altra – decoder – che produce la traduzione nella lingua desiderata.

I modelli GPT e BERT

Divenne presto evidente come il modello funzionasse talmente bene da poterne fare diversi altri usi, in cui non era necessaria la doppia struttura, venne quindi semplificato da OpenAI in Generative Pre-trained Transformer (GPT), in cui esiste solamente il lato decoder, le cui parole in uscita (rigorosamente codificate in vettori) vengono aggiunte al testo in input. L’addestramento avviene con qualunque genere di testo, in cui naturalmente ogni parte ha attinenza con quelle che precedono. Un passo avanti rispetto a GPT è stato, da parte di Google, l’estensione del meccanismo di attenzione anche in avanti: nell’analisi della parola corrente contribuisce anche la rilevanza che posso mantenere con essa parole successive. Per questo il modello è denominato BERT (Bidirectional Encoder Representations from Transformers). Questi modelli sono in buona sostanza dei potenti sistemi rappresentazionali di una lingua, della miriade di relazioni che intercorrono tra le parole, che le caricano di significati.

Tali modelli, per così dire generalisti, si prestano poi ad essere rifiniti per compiti linguistici più specifici, come nel caso classico della traduzione, oppure in compiti come produrre sommari di libri, generare prosa in un certo stile, scrivere software, musica, poesia. Oppure, conversare.

I test di GPT-3: che cosa è davvero l’AI che sembra “umana”

I migliori candidati per agenti conversazionali credibili

Si sta progressivamente constatando che i modelli del genere Transformers sono i migliori candidati per agenti conversazionali credibili, forse persino in grado di regalare una soddisfazione postuma a Turing. I principali giganti informatici si stanno muovendo in questa direzione: Google con Meena basato su BERT, Facebook usando implementazioni di Transformers con meccanismi attentivi più raffinati di BERT denominate poly-encoders, Microsoft con DialoGPT basato ovviamente su GPT. Ci sono anche attori minori ma non meno agguerriti, come l’agente TransferTransfo della HuggingFace Inc. o Lost-in-Conversation di Mail.ru Group, entrambi basati su GPT.

La comparazione tra gli svariati decenni di enormi sforzi nell’ambito NLP, dedicati all’analisi del fenomeno del conversare, al ricondurlo ad una serie di descrizioni formalizzate, su cui sviluppare algoritmi in grado di realizzarli, e la facilità con cui nel giro di due-tre anni le semplici reti neurali sono arrivate a produrre risultati addirittura migliori, è impressionante e disarmante. In questo clima è comprensibile che siano state sollevate molte critiche agli agenti conversazionali basati unicamente sui modelli neurali generalisti del linguaggio, critiche mosse da parte di personaggi importanti nell’ambito del NLP come Barry Smith, Emily Bender, Jobst Landgrebe. Critiche comprendono diversi aspetti tecnici puntuali, ma in cui riecheggia un rimprovero di fondo già sentito. Questi modelli neurali sono ingannevoli: sembrano in grado di conversare, ma attenzione, sotto sotto “non stanno capendo davvero” di cosa si stia conversando. Lo stesso genere di sospetto si legge facilmente anche in svariati commenti giornalistici su queste tecnologie, con avvertenza di non farsi troppo ingannare dalle subdole apparenze di questi agenti conversazionali.

Conclusioni

Si tratta sempre, in una o l’altra forma, dell’argomento della stanza cinese di Searle. Così come era filosoficamente debole quello, lo sono in misura ben più sostanziale queste sue eco recenti. Va aggiunto che le attuali critiche di impostura soffrono di un certo antropomorfismo: mentre era legittima l’accusa rivolta ai primi audaci chatbot, in cui erano le abili intenzioni dei loro programmatori a includere una certa dose di inganno, nei modelli neurali generalisti del linguaggio chi si dovrebbe accusare? Naturalmente non i programmatori, ma allora concedere capacità di inganno ad una rete neurale vuol dire attribuirle doti ancor più umane del saper conversare.

In realtà non vi sono ragioni di principio per accusare nessuno, umano o macchina, di essere un imbroglione che non capisce nulla di quel che dice, se fosse in grado di conversare a lungo e su qualunque argomento. È anche sulla pertinenza e coerenza di quel che ci dice un interlocutore che noi basiamo la fiducia che riponiamo in lui. Beninteso, al momento nessun agente conversazionale avvicina nemmeno lontanamente la competenza di un parlante comune, ma il sorprendente balzo in avanti degli ultimi anni porta a ritenere che il progresso continui.

WHITEPAPER
Digital experience fluida e omnicanale: una guida completa
@RIPRODUZIONE RISERVATA

Articolo 1 di 2