Indice dei contenuti
Tra le aree di applicazione più affascinanti dell’intelligenza artificiale c’è sicuramente quella relativa al linguaggio. Le tecniche dell’intelligenza artificiale, e in particolare del Machine Learning, applicate al linguaggio vanno sotto la denominazione di Natural Language Processing. Si tratta di metodologie la cui finalità è “insegnare” alle macchine a comprendere il linguaggio umano e, infine, a riprodurlo. I progressi in questo ambito sono stati enormi, ma la strada da percorrere è ancora molto lunga.
In questo articolo proveremo sinteticamente a fare il punto della situazione per le applicazioni di Natural Language Processing e a immaginare il prossimo futuro. Cercheremo di farlo soprattutto dal punto di vista del marketing e delle possibili applicazioni in questo senso della NLP.
Breve storia del Natural Language Processing
i primi passi: Colossus
I primi tentativi di applicare le macchine alla comprensione o alla traduzione del testo risalgono addirittura agli anni 40. Come spesso è accaduto nelle vicende umane la guerra può dare grande impulso al progresso tecnologico. Fu la necessità di decifrare e tradurre il più velocemente possibile i messaggi nemici che spinse i britannici a realizzare Colossus nel 1943, in assoluto uno dei primi elaboratori elettronici della storia. Come il nome lascia supporre si trattava di un macchinario enorme, il primo ad impiegare le valvole termoioniche (oltre 1500) al posto dei relè, e fu progettato da Alan Turing. Il suo scopo non era propriamente quello di interpretare un linguaggio naturale, quanto di comprendere i messaggi cifrati dei tedeschi. Questi avevano ideato un sistema di cifratura che cambiava quotidianamente vanificando gli sforzi dell’intelligence alleata. Colossus, sfruttando la sua capacità di calcolo, faceva numerosi tentativi in sequenza. Impiegava cioè una semplice metodologia di “forza bruta”, che portò però a decifrare migliaia di messaggi segreti del nemico e diede un contributo importante a cambiare le sorti del conflitto.
Il Georgetown Experiment
Fu negli anni 50 però che la vera storia della Natural Language Processing ha il suo inizio ufficiale. Ancora una volta è la guerra, quella fredda in questo caso, a dare stimolo alle ricerche e agli investimenti. L’IBM, insieme all’università di Georgetown realizzarono nel 1954 un famoso esperimento di traduzione automatica di una sessantina di frasi dal russo all’inglese. L’obiettivo dei ricercatori era di arrivare nel giro di cinque anni ad avere un sistema completo e affidabile di traduzione dal russo. L’obiettivo dichiarato si rivelò in realtà troppo ambizioso.
La grammatica trasformazionale di Chomsky
Un capitolo fondamentale di questa storia sono gli studi linguistici compiuti negli anni 50, in particolare da Noam Chomsky. Il contributo più importante che Chomsky diede al progresso della linguistica e della NLP è la sua intuizione sulla teoria della grammatica generativa trasformazionale. La teoria era basata sull’esistenza di una struttura profonda della lingua e una di superficie e definiva i principi di connessione tra i due livelli, introducendo il concetto di linguistica matematica.
Lo stop negli anni 60 e 70
I risultati degli esperimenti condotti dall’IBM negli anni 50 furono deludenti rispetto alle attese. Nel decennio seguente poi le risorse economiche e le energie erano sempre più destinate ad altri progetti di sviluppo tecnologico. Nel ’64 venne costituito l’ALPAC (Automatic Language Processing Advisory Committee), una commissione governativa incaricata di valutare i progressi della NLP. L’ALPAC concluse che i progressi non erano soddisfacenti e che gli investimenti e i fondi pubblici destinati a questa ricerca erano eccessivi. A partire dal ’66 quindi i finanziamenti si fermarono, insieme agli sviluppi.
La direzione in cui si mossero gli studi in questi anni erano prevalentemente applicazioni basate sul sistema degli automi a stati finiti, introdotto dagli studi di William A. Woods. Si tratta di un modello matematico probabilistico che analizza l’input in modo progressivo definendo la struttura delle frasi in base alla sequenza di termini. E’ un modello che permette di semplificare l’analisi e richiede una capacità di calcolo relativamente limitata, ma funziona solo con strutture di informazioni estremamente regolari.
L’alba del Machine Learning
Fu solo negli anni ’80, con l’introduzione di computer sempre più performanti ed economici, che i progressi della NLP ripresero a grandi balzi. In particolare furono le prime applicazioni di Machine Learning a cambiare sostanzialmente il paradigma. Fino ad allora i gli algoritmi di NLP si erano basati su sistemi complessi di istruzioni finite (rule based). In questi anni presero piede i cosiddetti “sistemi esperti di seconda generazione”, cioè algoritmi in grado non solo di applicare delle regole predefinite, ma di modificare le stesse regole sulla base di un corpus di dati in input.
I primi modelli di Machine Learning applicati alla lingua erano di tipo supervisionato (Supervised Machine Learning): i corpus di dati in input venivano classificati manualmente in modo da istruire il sistema sulle varianti corrette.
Negli anni ’90 cominciò ad affermarsi il concetto di reti neurali applicate ai sistemi informatici e vennero rilasciate le prime applicazioni commerciali di sistemi di traduzione automatica, per quanto ancora rudimentali.
Gli sviluppi più recenti e lo stato dell’arte del NLP
Il progresso più significativo nel campo dello sviluppo dei sistemi di intelligenza artificiale applicato alla lingua è stata la pubblicazione nel 2013 da parte di Tomas Mykolov del modello Word2Vec. Come abbiamo visto, fino a quel momento tutti gli algoritmi delle applicazioni linguistiche si basavano su regole fisse mutuate dagli studi di lunguistica e sulla struttura delle diverse lingue o sull’apprendimento supervisionato di corpus di testo.
Anche Word2Vec si basa sul training del sistema con un corpus di testi il più ampio possibile, ma si tratta di un sistema non supervisionato, in grado virtualmente di apprendere in modo autonomo la struttura della lingua.
Cos’è Word2Vec
E’ una rete neurale a due strati il cui funzionamento è basato sul principio del word embedding: dato un corpus di testo in input il sistema elabora una mappa multidimensionale delle parole rappresentata da un insieme di vettori. In pratica il sistema è in grado di apprendere le relazioni semantiche tra le diverse parole di un testo sulla base della distanza con la quale occorrono, e attribuisce loro un valore numerico che ne indica il vettore sulla mappa. In questo modo il sistema è virtualmente in grado di apprendere il significato di un testo (o più precisamente la relazione tra i suoi diversi elementi), a prescindere dalla lingua in cui è scritto. Pertanto è anche in grado di riprodurre lo stesso significato in una lingua differente, ovvero di tradurlo, in modo piuttosto soddisfacente.
Word2Vec è tuttora il metodo più sofisticato di cui disponiamo per addestrare l’intelligenza artificiale linguistica, ma ha dei limiti strutturali che devono essere ancora superati: oltre alla quantità di dati necessari per l’elaborazione, che richiede sistemi di dimensioni elevatissime, non è ancora in grado di risolvere pienamente la polisemia, cioè la proprietà di alcune parole di assumere significati diversi anche nello stesso contesto. Grazie a Word2Vec sono stati invece individuati diversi criteri per svolgere uno dei compiti che è sempre stato considerato un limite quasi insuperabile per l’intelligenza artificiale: riconoscere l’ironia.
L’ultima innovazione: GPT-3 e i sistemi autoregressivi
Nel 2020 il laboratorio di ricerca Open AI, basato a San Francisco, ha rilasciato un sistema linguistico basato su un modello statistico autoregressivo. Si tratta in questo caso di un modello di machine Learning pre-istruito che è in grado di elaborare 175 miliardi di parametri. I primi risultati della versione beta sono sorprendenti: GPT-3 è in molti casi in grado di intrattenere conversazioni praticamente indistinguibili da quelle di un interlocutore umano.
Natural Language Processing e applicazioni di marketing
Le applicazioni attuali e soprattutto gli sviluppi futuri che ci si possono attendere dai sistemi di intelligenza artificiale applicati alla lingua sono tantissime, e limitate solo dall’immaginazione dei marketers:
La traduzione automatica
Ovviamente la traduzione dei testi con una buona qualità può ridurre se non eliminare molti vincoli geografici alla distribuzione di contenuti e prodotti: le schede prodotto per un e-commerce possono essere tradotte in tutte le lingue, presto lo saranno gli articoli di un giornale o le campagne pubblicitarie di un’azienda.
Google ha fin dall’inizio spinto molto su questo tipo di applicazione lanciando già nel 2006 Google Translate. I primi risultati di questo servizio erano del tutto insoddisfacenti e gli esiti delle traduzioni erano piuttosto comici. La prima versione del sistema era stata realizzata utilizzando come corpus di training le trascrizioni multilingue dei testi delle Nazioni Unite e dell’Unione Europea. Negli ultimi anni si è evoluto moltissimo, soprattutto dopo l’introduzione dei modelli di word embedding.
Oggi sul mercato esistono numerosi servizi commerciali per la traduzione. La loro funzionalità è ancora parziale: è sempre necessaria una revisione umana per evitare errori grossolani o incongruenze nel testo. Possono però essere un supporto molto utile per ridurre il carico di lavoro rendere più rapida la traduzione di grandi quantità di testo. Sono adatti soprattutto a testi relativamente semplici e schematici (schede prodotto, brevi news, istruzioni ecc.).
Sentiment Analysis
Che cosa dicono gli utenti online di un brand, di un prodotto, di un personaggio politico? Analizzare l’attitudine del pubblico (appunto il “sentiment”) è molto importante per comprendere il grado di accettazione di una campagna pubblicitaria, per verificare il grado di accettazione di un prodotto o servizio, in generale per valutare il gradimento di un’offerta e per individuarne i punti di forza e di debolezza. Questa attività di analisi e ricerca è sempre stata svolta con metodi empirici. Innanzitutto si utilizzavano degli spider per registrare le conversazioni o i post utilizzando determinate parole chiave e si procedeva poi a classificarle come positive, negative o neutre.
La classificazione doveva essere necessariamente effettuata da esseri umani in grado di comprendere le espressioni linguistiche e le loro sfumature. L’evoluzione dei modelli di NLP sta progressivamente semplificando questo tipo di attività permettendo di renderla in gran parte automatica. Restano alcune aree critiche: si pensi ad esempio all’ironia, una delle sfumature linguistiche più indecifrabili per una macchina. Un utente che scrive ad esempio “proprio fantastico questo prodotto” potrebbe, a seconda del contesto, intendere esattamente il contrario. Oggi non si può fare completo affidamento sui modelli automatici per risolvere queste espressioni. I progressi però vanno proprio nella direzione di una maggior comprensione del contesto.
Bot e sistemi conversazionali
Lo sviluppo di bot in grado di interagire in modo coerente con gli umani è già largamente utilizzato e con buoni risultati. I bot sono ancora in grado di sostenere una conversazione davvero credibile solo su temi limitati. I progressi fatti negli ultimi anni da Google, da Amazon con il motore di Alexa, da Apple con Cortana e da IBM con Watson sono enormi. Le ultime novità di GPT-3 citate in precedenza lasciano ben sperare per sviluppi ancora più rapidi in questo ambito.
Al momento i veri bot conversazionali sono ancora utilizzati per ragioni sperimentali o per semplici compiti di gestione clienti. Esistono invece applicazioni già molto efficienti e funzionali per dare supporto agli umani nel gestire conversazioni commerciali o di supporto. E’ probabile che sarà soprattutto questo, almeno nel medio termine, il vero contributo
L’Advertising Contestuale
Il contextual advertising è una tecnologia sotto i riflettori in questo momento. A causa delle limitazioni sull’uso dei cookies per la profilazione degli utenti che praticamente ne impediranno l’utilizzo a partire dal prossimo anno, le aziende dell’Adtech stanno investendo molte risorse per sviluppare sistemi basati sul Machine Learning in grado di pianificare la pubblicazione degli annunci sulla base del contenuto delle pagine.
Le piattaforme di Programmatic Advertising utilizzano i dati per segmentare gli utenti e pianificano sulla base della probabilità che una determinata categoria di persone reagisca in modo positivo a un messaggio pubblicitario. I sistemi di advertising contestuale al contrario, partono dall’analisi del contenuto di una pagina e stimano la probabilità che i fruitori di quello specifico contenuto siano più o meno propensi a interagire con una comunicazione pubblicitaria.
La produzione di contenuti
Forse lo sviluppo più incredibile e affascinante che ci si può attendere, e che per ora è ancora in fase iniziale, sarà la capacità delle reti neurali di scrivere autonomamente testi. Oggi esistono software in grado di produrre brevi testi di qualità accettabile su base schematica (schede prodotto, brevi notizie in ambito specifico, come le news di borsa). Ci sono anche aziende che propongono servizi di copy creativo per campagne digitali basato su intelligenza artificiale.
Un esempio interessante è quello di Jarvis, un sistema sviluppato da una startup americana che promette di produrre social post e articoli per blog. Il sistema è basato sul modello GPT-3 e i suoi creatori dichiarano che è stato istruito acquisendo il 10% di tutti i contenuti di internet. Anche in questo caso, più che produrre testi completi, il sistema è funzionale per fornire spunti e suggerimenti che devono essere poi rivisti e rielaborati da un autore umano.
E’ probabile che nel giro di qualche anno i software saranno in grado di produrre contenuti testuali complessi. Probabilmente non solo blog post o creatività pubblicitarie, ma persino romanzi e poesie.
Oggi non sappiamo quanto tempo richiederanno questi progressi, ma la tecnologia ha dimostrato che la crescita tende ad essere esponenziale, per cui non ci sarebbe da sorprendersi se nel giro di un paio d’anni leggeremo davvero il primo romanzo interamente concepito e scritto da un sistema di intelligenza artificiale.
In ogni caso il content marketing è sicuramente una delle attività nelle quali il contributo dei sistemi di Natural Language Processing sarà più significativo.