Elaborazione del Linguaggio Naturale: Definizione e Storia

La Natural Language Processing (NLP), o Elaborazione del Linguaggio Naturale in italiano, è un campo interdisciplinare che combina elementi di intelligenza artificiale (AI), informatica, e linguistica, con l'obiettivo di permettere alle macchine di comprendere, interpretare, generare e rispondere in linguaggio umano in modo naturale e intuitivo.

Che cos’è la NLP?
L’Elaborazione del Linguaggio Naturale (NLP, Natural Language Processing) è una disciplina fondamentale all’interno del vasto campo dell’Intelligenza Artificiale (IA).
Leggi anche

La NLP coinvolge un insieme di tecniche, algoritmi e metodologie che consentono ai computer di analizzare, comprendere e derivare significato dal linguaggio umano in modo utile e scalabile. Queste tecniche includono, ma non si limitano a, la tokenizzazione, l'analisi sintattica, la disambiguazione del significato delle parole (Word Sense Disambiguation), la rilevazione delle entità nominate (Named Entity Recognition), l'analisi dei sentimenti (Sentiment Analysis) e la generazione del linguaggio (Language Generation).

Nonostante è solo negli ultimi anni che la NLP è iniziata ad entrare nell’immaginario collettivo grazie all’esplosione, la storia della NLP ha radici nella seconda metà del secolo scorso.

Le origini

Le origini della NLP risalgono ai primi giorni dell'intelligenza artificiale. Nel 1950, Alan Turing propose il "Test di Turing" come criterio per determinare se una macchina può o meno "pensare".

Nel 1954, l'esperimento di traduzione automatica Georgetown-IBM segnò un punto di svolta per la NLP, quando un computer IBM tradusse con successo oltre 60 frasi dal russo all'inglese. In questo periodo, l'approccio alla NLP era basato su regole e logica e i programmi venivano scritti per eseguire specifiche operazioni di elaborazione del linguaggio naturale, come la traduzione di frasi da una lingua all'altra.

Anni '70

Durante gli anni '70, l'approccio dominante alla NLP si sviluppò ulteriormente con l’introduzione di sistemi basati su regole che utilizzavano grammatiche e lessici dettagliati per interpretare e generare linguaggio. Questo periodo vide lo sviluppo dei primi sistemi di comprensione del linguaggio naturale, come SHRDLU, un sistema sviluppato al Massachusetts Institute of Technology (MIT) che poteva interpretare e rispondere a comandi in inglese in un ambiente di "blocchi di mondo".

Anni  '80

Gli anni '80 furono un periodo di sviluppo per le tecniche basate sulla statistica nella NLP. Questo cambiamento fu in parte guidato dalla disponibilità di grandi quantità di dati testuali e dallo sviluppo dei modelli del Markov Hidden Model e del modello di linguaggio n-gram.

Anni '90

Tra gli anni ‘90 e il 2000, si assiste a una crescente enfasi sui metodi di apprendimento automatico. Invece di fare affidamento su regole rigide, i ricercatori iniziarono a utilizzare algoritmi che potessero "apprendere" da grandi quantità di dati testuali.

Algoritmi come le Support Vector Machines e i Decision Trees diventano comuni in NLP. Nell'ambito dei metodi statistici, si sviluppa l'uso di metodi bayesiani. Questi algoritmi potrebbero essere addestrati su grandi quantità di dati per riconoscere modelli e fare previsioni.

Il nuovo millennio

Dalla seconda metà degli anni 2000 si assiste all'ascesa del Deep Learning e delle reti neurali in NLP. Si assiste allo sviluppo di importanti modelli come le Reti Neurali Ricorrenti (RNN), le Reti Neurali Convoluzionali (CNN). In particolare, nel 2017, il paper ‘Attention is All You Need’ (l’attenzione è tutto ciò che serve), presentato da Vaswani et al. ha introdotto un nuovo tipo di modello di apprendimento profondo chiamato "Transformer". Questo modello ha apportato un cambiamento significativo nel campo dell'Elaborazione del Linguaggio Naturale (NLP) e ha influenzato molti dei progressi recenti in questo campo.

I modelli NLP precedenti, come le Reti Neurali Ricorrenti e le Reti Neurali Convoluzionali, hanno affrontato l'elaborazione del linguaggio naturale analizzando le sequenze di parole nel tempo o nello spazio, considerando una parola alla volta o piccoli gruppi di parole. Tuttavia, questi modelli avevano dei limiti. Ad esempio, le RNN avevano problemi nel gestire dipendenze a lungo termine tra le parole a causa del problema della scomparsa del gradiente, mentre le CNN, sebbene fossero in grado di gestire contesti più ampi, non erano ottimali per modellare le dipendenze sequenziali.

La rivoluzione dei modelli Transformer

Il modello Transformer ha rivoluzionato tutto ciò introducendo il meccanismo di "attention", o attenzione, che permette al modello di concentrarsi su diverse parti di una sequenza di input contemporaneamente, e di ponderare l'importanza relativa di ciascuna parte quando genera una sequenza di output. Questo ha permesso ai modelli Transformer di gestire in modo molto più efficace le dipendenze a lungo termine nel testo.

Un altro vantaggio dei Transformer è la loro capacità di elaborazione parallela. Mentre le RNN devono elaborare le sequenze di parole in ordine, i Transformer possono elaborare tutte le parole di una sequenza contemporaneamente, rendendoli molto più efficienti da addestrare su hardware moderno.

È possibile pensare a questa rivoluzione nella NLP come un cambiamento nel modo in cui un modello legge e racconta storie. Prima, era come se il modello stesse leggendo una storia parola per parola, cercando di ricordare le parti importanti col procedere della lettura del testo. Con l'arrivo dei modelli Transformer, è come se i modelli abbiano acquisito una sorta di "superpotere" che gli consente di leggere l'intera storia in un colpo solo e di capire come le diverse parti si collegano tra loro.

Questo significa che i computer ora possono comprendere il linguaggio molto meglio di prima, potendo vedere il quadro generale e comprendere il contesto generale in maniera più precisa. Possono inoltre capire che la stessa parola potrebbe avere significati diversi in parti diverse della storia, e possono adattare la loro interpretazione di conseguenza.

In termini pratici, questo ha portato a enormi miglioramenti in molte aree. Per esempio, i programmi di traduzione possono ora fare un lavoro molto migliore nel capire il significato di una frase in una lingua e nel tradurla in un'altra. I chatbot possono rispondere alle domande in modo più naturale e preciso. E le applicazioni che analizzano il linguaggio, come quelle usate per rilevare il sentimento nei social media, ora possono fare un lavoro molto più accurato.

Grazie all’avvento dei Transformer, negli ultimi anni l'attenzione si è spostata verso i modelli di Deep Learning pre-addestrati su enormi quantità di testo. Modelli come BERT (Google), GPT-2, GPT-3 (OpenAI), e T5 (Google) hanno raggiunto risultati di riferimento in una serie di compiti di NLP.

Il futuro della NLP

È importante notare che la NLP è un campo in rapida evoluzione, con nuove tecniche e applicazioni che vengono sviluppate costantemente. Ad oggi, le applicazioni della NLP sono ampie e variegate, e includono la traduzione automatica, la generazione di testi, il riconoscimento vocale, i chatbot, l'analisi del sentimento nei social, l'estrazione di informazioni e molto altro ancora.

Tuttavia, nonostante i notevoli progressi, ci sono ancora sfide da affrontare nella NLP. La comprensione del contesto, l'ambiguità semantica e la gestione di lingue diverse sono solo alcuni degli ostacoli da superare. Gli esperti di NLP lavorano costantemente per migliorare le tecniche esistenti e affrontare queste sfide.

Il futuro della NLP sembra promettente. Si prevede che continuerà a svilupparsi e a integrarsi sempre di più nella nostra vita quotidiana. L'interazione uomo-macchina diventerà sempre più naturale, consentendo alle persone di comunicare con i computer e i dispositivi digitali in modo sempre più intuitivo e semplice.