IniziaInizia gratis

Metriche di performance sui dati di Twitter

Allenerai un modello di regressione logistica che predice il sentiment dei tweet e ne valuterai le performance sul set di test usando metriche diverse.

È già stata creata per te una matrice X. Contiene le feature ottenute con un BOW sulla colonna text.

Le etichette sono salvate in un vettore chiamato y. Il vettore y vale 0 per i tweet negativi, 1 per quelli neutrali e 2 per quelli positivi. Nota che, anche se abbiamo 3 classi, si tratta comunque di un problema di classificazione. L’accuracy misura sempre la proporzione di istanze previste correttamente. Ora la matrice di confusione sarà di dimensione 3x3: ogni riga darà il numero di casi previsti per le classi 2, 1 e 0, e ogni colonna il numero reale di casi nelle classi 2, 1 e 0.

Tutti i pacchetti necessari sono già stati importati per te.

Questo esercizio fa parte del corso

Sentiment Analysis con Python

Visualizza il corso

Istruzioni dell'esercizio

  • Esegui lo split train/test e applica stratify con y.
  • Allena un classificatore di regressione logistica.
  • Predici le performance sul set di test.
  • Stampa l’accuracy e la matrice di confusione ottenute sul set di test.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Split the data into training and testing sets
X_train, X_test, y_train, y_test = ____(X, y, test_size=0.3, random_state=123, ____=y)

# Train a logistic regression
log_reg = ____.____(___, ____)

# Make predictions on the test set
y_predicted = log_reg.____(___)

# Print the performance metrics
print('Accuracy score test set: ', ____(y_test, y_predicted))
print('Confusion matrix test set: \n', ____(y_test, y_predicted)/len(y_test))
Modifica ed esegui il codice