3. Social media oggi…
Monthly Active Users
All Users
330 Million
Tweets per day
All Users
500 Million
Monthly Active Users
All Users
1 940 Million
Daily Active Users
All Users
1 280 Million
Twitter Facebook
5. Social media mining è il procedimento che permette di
estrarre informazioni utili dai social media
6. La Sentiment Analysis:
•è l’analisi computazionale di sentimenti e opinioni
espressi in Rete
•è uno strumento di indagine che consente di
classificare le emozioni contenute in un testo
7. La Sentiment Analysis determina:
• la polarità, ovvero l’orientamento dell’opinione sia essa
positiva, negativa o neutra
• l’intensità di tale opinione
• l’emotività con cui questa è espressa (attraverso l’uso di
aggettivi, punteggiatura, emoticons, ecc) e la rilevanza
dell’oggetto d’analisi rispetto al contesto.
8. A che domande può rispondere
la Sentiment Analysis?
Film: Questa recensione è positiva o negativa?
Prodotto: Che cosa pensano i consumatori del nuovo iPhone?
Sentimento
pubblico:
Qual è l’indice di fiducia del consumatore?
Politica: Che cosa pensano di questo candidato o questo problema?
Previsione: Previsione delle elezioni o dell’andamento di mercato
10. Approccio lessicale
•Utilizzo di un dizionario con informazioni riguardanti la
positività/negatività di parole o frasi.
•La polarità di un testo viene determinata in base alla
polarità dei termini che lo compongono
•Pro: nessun addestramento richiesto
•Contro: basati sulla coerenza del lessico
11. Biblioteca SentiWordNet
• Stefano Baccianella, Andrea
Esuli, and Fabrizio Sebastiani
• Istituto di Scienza e Tecnologie
dell’Informazione Consiglio
Nazionale delle Ricerche
• http://sentiwordnet.isti.cnr.it/
• Tutte le parole WORDNET sono
annotate verso “positivity”,
“negativity” and “neutrality”
13. Approccio Machine Learning - Naive Bayes
•Partendo da esempi pre-etichettati, si addestra un
classificatore in grado di predire la polarità di un testo
precedentemente non noto
•Pro: più performanti rispetto agli approcci lessicali
•Contro: lunghi tempi di addestramento; necessaria
un’etichettatura manuale
14. Approccio Machine Learning - Naive Bayes
Allenamento
del
classificatore
Train
Prova
Test
Risultato
Get Sentiment
15. Allenamento del classificatore (TRAIN)
Rimuovi le
Stop Words
Etichetta è
positiva?
Calcola la
probabilità
Metti nel
Pickle File
YES
Calcola la
probabilità
Metti nel
Pickle File
NO
𝑃 𝑤 𝑐 =
𝑃(𝑤 ∩ 𝑐)
𝑃(𝑐)
Formula di Bayes:
W – parola
C – giudizio/sentimento
16. Prova del classificatore (TEST) e risultato
Input Test
Data
C’è nel
Pickle File?
Prendi la
probabilità
YES
Calcola la
probabilità
Sommare le probabilità per ogni parola
NO
Il risultato
è positivo?
Positivo
YES
Negativo
NO
(TRAIN)
17. Esempio:
Analisi della polarità delle parole dal sito IMDB
PoXs, Christopher. 2011. On the negativity of negation. SALT 20, 636-659.
22. iHappy 2015: la felicità degli italiani, città per città
(e minuto per minuto)
20 MARZO 2016 | di Voices from the Blogs
23. Sentiment Analysis
of Tweets to Gain
Insights
into the 2016 US
Election
by Tim Hamling, Ankur Agrawal
Department of Computer Science,
Manhattan College, New York
24. Sentiment Analysis in Phyton
con tweepy e textblob
32,9
6,4
60,7
SA for “FIFA Russia
2018” based on 1000
tweets
Positivo
Negativo
Neutro