Antrenarea unui clasificator de spam
Datele SMS au fost pregătite pentru construirea unui clasificator. Iată ce s-a realizat până acum:
- s-au eliminat cifrele și semnele de punctuație
- mesajele au fost împărțite în cuvinte (sau „token-uri")
- s-au eliminat cuvintele de stop
- s-a aplicat tehnica de hashing și
- datele au fost convertite într-o reprezentare TF-IDF.
Următorul pas este să împarți datele TF-IDF în seturi de antrenament și de testare. Apoi vei folosi datele de antrenament pentru a antrena un model de Regresie Logistică și, în final, vei evalua performanța acestuia pe datele de testare.
Datele sunt stocate în sms, iar LogisticRegression a fost deja importat.
Acest exercițiu face parte din cursul
Machine Learning cu PySpark
Instrucțiuni pentru exercițiu
- Împarte datele în seturi de antrenament și de testare într-un raport de 4:1. Setează seed-ul generatorului de numere aleatoare la 13 pentru a asigura reproductibilitatea.
- Creează un obiect
LogisticRegressionși antrenează-l pe datele de antrenament. - Generează predicții pe datele de testare.
- Folosește predicțiile pentru a construi o matrice de confuzie.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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(____, ____).____().____()