Natural Language Processing (NLP)

Che cos'è e perché è importante

Il natural language processing (NLP), o elaborazione del linguaggio naturale, è una branca dell’intelligenza artificiale che aiuta i computer a capire, interpretare e manipolare il linguaggio umano. Il NLP attinge da molte discipline, tra cui l'informatica e la linguistica computazionale, e punta a colmare il divario tra la comunicazione umana e la comprensione del computer.

 

Evoluzione del natural language processing

Sebbene il natural language processing non sia una scienza nuova, la sua tecnologia sta rapidamente progredendo, grazie a un crescente interesse per le comunicazioni uomo-macchina, oltre alla disponibilità di big data, a una capacità di elaborazione superiore e ad algoritmi più avanzati.. 

In quanto esseri umani, siamo in grado di parlare e scrivere in inglese, spagnolo o cinese. Ma la lingua madre di un computer, nota come codice o linguaggio macchina, è del tutto incomprensibile alla maggior parte delle persone. La comunicazione nei nostri dispositivi di base non interviene con le parole, ma attraverso milioni di zeri e di uno, che producono azioni logiche.  

Per la verità, 70 anni fa i programmatori utilizzavano delle schede perforate per comunicare con i primi computer. Questo laborioso processo manuale era noto ad un numero piuttosto esiguo di persone. Oggi, invece, ci basta pronunciare la frase «Alexa, mi piace questa canzone», affinché un dispositivo per riprodurre musica in casa abbassi il volume e, imitando la voce umana, ci risponda «OK, valutazione salvata». Infine, lo stesso dispositivo adatterà il suo algoritmo per riprodurre quella canzone, e altre simili, la prossima volta che ascolterai musica. 

Guardiamo più da vicino questa interazione. Il dispositivo si è attivato dopo aver sentito la nostra voce, ha compreso l’intenzione implicita del nostro commento, ha eseguito un'azione e ha fornito un feedback, strutturandolo in una frase nella tua lingua, il tutto in circa cinque secondi. L'interazione completa è stata resa possibile dal NLP, insieme ad altri elementi di intelligenza artificiale, quali il machine learning e il deep learning. 

 

Ridurre i reclami dei clienti con il NLP

La Royal Bank of Scotland utilizza la text analyticsuna tecnica di NLP, per estrarre le tendenze principali dai feedback dei clienti, sotto forme diverse. La banca analizza i dati provenienti da e-mail, sondaggi e conversazioni con i call center, per identificare la cause principali dell'insoddisfazione dei clienti e introdurre miglioramenti. Guarda questo video e scopri in che modo gli analytics stanno trasformando la relazione con il cliente.

 

Perché il NLP è importante?

Grandi volumi di dati testuali

Il natural language processing aiuta i computer a comunicare con gli esseri umani nella propria lingua e a svolgere altre attività legate al linguaggio. Ad esempio, il NLP consente ai computer di leggere un testo, o ascoltare un discorso, d’interpretarlo, di misurare i sentimenti e, infine, d’identificarne le parti salienti.  

Le macchine di oggi possono analizzare un numero maggiore di dati linguistici rispetto all’uomo, senza sforzo e in maniera coerente e obiettiva. Considerando l'impressionante quantità di dati non strutturati generati ogni giorno, dalle cartelle cliniche ai post sui social media, l'automazione sarà fondamentale per eseguire un'analisi completa ed efficiente dei dati testuali e vocali.

Strutturare una fonte di dati non strutturata

Il linguaggio umano è sorprendentemente complesso e diversificato. Le nostre possibilità di espressione sono infinite, sia verbalmente che per iscritto. Non solo esistono centinaia di lingue e dialetti, ma per ogni lingua vige un insieme unico di regole grammaticali e sintattiche, termini ed espressioni gergali. Quando scriviamo, spesso commettiamo errori di ortografia, usiamo abbreviazioni, o omettiamo la punteggiatura. Quando parliamo, conserviamo il nostro accento regionale, a volte borbottiamo, balbettiamo o prendiamo in prestito termini da altre lingue.  

L’apprendimento supervisionato e non supervisionato – in particolare il deep learning –sono ora ampiamente utilizzati per modellare il linguaggio umano. Tuttavia, c'è anche bisogno di comprensione sintattica e semantica e di competenze di dominio, dato che queste non sono necessariamente presenti negli approcci di machine learning. Il NLP è importante perché contribuisce a risolvere le ambiguità linguistiche e fornisce ai dati una struttura numerica, utile per molte applicazioni, come ad esempio il riconoscimento vocale o la text analytics. 

Il NLP nel mondo di oggi

Scopri di più sul natural language processing nei diversi settori

Il futuro del NLP

In che modo le organizzazioni nel mondo utilizzano l'intelligenza artificiale e il NLP? Quali sono i tassi di adozione di queste tecnologie e cosa riserva loro il futuro? Quali sono i piani di budget e di distribuzione? Inoltre, quali sono i problemi aziendali risolvibili con gli algoritmi di NLP? Scopri le risposte a queste domande nel rapporto di TDWI.

Il potenziale non sfruttato del testo non strutturato

I pensieri, le ricerche, le opinioni, gli aneddoti e i feedback di utenti, consumatori, o clienti vengono trasferiti nel mondo virtuale attraverso i social media, i fascicoli di cause legali, le cartelle cliniche in formato elettronico, i registri dei call center, i reclami del servizio post-vendita e altro ancora. Il natural language processing aiuta a scoprire le informazioni utili nascoste in questo flusso di parole.

Cosa può fare la text analytics per la tua organizzazione

La text analytics, o analisi testuale, è un tipo di NLP che trasforma il testo in dati, per finalità di analisi. Scopri come le aziende nel settore bancario, dell’assistenza sanitaria e del Life Science, manifatturiero e governativo utilizzano la text analytics per ottimizzare la customer experience, ridurre le frodi e migliorare la società.

Come funziona il NLP?

Analisi delle principali componenti del linguaggio

Per l'interpretazione del linguaggio umano, il natural language processing si serve di molte tecniche differenti, che vanno dai metodi statistici e di machine learning ad approcci basati su regole e algoritmi. La molteplicità degli approcci è basilare, poiché i dati testuali e vocali variano notevolmente, così come le applicazioni pratiche. 

Le attività di base del NLP includono tokenizzazione e parsificazione (o analisi sintattica), lemmatizzazione (o individuazione della radice), part of speech tagging (o rilevamento di parti del discorso), riconoscimento della lingua e identificazione delle relazioni semantiche. Queste attività non sono dissimili dall’analisi logica e grammaticale che avrai certamente affrontato durante gli anni di scuola.  

In generale, le attività di NLP scompongono il linguaggio in brevi segmenti elementari, cercano di comprendere le relazioni che esistono tra di essi ed esaminano come questi si combinano per creare un significato.

Queste attività sottostanti vengono spesso utilizzate per funzionalità di NLP più complesse, come ad esempio:

  • Categorizzazione dei contenuti. Propone un riepilogo del documento basato sulla lingua, che include ricerca e indicizzazione, avvisi sui contenuti e rilevamento di duplicazioni.
  • Modellazione e scoperta automatica delle tematiche. Individua con accuratezza il significato e le tematiche in una raccolta di testi e applica ai contenuti gli advanced analytics, come ottimizzazione e previsione.
  • Estrazione contestuale. Estrae automaticamente informazioni strutturate a partire da fonti testuali.
  • Sentiment analysis. Identifica l'umore o le opinioni soggettive all'interno di grandi volumi di testi, compreso il sentimento medio e l'opinion mining. 
  • Conversione da voce a testo e da testo a voce. Trasforma comandi vocali in testo scritto e viceversa.  
  • Riepilogo del documento. Genera automaticamente sinossi da fonti testuali di grandi dimensioni.
  • Traduzione automatica. Traduce automaticamente un contenuto da una lingua all’altra, a partire da un testo scritto o da un input vocale.


In tutti questi casi, l'obiettivo fondamentale è prendere input linguistici grezzi e trasformare o arricchire il testo, utilizzando la linguistica e gli algoritmi, in modo da conferirgli maggior valore. 

Metodi e applicazioni del NLP

In che modo i computer danno un senso ai dati testuali

NLP e text analytics

Il natural language processing va di pari passo con la text analytics, che conta, raggruppa e categorizza le parole, per estrarre struttura e significato da grandi volumi di contenuti. La text analytics viene utilizzata per esplorare il contenuto testuale e derivare nuove variabili da un testo non elaborato, che possono essere successivamente visualizzate, filtrate o utilizzate come input per modelli predittivi o altri metodi statistici.

Il NLP e la text analytics sono utilizzati simultaneamente per molte applicazioni, tra cui:

  • Ricerche investigative. Identifica modelli e indizi nelle e-mail o nei rapporti scritti, per contribuire a rilevare e risolvere i crimini.
  • Competenza in materia. Classifica i contenuti in argomenti significativi, in modo da supportare le azioni e scoprire le tendenze.
  • Analisi dei social media. Monitora la sensibilità e il sentiment su argomenti specifici e identifica gli influencer chiave. 

Esempi di NLP nell’uso quotidiano 

Le applicazioni pratiche del NLP nella vita di tutti i giorni sono molteplici. Oltre alle conversazioni con assistenti virtuali quali Alexa o Siri, eccone alcune tra le più diffuse: 

  • Controllando le e-mail nella cartella spam, hai mai notato similitudini nelle righe dell'oggetto? Hai difronte un filtro antispam bayesiano, una tecnica statistica di NLP che confronta le parole nello spam con e-mail valide, per identificare la posta indesiderata.
  • Hai amai perso una telefonata e letto la trascrizione automatica del messaggio in segreteria nella tua casella di posta elettronica o nell’app per smartphone? Si tratta della conversione da voce a testo, una funzionalità di NLP.
  • Hai mai esplorato un sito web tramite la sua barra di ricerca integrata, o selezionando i tag suggeriti per argomento, entità o categoria? Allora, hai utilizzato i metodi di NLP per la ricerca, la modellazione di argomenti, l'estrazione di entità e la categorizzazione dei contenuti.

Un sottocampo del NLP chiamato natural language understanding (NLU), o comprensione del linguaggio naturale, sta guadagnando rapidamente terreno, grazie al suo potenziale nelle applicazioni cognitive e di IA. Il NLU va oltre la comprensione strutturale del linguaggio, allo scopo di interpretare l'intenzione, chiarire le parole, risolvere l'ambiguità del contesto e persino generare autonomamente un linguaggio umano ben strutturato. Gli algoritmi di NLU devono affrontare il problema estremamente complesso dell'interpretazione semantica, ovvero comprendere il significato tacito del linguaggio scritto o parlato, con tutte le sue sottigliezze, il contesto e le inferenze, che gli individui sono in grado di comprendere.

L'evoluzione del NLP verso il NLU ha molte importanti implicazioni, sia per le imprese che per i consumatori. Immagina la potenza di un algoritmo in grado di comprendere il significato e le sfumature del linguaggio umano in svariati contesti, dalla medicina, alla legge o a un’aula scolastica. Poiché i volumi di informazioni non strutturate continuano a crescere in modo esponenziale, trarremo un grosso beneficio dall'instancabile capacità dei computer di aiutarci a dare a tutto un senso.