Training Naive Bayes with feature selection
You'll now re-run the Naive Bayes text classification model that you ran at the end of Chapter 3 with our selection choices from the previous exercise: the volunteer
dataset's title
and category_desc
columns.
This exercise is part of the course
Preprocessing for Machine Learning in Python
Exercise instructions
- Use
train_test_split()
on thefiltered_text
text vector, they
labels (which is thecategory_desc
labels), and pass they
set to thestratify
parameter, since we have an uneven class distribution. - Fit the
nb
Naive Bayes model toX_train
andy_train
. - Calculate the test set accuracy of
nb
.
Hands-on interactive exercise
Have a go at this exercise by completing this sample code.
# Split the dataset according to the class distribution of category_desc
X_train, X_test, y_train, y_test = ____(____.toarray(), ____, stratify=____, random_state=42)
# Fit the model to the training data
nb.____
# Print out the model's accuracy
print(nb.____)