CountVectorizer pour la classification de textes
Il est temps de commencer à construire votre classificateur de texte ! Les données ont été chargées dans un DataFrame appelé df
. Explorez-le dans le shell IPython pour étudier les colonnes que vous pouvez utiliser. La méthode .head()
est particulièrement instructive.
Dans cet exercice, vous utiliserez pandas
avec scikit-learn pour créer un vecteur de texte peu dense que vous pourrez utiliser pour former et tester un modèle supervisé simple. Pour commencer, vous allez configurer un site CountVectorizer
et étudier certaines de ses fonctions.
Cet exercice fait partie du cours
Introduction au traitement du langage naturel en Python
Instructions
- Importez
CountVectorizer
à partir desklearn.feature_extraction.text
ettrain_test_split
à partir desklearn.model_selection
. - Créez une série
y
à utiliser pour les étiquettes en attribuant l'attribut.label
dedf
ày
. - En utilisant
df["text"]
(caractéristiques) ety
(étiquettes), créez des ensembles de formation et de test à l'aide detrain_test_split()
. Utilisez untest_size
de0.33
et unrandom_state
de53
. - Créez un objet
CountVectorizer
appelécount_vectorizer
. Veillez à spécifier le mot-cléstop_words="english"
pour que les mots vides soient supprimés. - Ajustez et transformez les données d'apprentissage
X_train
en utilisant la méthode.fit_transform()
de votre objetCountVectorizer
. Faites de même avec les données de testX_test
, mais en utilisant la méthode.transform()
. - Imprimez les 10 premières caractéristiques du site
count_vectorizer
à l'aide de la 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])