Il Text Mining come fonte dati per il Data Mining 2017-11-06T12:18:03+00:00

Project Description

Obiettivo
L’obiettivo del project work, è creare nuova informazione con l’impiego della Sentiment Analysis e della Cluster Analysis sui testi estratti da Twitter: lo scopo è aumentare le variabili informative dei tweet al fine di creare database “arricchiti” e utili alla creazione di modelli classificativi.
Metodologia
Il project work è dedicato a metodologie di Data Analytics per l’analisi dei Textual Data.
I dati testuali utilizzati per il progetto sono stati estratti da Twitter su tre argomenti: l’insediamento del Presidente Donald Trump, il coinvolgimento del Regista Roman Polanski alla cerimonia dei premi Cèsar e la missione della sonda Juno verso Giove. La fase di raccolta dati è stata realizzata durante la seconda metà di gennaio 2017 con molteplici estrazioni, mediante l’utilizzo di Talend DI, per questo è stata necessaria una fase di Data Integration e Data Transformation al fine di poter creare su ciascuno dei tre argomenti i database per la fase di Text Analytics successiva. La metodologia di arricchimento di informazione è basata sul Text Mining svolto con RapidMiner.
La prima parte di nuova conoscenza è stata generata mediante la Sentiment Analysis sui tre database, in modo da assegnare ad ogni tweet il sentiment (positivo, neutro e negativo). La parte centrale di ricerca di nuova informazione riguarda la fase di Data Exploration sull’output della Sentiment Analysis di RapidMiner: l’analisi dei risultati ha consentito di determinare quali sono le parole da ritenere più importanti, ovvero più “influenti” nel determinare la polarity di un tweet.
Il metodo per la definizione delle parole “influenti” rappresenta il momento di ricerca del progetto: l’idea si basa sul concetto di word-count su un insieme di testi e sul concetto di importanza dei termini, entrambi da ricalare all’interno delle singole polarity.
La metodologia consiste nel separare un database di testi in gruppi per ciascuna polarity: ogni argomento è stato quindi suddiviso in tre sotto-db in modo da poter ricalcolare le word-count all’interno delle polarity.
Infine, per determinare quali parole sono da ritenere maggiormente “influenti” nel determinare il sentiment, è stato impiegato come indicatore di importanza dei termini, l’IDF, una parte dell’indice TF-IDF, ricalcolato nel modo seguente:

IDFNP = Log (NNP/nNP) dove NNP=Total Tweet NP e nNP =Document Occurency NP,.nel sotto-db con Negative Polar.

IDFPP = Log (NPP/nPP) dove NPP=Total Tweet PP e nPP=Document Occurency PP, nel sotto-db con Positive Polarity.

Aver ricalcolato le word-count all’interno delle tre polarity, infatti, consente di ricalcolare anche l’indicatore IDF di importanza all’interno delle polarity ed ottenere per ciascun argomento la lista delle parole “influenti”.
La seconda parte di creazione di nuova conoscenza per i tweet, è stata ottenuta mediante la Cluster Analysis, che, raggruppando i tweet in cluster, ha consentito di identificare di ogni argomento Trump, Polanski e Juno, i temi “nascosti” e da far emergere. Mediante la Data Exploration dell’output di RapidMiner, è emersa, infine, una relazione diretta tra la Sentiment Analysis e la Cluster Analysis: è stato possibile assegnare ad un cluster una polarity, in altri termini, i tweet che appartengono ad un cluster hanno, non solo un tema in comune, ma anche il medesimo sentiment.
Conclusione e sviluppi futuri
Il project work ha mostrato come il Text Mining sia fonte di generazione di nuova informazione utile a creare database “arricchiti” per il Data Mining. La Data Exploration eseguita sui tre database Trump, Polanski e Juno ha incrementato di nuove variabili l’estrazione originale dei tweet, variabili come il cluster di appartenenza, il sentiment, l’indice di polarity, la presenza di eventuali parole “influenti”. Per questo motivo è possibile intravedere uno sviluppo futuro rivolto al Data Mining per creare modelli classificativi dei tweet, cercare di capire, ad esempio, quali caratteristiche dovrebbe avere un tweet per aspirare al successo, oppure come e quali parole inserire nei testi per influenzare una platea verso una polarity positiva piuttosto che negativa, e ancora analizzare il rapporto tra successo di un tweet e sentiment (per scoprire su un determinato argomento, ad esempio, se un sentiment negativo ha maggior successo, in numero di retweet, di un sentiment positivo).

Project Details

Skills Needed: