Analisi del Sentimento sui Social Media
NLP

Analisi del Sentimento sui Social Media

Benchmark di modelli bag-of-words per il sentiment sul corpus IMDb

Dai conteggi di token agli indizi emotivi: una via rapida verso un sentiment affidabile.

Home/Ricerca/Analisi del Sentimento sui Social Media

Informazioni Progetto

Corso
Machine Learning
Autori
Andrea Alberti
Data
febbraio 2024
Pagine
5
Visualizza Codice

Tecnologie

PythonScikit-learnNLTKNumPyPandas

Abstract

Implementati classificatori di sentiment sul dataset IMDb (50k recensioni) confrontando Naive Bayes Multinomiale e Regressione Logistica. Sono stati analizzati dimensione del vocabolario, rimozione di stopword e stemming per bilanciare accuratezza e overfitting. Naive Bayes con stopword (vocabolario 1k) ha raggiunto l’82.6% sul test, mentre la Regressione Logistica è arrivata all’85.4% con tuning minimo.

Informazioni

Le recensioni sono tokenizzate con NLTK (minuscole, punteggiatura rimossa, stopword opzionali, stemming Porter opzionale). Si valutano vocabolari fino a 10k token; il punto ottimale è 1k token mantenendo le stopword, così da evitare overfitting mantenendo informazione. Il Naive Bayes Multinomiale apprende priori di classe e verosimiglianze delle parole tramite frequenze relative, mentre la Regressione Logistica è addestrata con discesa del gradiente (lr=0.0023, 1000 iterazioni) senza regolarizzazione. Le curve accuratezza-vocabolario mostrano rendimenti decrescenti e gap train-test crescenti oltre i 5k token. L’analisi dell’importanza delle parole classifica “superb”, “fantastic” e “waste” come marcatori decisivi. L’ispezione dei peggiori errori evidenzia recensioni ambigue (sarcasmo, riassunti della trama).

Risultati Chiave

85.4%
Accuracy
82.6%
MNB Accuracy
85.4%
LR Accuracy
1000 words
Best Vocabulary

Scoperte Principali

  • Il Naive Bayes Multinomiale con stopword e vocabolario da 1.000 token ha ottenuto l’82.6% di accuratezza sul test (82.0% sul train).
  • Rimuovere le stopword ha ridotto l’accuratezza al 81.6% (−1.0 pp), mentre applicare lo stemming di Porter l’ha portata al 81.7%.
  • La Regressione Logistica (tol 1e-4, lr 0.0023) ha raggiunto l’85.4% sul test e l’86.7% sul train senza regolarizzazione.
  • Le parole più impattanti includono “superb”, “wonderful”, “fantastic” (Δlog fino a +1.737) e “waste”, “pointless”, “worst” (Δlog fino a −2.601).

Metodologia

IMDb reviews were tokenised (lowercase, punctuation removed) while experimenting with stopword removal and Porter stemming; vocabularies from 500 to 10k tokens were evaluated by training Multinomial Naive Bayes and Logistic Regression (lr=0.0023, 1000 iterations) to study accuracy and overfitting.
Analisi del Sentimento sui Social Media | Andrea Alberti | Andrea Alberti