Formation d'un classificateur de spam
Les données SMS ont maintenant été préparées pour la création d'un classificateur. Concrètement, voici ce que vous avez fait :
- Suppression des chiffres et des signes de ponctuation
- diviser les messages en mots (ou « tokens »)
- mots vides supprimés
- appliqué la technique de hachage et
- convertis en une représentation TF-IDF.
Ensuite, vous devrez diviser les données TF-IDF en ensembles d'entraînement et de test. Ensuite, vous utiliserez les données d'entraînement pour ajuster un modèle de régression logistique et enfin évaluer les performances de ce modèle sur les données de test.
Les données sont stockées dans sms
et LogisticRegression
a été importé pour vous.
Cet exercice fait partie du cours
Apprentissage automatique avec PySpark
Instructions
- Divisez les données en ensembles d'entraînement et de test dans un rapport de 4:1. Veuillez définir la valeur initiale du générateur de nombres aléatoires sur 13 afin de garantir la répétabilité.
- Créez un objet «
LogisticRegression
» et adaptez-le aux données d'apprentissage. - Générer des prédictions sur les données de test.
- Utilisez les prédictions pour créer une matrice de confusion.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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(____, ____).____().____()