CrowdPulse un Sistema Reattivo ed Estendibile per Estrazione e Analisi di Contenuti Sociali Tesi in Accesso Intelligente all’Informazione ed Elaborazione del Linguaggio Naturale Relatori: Prof. Giovanni SEMERARO Prof. Cataldo MUSTO Laureando: Francesco PONTILLO Matricola 600119
Grafo hub-and-spoke fra profili Hashtag -> argomenti facebook 1.55B utenti attivi/mese 1.01B utenti attivi/giorno Grafo di peer fra profili Appartenenza a gruppi Espressioni di “like” per pagine Social Network: quanti dati? (2006)1 (2004)2 1 https://blog.twitter.com/2014/the-2014-yearontwitter 2 http://newsroom.fb.com/company-info/ 00010
REALE URBAN PROFILING User engagement Reazioni ad annunci Sondaggi su prodotti Tagging semantico Categorizzazioni Wikipedia Notizie dal mondo Sondaggi politici Eventi sportivi, musicali Hot triggers Localizzazione utenti Sentiment generale In tempo reale o meno Costruzione HateMap Rilevamento problematiche Topic di interesse attuale 00011
Facilmente estendibile per qualsiasi contenuto Può profilare le utenze • Singolarmente • In un grafo di “amicizie” Gestisce la geo-localizzazione(accurata e approssimata) Orientato all’analisi testuale e semantica • Tokenization, lemmatization • Tagging, categorizzazione Passi altamente parametrizzabili Soddisfa tutti i requisiti di business visti in precedenza (e altri ancora)! 00101
un plugin non comporta la ri-compilazione del sistema • Compilazione nuovo plugin • Aggiunta al classpath Flussi di dati fra nodi (RxJava)3 4 • Messaggi • Profili Configurabile: passi come nodi di un grafo (JSON) Estrazione messaggi Profilazione utenti Tagging Estrazione Profilazione utenti Persistenza su disco Localizzazione utenti Tagging semantico Stampa messaggi
longitudine, latitudine, raggio (km) from/to/references autore, destinatario, utenti citati language/locale lingua e locale del messaggio geo: 16.866667, 41.125278, 20km lang: it since: 2015- 12-10 query: bari since/until range di date
SENTIT SENTIWORDNET Italiano e inglese Associazione di score a lemmi singoli Calcolo dello score totale del messaggio 5 UNIBA at EVALITA 2014-SENTIPOLC Task: Predicting tweet sentiment polarity combining micro-blogging, lexicon and semantic features (Basile, Novielli) (TRAMITE MULTIWORDNET) Italiano Fortemente orientato ai tweet
PARAMETRIZZATE Omofobia Sessismo Islamofobia Xenofobia Offese verso disabili Antisemitismo PERIODO DI ESECUZIONE Dal 20 agosto 2015 Al 24 settembre 2015 SESSISMO 503,626 ISLAMOFOBIA 295,712 OFFESE A DISABILI 103,929 ANTISEMITISMO 32,652 XENOFOBIA 30,012 15,054 OMOFOBIA TOTALE 980,985
dell’esecuzione di ~7 ore (stop manuale) Paris #fusillade RISULTATI 283,133 QUERY DI RICERCA RANGE TEMPORALE 2015-11-13 23:27:38 UTC 2015-11-14 00:17:35 UTC circa 50 minuti di informazioni circa 95 tweet al secondo
non filtrati Posticipare le decisioni sulle analisi GESTIONE DELLA BACKPRESSURE Performance stabili nel tempo Analisi nell’ordine di MILIONI DI MESSAGGI No crash improvvisi, errori controllati MODULARITÀ ED ESTENDIBILITÀ Aggiunta PLUGIN semplice e guidata Nessuna necessità di ricompilazione Testabilità in isolamento per ogni plugin CONFIGURABILITÀ Grafo di plugin definibile a compile-time Grafo di plugin come JSON a runtime CONFRONTI Più plugin per uno stesso compito STATISTICHE generate per ogni plugin
DATI RELAZIONALE Miglioramento dei parametri di configurazione “default” UNIT TEST di tutti i moduli (~80% code coverage) Autenticazione e autorizzazione per applicativo Web Sperimentazione tramite esecuzioni su SISTEMI CLOUD Analisi oltre il testo audio foto (riconoscimento entità) video CONFRONTO con altri recenti sistemi Google TensorFlow Google Cloud DataFlow 10101