Améliorer votre modèle
Votre tâche dans cet exercice est de tester quelques niveaux d'alpha différents en utilisant les vecteurs Tfidf pour déterminer s'il existe une combinaison plus performante.
Les ensembles d'entraînement et de test ont été créés, et tfidf_vectorizer, tfidf_train et tfidf_test ont été calculés.
Cette activité fait partie du cours
Introduction au traitement du langage naturel en Python
Instructions de l’exercice
- Créez une liste d'alphas à essayer à l'aide de
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 classificateur
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 le score de justesse (accuracy).
- Instancier un classificateur
- En utilisant une boucle
for, affichezalpha,scoreet une ligne vide 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 ce code d’exemple.
# 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()