CommencezCommencez gratuitement

Inspecter votre modèle

Maintenant que vous avez construit un classificateur de « fake news », vous allez examiner ce qu'il a appris. Vous pouvez faire correspondre les poids importants du vecteur à de vrais mots grâce à de simples techniques d'inspection.

Votre classificateur Naive Bayes avec tf-idf, performant, est disponible sous le nom nb_classifier, et les vecteurs sont dans tfidf_vectorizer.

Cette activité fait partie du cours

Introduction au traitement du langage naturel en Python

Voir le cours

Instructions de l’exercice

  • Enregistrez les étiquettes de classes dans class_labels en accédant à l'attribut .classes_ de nb_classifier.
  • Extrayez les caractéristiques à l'aide de la méthode .get_feature_names() de tfidf_vectorizer.
  • Créez un tableau zippé des coefficients du classificateur avec les noms de caractéristiques et triez-le selon les coefficients. Pour ce faire, utilisez d'abord zip() avec les arguments nb_classifier.coef_[0] et feature_names. Ensuite, appliquez sorted() sur ce résultat.
  • Affichez les 20 caractéristiques les mieux pondérées pour la première étiquette de class_labels et les 20 caractéristiques les moins pondérées pour la deuxième étiquette de class_labels. Ceci a été fait pour vous.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Get the class labels: class_labels
class_labels = ____

# Extract the features: feature_names
feature_names = ____

# Zip the feature names together with the coefficient array and sort by weights: feat_with_weights
feat_with_weights = ____(____(____, ____))

# Print the first class label and the top 20 feat_with_weights entries
print(class_labels[0], feat_with_weights[:20])

# Print the second class label and the bottom 20 feat_with_weights entries
print(class_labels[1], feat_with_weights[-20:])
Modifier et exécuter le code