CommencezCommencez gratuitement

CountVectorizer pour la classification de texte

Il est temps de commencer à bâtir votre classificateur de texte! Les données ont été chargées dans un DataFrame appelé df. Explorez-le dans l'interpréteur IPython pour voir quelles colonnes vous pouvez utiliser. La méthode .head() est particulièrement parlante.

Dans cet exercice, vous utiliserez pandas avec scikit-learn pour créer un vecteuriseur de texte creux que vous pourrez employer pour entraîner et tester un modèle supervisé simple. Pour commencer, vous configurerez un CountVectorizer et examinerez certaines de ses fonctionnalités.

Cette activité fait partie du cours

Introduction au traitement du langage naturel en Python

Voir le cours

Instructions de l’exercice

  • Importez CountVectorizer depuis sklearn.feature_extraction.text et train_test_split depuis sklearn.model_selection.
  • Créez une Series y à utiliser comme étiquettes en assignant l'attribut .label de df à y.
  • En utilisant df["text"] (caractéristiques) et y (étiquettes), créez les ensembles d'entraînement et de test avec train_test_split(). Utilisez un test_size de 0.33 et un random_state de 53.
  • Créez un objet CountVectorizer appelé count_vectorizer. Assurez-vous d'indiquer l'argument nommé stop_words="english" afin de retirer les mots vides.
  • Ajustez et transformez les données d'entraînement X_train à l'aide de la méthode .fit_transform() de votre objet CountVectorizer. Faites de même avec les données de test X_test, mais avec la méthode .transform().
  • Affichez les 10 premières caractéristiques de count_vectorizer avec sa méthode .get_feature_names().

Exercice interactif pratique

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

# Import the necessary modules
____
____

# Print the head of df
print(df.head())

# Create a series to store the labels: y
y = ____

# Create training and test sets
X_train, X_test, y_train, y_test = ____

# Initialize a CountVectorizer object: count_vectorizer
count_vectorizer = ____

# Transform the training data using only the 'text' column values: count_train 
count_train = ____

# Transform the test data using only the 'text' column values: count_test 
count_test = ____

# Print the first 10 features of the count_vectorizer
print(____[:10])
Modifier et exécuter le code