IniziaInizia gratis

Addestrare un classificatore di spam

I dati degli SMS sono ora pronti per costruire un classificatore. In particolare, hai:

  • rimosso numeri e punteggiatura
  • diviso i messaggi in parole (o "token")
  • rimosso le stop word
  • applicato l'hashing trick e
  • convertito in una rappresentazione TF-IDF.

Ora dovrai dividere i dati TF-IDF in insiemi di training e di testing. Poi userai i dati di training per adattare un modello di Logistic Regression e, infine, valuterai le prestazioni di quel modello sui dati di testing.

I dati sono memorizzati in sms e LogisticRegression è già stata importata per te.

Questo esercizio fa parte del corso

Machine Learning con PySpark

Visualizza il corso

Istruzioni dell'esercizio

  • Suddividi i dati in insiemi di training e di testing con un rapporto 4:1. Imposta il seed del generatore di numeri casuali a 13 per garantire la ripetibilità.
  • Crea un oggetto LogisticRegression e adattalo ai dati di training.
  • Genera le predizioni sui dati di testing.
  • Usa le predizioni per costruire una matrice di confusione.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Split the data into training and testing sets
sms_train, sms_test = sms.____(____, ____)

# Fit a Logistic Regression model to the training data
logistic = ____(regParam=0.2).____(____)

# Make predictions on the testing data
prediction = logistic.____(____)

# Create a confusion matrix, comparing predictions to known labels
prediction.groupBy(____, ____).____().____()
Modifica ed esegui il codice