Introduction au stemming et à la complétion des racines de mots
Un autre prétraitement utile concerne le « word-stemming » (réduction des mots à leur racine) et la « complétion de racine ». Le stemming permet d'uniformiser les mots entre les documents. Par exemple, la racine de « computational », « computers » et « computation » est « comput ». Comme « comput » n'est pas un mot réel, on souhaite reconstruire des mots reconnus pour que « computational », « computers » et « computation » renvoient tous à un terme lisible, par exemple « computer ». Cette étape de reconstruction s'appelle la complétion de racine.
Le paquet tm fournit la fonction stemDocument() pour obtenir la racine d'un mot. Cette fonction accepte soit un vecteur de caractères et renvoie un vecteur de caractères, soit un PlainTextDocument et renvoie un PlainTextDocument.
Par exemple,
stemDocument(c("computational", "computers", "computation"))
renvoie "comput" "comput" "comput".
Vous utiliserez stemCompletion() pour reconstruire ces racines en un terme connu. stemCompletion() accepte un vecteur de caractères et un dictionnaire de complétion. Le dictionnaire peut être un vecteur de caractères ou un objet Corpus. Dans tous les cas, pour notre exemple, le dictionnaire devrait contenir le mot « computer » afin que toutes les occurrences de « comput » puissent être reconstruites.
Cette activité fait partie du cours
Extraction de texte avec sac de mots en R
Instructions de l’exercice
- Créez un vecteur nommé
complicatecontenant, dans cet ordre, les mots « complicated », « complication » et « complicatedly ». - Enregistrez la version réduite à la racine de
complicatedans un objet appeléstem_doc. - Créez
comp_dictqui contient un seul mot, « complicate ». - Créez
complete_texten appliquantstemCompletion()àstem_doc. Recomposez les mots en utilisantcomp_dictcomme corpus de référence. - Affichez
complete_textdans la console.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Create complicate
complicate <- ___
# Perform word stemming: stem_doc
stem_doc <- ___
# Create the completion dictionary: comp_dict
comp_dict <- ___
# Perform stem completion: complete_text
complete_text <- ___
# Print complete_text
complete_text