Treinamento de um classificador de spam
Os dados do SMS foram preparados para a criação de um classificador. Especificamente, foi isso que você fez:
- removeram números e pontuação
- dividir as mensagens em palavras (ou "tokens")
- palavras de parada removidas
- aplicou o truque de hashing e
- convertido em uma representação TF-IDF.
Em seguida, você precisará dividir os dados de TF-IDF em conjuntos de treinamento e teste. Em seguida, você usará os dados de treinamento para ajustar um modelo de regressão logística e, por fim, avaliará o desempenho desse modelo nos dados de teste.
Os dados são armazenados em sms
e LogisticRegression
foi importado para você.
Este exercício faz parte do curso
Aprendizado de máquina com PySpark
Instruções de exercício
- Divida os dados em conjuntos de treinamento e teste em uma proporção de 4:1. Defina a semente do número aleatório como 13 para garantir a repetibilidade.
- Crie um objeto
LogisticRegression
e ajuste-o aos dados de treinamento. - Gerar previsões sobre os dados de teste.
- Use as previsões para formar uma matriz de confusão.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# 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(____, ____).____().____()