Parliamo con Alexa, Siri, Cortana ogni giorno nelle nostre case. Gli assistenti vocali rispondono alle domande sul meteo. Ricordano gli impegni in agenda. Ascoltano le richieste, le interpretano e forniscono risposte congrue. Danno informazioni sulle ultime news in tv. O consigliano un film in base alle preferenze espresse.

Ricostruiscono quasi fedelmente il dialogo umano. E questo grazie ai progressi raggiunti nel campo del Natural Language Processing (NLP), un settore interdisciplinare, definito anche con il nome di Elaborazione del linguaggio e basato su un sistema di algoritmi di intelligenza artificiale in grado di analizzare, rappresentare e quindi comprendere il linguaggio naturale. Tra le finalità: la comprensione del contenuto, la traduzione, la produzione di un testo in modo autonomo a partire da dati o documenti forniti.    

Nonostante i progressi e le applicazioni attuali restano ancora molte sfide aperte. Ne abbiamo discusso con Maurizio Atzori, docente dell’Università degli Studi di Cagliari.

Un passo indietro: i big data

L’utente è protagonista attivo del web. Utilizza dispositivi come smartphone e tablet. È coinvolto nella produzione di contenuti testuali e multimediali. E poi acquista, vende, usufruisce di servizi online. Abita il web e contribuisce a generare innumerevoli dati di varia natura e formato.

Ma la grande i big data sono inoltre la conseguenza dell’informatizzazione dei processi aziendali. Anche la digitalizzazione documentale ha comportato un aumento esponenziale dei dati, per la maggior parte di tipo testuale, prodotti e detenuti da pubblica amministrazione, ospedali, banche, studi legali, aziende private.

È in questo contesto caratterizzato da una estrema varietà e quantità di contenuti espressi in linguaggio naturale che opera l’intelligenza artificiale. E compito degli algoritmi del Natural Language Processing (NLP) è favorire la realizzazione di soluzioni innovative per l’elaborazione, la comprensione e la produzione in maniera automatica di dati testuali. Gli scenari applicativi oggi sono innumerevoli.

Ambiguità del linguaggio naturale

Il rapporto che si instaura con queste macchine assomiglia a un vero e proprio dialogo, automatico per il parlante umano. Ma non così scontato invece per assistenti vocali come Alexa e Siri. Perché le lingue naturali, con cui ci esprimiamo non seguono un insieme di regole rigide. E ai dispositivi “intelligenti” mancano inoltre il contesto e il fine delle nostre richieste. Sono questi elementi che rendono ancora più complessa la comunicazione.

Dunque per colmare il gap comunicativo i sistemi di elaborazione del linguaggio naturale – a cavallo fra intelligenza artificiale e linguistica computazionale – assurgono al ruolo di mediatori nell’interazione fra uomo e macchina. Grazie soprattutto al contributo di tecniche di Artificial Intelligence sempre più avanzate, come Machine Learning e Deep Learning.

Di cosa si tratta

I sistemi di Natural Language Processing o Elaborazione del linguaggio naturale sono quindi algoritmi di intelligenza artificiale in grado di analizzare, rappresentare e comprendere il linguaggio naturale.

Il campo di ricerca è interdisciplinare. Abbraccia informatica, intelligenza artificiale e linguistica. E sviluppa algoritmi in grado di “comprendere” il linguaggio naturale.

Nello specifico l’Elaborazione del linguaggio naturale fornisce soluzioni per analizzare la struttura sintattica del testo. Quindi: nome, verbo, aggettivo. Ma inoltre identifica entità e le classifica in categorie predefinite. Ad esempio: persona, data, luogo. Attua anche un’analisi sintattica e individua le relazioni semantiche.

Quindi identifica il significato delle parole, delle frasi, dei testi. Le mette in relazione al contesto e alle modalità di utilizzo. E poi le classifica in categorie predefinite oppure sintetizza il contenuto stesso.

Il dialogo tra uomo e macchina coinvolge diversi aspetti. Fra questi: fonetica, fonologia, morfologia, sintassi, semantica, pragmatica e il discorso nel suo complesso. Di conseguenza, i compiti degli algoritmi coinvolti nei processi elaborazione del linguaggio naturale riguardano:

  • il riconoscimento della lingua;
  • la scomposizione della frase in unità elementari;
  • l’analisi semantica;
  • l’analisi del sentiment.

 

Perché è importante e come funziona

L’interazione con le macchine avviene ogni giorno. Per questo è importante elaborare programmi eseguibili dalle macchine, in altri termini sistemi in grado di comprendere e rispondere all’uomo.

In particolar modo le imprese oggi sono interessate alle soluzioni di Natural Language Processing. Sono diverse le opportunità di business dei sistemi di elaborazione del linguaggio naturale. Ad esempio:

  • Text Analysis, cioè l’analisi di un testo e l’individuazione di elementi chiave, come argomenti, persone, date;
  • Text Classification: interpretazione di un testo per classificarlo in una categoria predefinita, per riconoscere messaggi indesiderati e classificare per argomento la posta in arrivo;
  • Sentiment Analysis: rilevamento dell’umore all’interno di un testo per comprendere il sentiment degli utenti e consolidare la brand reputation dell’azienda;
  • Intent Monitoring: comprensione del testo per prevedere comportamenti futuri, ad esempio la volontà di acquisto da parte di un cliente;
  • Smart Search: ricerca, all’interno di archivi, dei documenti che meglio corrispondono ad un’interrogazione posta in linguaggio naturale;
  • Text Generation: generazione automatica di un testo;
  • Automatic Summarization: produzione di una versione sintetica di uno o più documenti testuali;
  • Language Translation: traduzione di testi scegliendo, volta per volta, il significato migliore a seconda del contesto.
  • Algoritmi per comprendere le query di navigazione nei siti web e reindirizzare correttamente la ricerca.

NLP e gli assistenti virtuali

Una delle sfide di ricerca per le tecniche di riguarda lo sviluppo di assistenti virtuali. Queste macchine possono rispondere a domande poste dall’utente in linguaggio naturale su uno specifico dominio di competenza (sistemi di Question Answering). Analizzano e classificano gli argomenti. Estraggono le richieste in linguaggio naturale. Interrogano basi di conoscenza strutturate di grosse dimensioni ma anche documenti testuali. E poi risolvono ambiguità e favoriscono inferenze di tipo semantico. Ma possono anche fornire supporto, assistenza e raccomandazioni (chatbot generativi). Questi sono solo alcuni esempi delle possibili funzionalità dei sistemi che adoperano le tecniche di NLP.

Prossime sfide

Nonostante gli enormi progressi ed innumerevoli risultati ottenuti, restano ancora differenti sfide di ricerca aperte. Fra queste:

  • L’elaborazione automatica del linguaggio naturale per lingue diverse dall’inglese. Per le lingue maggiormente utilizzate, come l’inglese, c’è una più ampia disponibilità di dataset annotati. Ma non è si può dire altrettanto per molte altre lingue o scenari è carente la mole di dati a disposizione.
  • La vera comprensione del linguaggio naturale in maniera automatica. Quindi la capacità di leggere e capire un testo in maniera similare ad un essere umano. In che modo? Favorendo l’apprendimento attraverso l’esperienza e l’interazione con l’ambiente esterno.
  • Risolvere ambiguità dovute a conoscenza implicita o non specificata, come per la disambiguazione delle parole.

 

E dunque l’esigenza di migliorare ulteriormente le capacità di comprensione automatica di contenuti in linguaggio naturale resta una sfida aperta su cui il mondo della ricerca sta lavorando.

Sarà necessario sviluppare soluzioni avanzate che si ispirino a campi differenti come le neuroscienze, la psicologia cognitiva, la linguistica e l’informatica per avvicinare le prestazioni delle macchine a quelle umane. E al contempo avere grandi quantità di dati per addestrare i sistemi di elaborazione del linguaggio naturale.

 

 

 

 

 

 

Interessante?

Condividi questo articolo con i tuoi amici!