CommencerCommencer gratuitement

Limiter vos variables

Comme vous l’avez constaté, utiliser CountVectorizer avec ses paramètres par défaut crée une variable pour chaque mot du corpus. Cela peut générer un nombre beaucoup trop important de variables, souvent avec très peu de valeur analytique.

Pour cela, CountVectorizer propose des paramètres permettant de réduire le nombre de variables :

  • min_df : n’utiliser que les mots présents dans plus de ce pourcentage de documents. Cela permet d’éliminer les mots extrêmes qui ne se généralisent pas d’un texte à l’autre.
  • max_df : n’utiliser que les mots présents dans moins de ce pourcentage de documents. Utile pour supprimer les mots très fréquents qui apparaissent dans tous les corpus sans apporter de valeur, comme « and » ou « the ».

Cet exercice fait partie du cours

Feature engineering pour le Machine Learning en Python

Afficher le cours

Instructions

  • Limitez le nombre de variables dans CountVectorizer en fixant le nombre minimal de documents dans lesquels un mot peut apparaître à 20 % et le maximum à 80 %.
  • Ajustez et appliquez le vectoriseur sur la colonne text_clean en une seule étape.
  • Convertissez ce tableau transformé (creux) en un tableau numpy de comptes.
  • Affichez les dimensions du nouveau tableau réduit.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Import CountVectorizer
from sklearn.feature_extraction.text import CountVectorizer

# Specify arguements to limit the number of features generated
cv = ____

# Fit, transform, and convert into array
cv_transformed = ____(speech_df['text_clean'])
cv_array = ____

# Print the array shape
print(____)
Modifier et exécuter le code