Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Étiquetage des Parties du Discours | Racine et Lemmatisation
Introduction au TALN

bookÉtiquetage des Parties du Discours

Compréhension de l'étiquetage des parties du discours

Nous avons mentionné que l'étiquetage des parties du discours est bénéfique pour la lemmatisation, ce qui constitue son rôle principal dans le prétraitement du texte. Examinons donc ce processus plus en détail.

Note
Définition

L'étiquetage des parties du discours (POS) est le processus qui consiste à annoter un mot dans un texte (corpus) comme correspondant à une partie du discours particulière (par exemple, nom ou verbe), en se basant à la fois sur sa définition et sur son contexte — c'est-à-dire sa relation avec les mots adjacents et apparentés dans une phrase, une proposition ou un paragraphe.

L'utilisation des noms complets des parties du discours (par exemple, « verbe » ou « nom ») peut devenir assez lourde, en particulier avec un grand corpus. C'est pourquoi des représentations abrégées, appelées étiquettes, sont utilisées à la place. Par exemple, « VB » au lieu de verbe. En pratique, cependant, différents étiqueteurs POS peuvent utiliser des étiquettes légèrement différentes et des étiquettes plus détaillées comme « VBD » pour verbes au passé.

Étiquetage des parties du discours avec NLTK

Pour effectuer l'étiquetage des parties du discours avec NLTK, il convient d'importer directement la fonction pos_tag() depuis nltk et de l'appliquer à la liste de chaînes de caractères (tokens) en la passant en argument.

123456789101112
from nltk.tokenize import word_tokenize from nltk import pos_tag import nltk nltk.download('punkt_tab') # Download the model needed for NLTK's POS tagging nltk.download('averaged_perceptron_tagger_eng') text = "One of the key NLP tasks is part of speech tagging" text = text.lower() tokens = word_tokenize(text) # Perform POS tagging tagged_tokens = pos_tag(tokens) print(tagged_tokens)
copy

Cette fonction retourne une liste de tuples, chacun contenant un token et son étiquette. La ligne nltk.download('averaged_perceptron_tagger_eng') lance le téléchargement du jeu de données et des modèles nécessaires pour le PerceptronTagger, qui est l'étiqueteur de parties du discours par défaut utilisé par NLTK.

Note
Approfondir

Ce tagueur est basé sur le modèle du perceptron moyenné, un algorithme d'apprentissage supervisé efficace pour le traitement de texte à grande échelle, y compris l'étiquetage des parties du discours (POS). Le PerceptronTagger est choisi pour son équilibre entre rapidité et précision, ce qui le rend adapté à un large éventail de tâches de TAL nécessitant un étiquetage POS. Il apprend les poids des caractéristiques à partir des données d'entraînement fournies, et utilise ces poids pour prédire les étiquettes POS dans des textes inconnus.

Pour une meilleure représentation visuelle, il est possible de convertir le résultat en un DataFrame pandas :

1234567891011121314
from nltk.tokenize import word_tokenize from nltk import pos_tag import nltk import pandas as pd nltk.download('punkt_tab') # Download the model needed for NLTK's POS tagging nltk.download('averaged_perceptron_tagger_eng') text = "One of the key NLP tasks is part of speech tagging" text = text.lower() tokens = word_tokenize(text) # Perform POS tagging tagged_tokens = pos_tag(tokens) # Convert to DataFrame print(pd.DataFrame(tagged_tokens, columns=['Token', 'POS tag']).T)
copy

Alternativement, il est possible d'utiliser pd.DataFrame(tagged_tokens, columns=['Token', 'POS tag']) sans transposer le DataFrame, de sorte que chaque ligne représente une paire token-étiquette.

question mark

Quel est l'objectif de l'étiquetage des parties du discours (POS) en TAL ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 5

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Awesome!

Completion rate improved to 3.45

bookÉtiquetage des Parties du Discours

Glissez pour afficher le menu

Compréhension de l'étiquetage des parties du discours

Nous avons mentionné que l'étiquetage des parties du discours est bénéfique pour la lemmatisation, ce qui constitue son rôle principal dans le prétraitement du texte. Examinons donc ce processus plus en détail.

Note
Définition

L'étiquetage des parties du discours (POS) est le processus qui consiste à annoter un mot dans un texte (corpus) comme correspondant à une partie du discours particulière (par exemple, nom ou verbe), en se basant à la fois sur sa définition et sur son contexte — c'est-à-dire sa relation avec les mots adjacents et apparentés dans une phrase, une proposition ou un paragraphe.

L'utilisation des noms complets des parties du discours (par exemple, « verbe » ou « nom ») peut devenir assez lourde, en particulier avec un grand corpus. C'est pourquoi des représentations abrégées, appelées étiquettes, sont utilisées à la place. Par exemple, « VB » au lieu de verbe. En pratique, cependant, différents étiqueteurs POS peuvent utiliser des étiquettes légèrement différentes et des étiquettes plus détaillées comme « VBD » pour verbes au passé.

Étiquetage des parties du discours avec NLTK

Pour effectuer l'étiquetage des parties du discours avec NLTK, il convient d'importer directement la fonction pos_tag() depuis nltk et de l'appliquer à la liste de chaînes de caractères (tokens) en la passant en argument.

123456789101112
from nltk.tokenize import word_tokenize from nltk import pos_tag import nltk nltk.download('punkt_tab') # Download the model needed for NLTK's POS tagging nltk.download('averaged_perceptron_tagger_eng') text = "One of the key NLP tasks is part of speech tagging" text = text.lower() tokens = word_tokenize(text) # Perform POS tagging tagged_tokens = pos_tag(tokens) print(tagged_tokens)
copy

Cette fonction retourne une liste de tuples, chacun contenant un token et son étiquette. La ligne nltk.download('averaged_perceptron_tagger_eng') lance le téléchargement du jeu de données et des modèles nécessaires pour le PerceptronTagger, qui est l'étiqueteur de parties du discours par défaut utilisé par NLTK.

Note
Approfondir

Ce tagueur est basé sur le modèle du perceptron moyenné, un algorithme d'apprentissage supervisé efficace pour le traitement de texte à grande échelle, y compris l'étiquetage des parties du discours (POS). Le PerceptronTagger est choisi pour son équilibre entre rapidité et précision, ce qui le rend adapté à un large éventail de tâches de TAL nécessitant un étiquetage POS. Il apprend les poids des caractéristiques à partir des données d'entraînement fournies, et utilise ces poids pour prédire les étiquettes POS dans des textes inconnus.

Pour une meilleure représentation visuelle, il est possible de convertir le résultat en un DataFrame pandas :

1234567891011121314
from nltk.tokenize import word_tokenize from nltk import pos_tag import nltk import pandas as pd nltk.download('punkt_tab') # Download the model needed for NLTK's POS tagging nltk.download('averaged_perceptron_tagger_eng') text = "One of the key NLP tasks is part of speech tagging" text = text.lower() tokens = word_tokenize(text) # Perform POS tagging tagged_tokens = pos_tag(tokens) # Convert to DataFrame print(pd.DataFrame(tagged_tokens, columns=['Token', 'POS tag']).T)
copy

Alternativement, il est possible d'utiliser pd.DataFrame(tagged_tokens, columns=['Token', 'POS tag']) sans transposer le DataFrame, de sorte que chaque ligne représente une paire token-étiquette.

question mark

Quel est l'objectif de l'étiquetage des parties du discours (POS) en TAL ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 5
some-alt