Mettiamo tutto insieme

Sentiment Analysis con Python

Violeta Misheva

Data Scientist

Il problema della Sentiment Analysis

Sentiment analysis: capire l'opinione dell'autore su un argomento

  • Recensioni di film
  • Recensioni di prodotti Amazon
  • Sentiment delle compagnie aeree su Twitter
  • Vari esempi letterari a forte carica emotiva
Sentiment Analysis con Python

Esplorazione delle recensioni

  • Info di base sulla lunghezza delle recensioni
  • Word cloud
  • Feature sulla lunghezza: numero di parole, numero di frasi
  • Feature per rilevare la lingua di una recensione
Sentiment Analysis con Python

Trasformazioni numeriche delle colonne con sentiment

  • Bag-of-words
  • Vettorizzazione TfIdf
from sklearn.feature_extraction.text import CountVectorizer, TfidfVectorizer
# Sintassi del vettorizzatore
vect = CountVectorizer().fit(data.text_column)
X = vect.transform(data.text_column)
Sentiment Analysis con Python

Argomenti dei vettorizzatori

  • stop words: parole frequenti e poco informative
  • intervallo di n-gram: usa frasi, non solo singole parole
  • controlla la dimensione del vocabolario: max_features, max_df, min_df
  • cattura pattern di token: rimuovi cifre o certi caratteri

Importante ma NON argomenti dei vettorizzatori

  • lemmi e stem
Sentiment Analysis con Python

Modello di apprendimento supervisionato

  • Classificatore di regressione logistica per prevedere il sentiment
  • Valutato con accuracy e matrice di confusione
  • Importanza dello split train/test
Sentiment Analysis con Python

Esercitiamoci!

Sentiment Analysis con Python

Preparing Video For Download...