스팸 분류기 학습하기
이제 SMS 데이터를 분류기 구축을 위해 준비했습니다. 구체적으로 다음을 수행했어요:
- 숫자와 문장 부호 제거
- 메시지를 단어(또는 "토큰")로 분할
- 불용어 제거
- 해싱 트릭 적용 및
- TF-IDF 표현으로 변환
다음으로 TF-IDF 데이터를 학습용과 테스트용으로 분할해야 합니다. 그런 다음 학습 데이터를 사용해 Logistic Regression 모델을 학습시키고, 마지막으로 테스트 데이터에서 모델 성능을 평가할 거예요.
데이터는 sms에 저장돼 있고, LogisticRegression는 이미 임포트되어 있습니다.
이 연습은 강의의 일부입니다
PySpark로 하는 Machine Learning
연습 안내
- 데이터를 4:1 비율로 학습/테스트 세트로 분할하세요. 재현 가능성을 위해 난수 시드를 13으로 설정하세요.
LogisticRegression객체를 생성하고 학습 데이터에 맞춰 학습시키세요.- 테스트 데이터에 대한 예측을 생성하세요.
- 예측 결과로 혼동 행렬을 만드세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# 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(____, ____).____().____()