Améliorer votre modèle
Votre tâche dans cet exercice est de tester plusieurs valeurs d’alpha à l’aide des vecteurs Tfidf afin de déterminer s’il existe une combinaison plus performante.
Les jeux d’entraînement et de test ont été créés, et tfidf_vectorizer, tfidf_train et tfidf_test ont été calculés.
Cet exercice fait partie du cours
Introduction au Natural Language Processing (NLP) en Python
Instructions
- Créez une liste de valeurs d’alpha à tester avec
np.arange(). Les valeurs doivent aller de0à1par pas de0.1. - Créez une fonction
train_and_predict()qui prend un argument :alpha. La fonction doit :- Instancier un classifieur
MultinomialNBavecalpha=alpha. - L’entraîner sur les données d’entraînement.
- Calculer les prédictions sur les données de test.
- Calculer et retourner la précision (accuracy).
- Instancier un classifieur
- À l’aide d’une boucle
for, affichezalpha,scoreet une nouvelle ligne entre les deux. Utilisez votre fonctiontrain_and_predict()pour calculer lescore. Le score varie-t-il avec alpha ? Quel est le meilleur alpha ?
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Create the list of alphas: alphas
alphas = ____
# Define train_and_predict()
def ____(____):
# Instantiate the classifier: nb_classifier
nb_classifier = ____
# Fit to the training data
____
# Predict the labels: pred
pred = ____
# Compute accuracy: score
score = ____
return score
# Iterate over the alphas and print the corresponding score
for alpha in alphas:
print('Alpha: ', alpha)
print('Score: ', ____)
print()