Il Text Mining è una tecnica di Intelligenza Artificiale (AI) che utilizza l'elaborazione del linguaggio naturale (NLP) per trasformare il testo libero, non strutturato, di documenti/database quali pagine web, articoli di giornale, e-mail, agenzie di stampa, post/commenti sui social media ecc. in dati strutturati e normalizzati.

Lo scopo finale è quello di classificare una sorta di polarità che i soggetti dimostrano nei confronti di un argomento attraverso la creazione di un indice che associa numeri da “completamente positivo” a “completamente negativo”, passando per valori intermedi i quali rispecchiano la neutralità che un soggetto assume rispetto al tema.

Questi rappresentano già informazione ovvero fatti, relazioni e asserzioni che possono essere direttamente fruibili attraverso opportune rappresentazioni tabellari, grafici, mappe mentali ecc. oppure possono essere integrati in database, data warehouse o dashboard di business intelligence e utilizzati per analisi descrittive, predittive e prescrittive.

L’intero processo può essere totalmente di tipo data driven laddove si implementino ad esempio soluzioni in grado di acquisire e analizzare i dati in tempo reale, generando, ad esempio attraverso algoritmi di Machine Learning (ML), output in grado di comprendere se non addirittura anticipare problematiche e comportamenti, bisogni e tendenze. 

Scopi principali del Text Mining sono:

  • individuare i principali gruppi tematici
  • classificare i documenti in categorie predefinite
  • scoprire associazioni nascoste (legami tra argomenti, o tra autori, trend temporali, ...)
  • estrarre informazioni specifiche (es: nomi di geni, nomi di aziende, ...)
  • addestrare motori di ricerca
  • estrarre concetti per la creazione di ontologie (ontology learning).

Un processo di Text Mining si struttura generalmente in tre fasi:

  • indicizzazione
  • mining
  • valutazione.

Nella fase di indicizzazione viene effettuata la parte di analisi linguistica e tutto ciò che serve per arrivare ad una rappresentazione vettoriale del documento. In particolare l'identificazione (POS tagging) e la selezione dei termini, la lemmatizzazione, la ponderazione, la definizione delle stop-words, l'eventuale riduzione di dimensionalità, l'integrazione con eventuale meta-informazione.

Ai documenti così trasformati, nella fase di "mining" viene applicato un algoritmo di Data Mining specifico per l'obiettivo da raggiungere: un algoritmo di clustering per il raggruppamento tematico, un algoritmo di machine learning per la classificazione automatica, ecc.

Infine la fase di valutazione consiste nel calcolo di misure di efficacia e/o nell'interpretazione dei risultati ottenuti.

Una particolare applicazione di Text Mining è quella che prende il nome di Sentiment Analysis, un complesso processo di analisi che nella fase di “mining” attraverso algoritmi di linguistica computazionale consente di identificare ed estrarre informazioni soggettive dalle diverse fonti testuali ovvero opinioni ed emozioni in esse descritte. L’AI che guida la Sentiment Analysis è in grado di ascoltare (ed elaborare) i feedback emotivi che vengono forniti in modo spontaneo attraverso la scrittura di testi su web, post/commenti social quali Facebook, Twitter, ecc. ma anche recensioni scritte su blog o siti aggregatori. Si tratta di informazioni preziosissime perché per loro natura rispecchiano le reali aspettative e gli stati d’animo di chi scrive.

Lo scopo finale è quello di classificare una sorta di polarità che i soggetti dimostrano nei confronti di un argomento attraverso la creazione di un indice che associa numeri da “completamente positivo” a “completamente negativo”, passando per valori intermedi i quali rispecchiano la neutralità che un soggetto assume rispetto al tema.

Nata in ambito marketing per valutare la reputazione di un determinato brand in tempi più rapidi rispetto le classiche ricerche di mercato trova ora applicazione in diversi ambiti che spaziano dalla visione politica allo stato emotivo che genera un fenomeno sociale fino ad arrivare ad essere di supporto nelle previsioni di politica economico monetaria. Può quindi essere di supporto nell’acquisto di beni (si pensi ai commenti/recensioni su siti quali Amazon ed E-Bay) di servizi turistici (si pensi ai suggerimenti di viaggio derivabili dalle recensioni di Tripadvisor, Booking, ecc.) di servizi culturali (valutazioni di atenei e/o altre tipologie di scuole) di servizi alla persona (scelta di un medico o di una intera struttura medica in base ai feedback ricavati da specifici blog). Recentemente è stata utilizzata dall’Istat per produrre statistiche ufficiali, seppur sperimentali, attraverso il ‘Social Mood on Economy Index’, una statistica sperimentale che misura il “sentiment italiano sull’economia, basato sulle interazioni via Twitter”. Ma anche Banca d’Italia [1] e altre Banche Centrali Europee (e non) la stanno impiegando per “prevedere” gli indicatori di stabilità politico monetaria fino ad ora studiati attraverso complessi modelli econometrici.

Approfondimenti

Note

[1] Banca d’Italia - Workshop on Big Data & Machine Learning Applications for Central Banks - Roma 21-22 Ottobre 2019