CommencerCommencer gratuitement

CountVectorizer pour la classification de texte

Il est temps de commencer à construire votre classificateur de texte ! Les données ont été chargées dans un DataFrame nommé df. Explorez-les dans l’IPython Shell pour voir quelles colonnes vous pouvez utiliser. La méthode .head() est particulièrement utile.

Dans cet exercice, vous allez utiliser pandas avec scikit-learn pour créer un vectoriseur de texte creux que vous pourrez utiliser pour entraîner et tester un modèle supervisé simple. Pour commencer, vous allez configurer un CountVectorizer et examiner certaines de ses fonctionnalités.

Cet exercice fait partie du cours

Introduction au Natural Language Processing (NLP) en Python

Afficher le cours

Instructions

  • 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. Veillez à spécifier l’argument nommé stop_words="english" afin de supprimer 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 en utilisant 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 cet exemple de code.

# 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