Mise en pratique du prétraitement de texte
À vous d’appliquer les techniques vues pour nettoyer du texte et obtenir de meilleurs résultats en NLP. Vous devrez supprimer les stop words et les caractères non alphabétiques, lemmatiser, puis effectuer un nouveau bag-of-words sur votre texte nettoyé.
Vous partez des mêmes jetons créés dans l’exercice précédent : lower_tokens. La classe Counter est également importée.
Cet exercice fait partie du cours
Introduction au Natural Language Processing (NLP) en Python
Instructions
- Importez la classe
WordNetLemmatizerdepuisnltk.stem. - Créez une liste
alpha_onlyqui contient uniquement des caractères alphabétiques. Vous pouvez utiliser la méthode.isalpha()pour le vérifier. - Créez une autre liste appelée
no_stopscomposée des mots dealpha_onlyqui ne sont pas présents dansenglish_stops. - Initialisez un objet
WordNetLemmatizerappeléwordnet_lemmatizeret utilisez sa méthode.lemmatize()sur les jetons deno_stopspour créer une nouvelle liste appeléelemmatized. - Créez un nouveau
Counterappelébowavec les mots lemmatisés. - Enfin, affichez les 10 jetons les plus fréquents.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Import WordNetLemmatizer
____
# Retain alphabetic words: alpha_only
alpha_only = [t for t in ____ if ____]
# Remove all stop words: no_stops
no_stops = [t for t in ____ if t not in ____]
# Instantiate the WordNetLemmatizer
wordnet_lemmatizer = ____
# Lemmatize all tokens into a new list: lemmatized
lemmatized = [____ for t in ____]
# Create the bag-of-words: bow
bow = ____(____)
# Print the 10 most common tokens
print(____.____(__))