Prevediamo il sentiment!

Sentiment Analysis con Python

Violeta Misheva

Data Scientist

Problemi di classificazione

  • Recensioni di prodotti e film: sentiment positivo o negativo (classificazione binaria)
  • Tweet sulle compagnie aeree: positivo, neutro e negativo (classificazione multiclasse)
Sentiment Analysis con Python

Regressioni lineare e logistica

un grafico con una regressione lineare (a sinistra) adattata a pochi valori, e una regressione logistica (a destra) sugli stessi valori

Sentiment Analysis con Python

Funzione logistica

  • Regressione lineare: esito numerico
  • Regressione logistica: probabilità:

$$ Probability(sentiment=positive|review) $$

un grafico che mostra una funzione logistica (sigmoide) adattata ad alcuni esempi

Sentiment Analysis con Python

Regressione logistica in Python

from sklearn.linear_model import LogisticRegression
log_reg = LogisticRegression().fit(X, y)
Sentiment Analysis con Python

Valutare le prestazioni del modello

Accuracy: frazione di previsioni corrette del modello.

  • Più l'accuracy è alta e vicina a 1, meglio è
# Accuracy usando score
score = log_reg.score(X, y)
print(score)
0.9009
Sentiment Analysis con Python

Usare accuracy_score

# Accuracy usando accuracy_score
from sklearn.metrics import accuracy_score
y_predicted = log_reg.predict(X)
acurracy = accuracy_score(y, y_predicted)
0.9009
Sentiment Analysis con Python

Esercitiamoci!

Sentiment Analysis con Python

Preparing Video For Download...