Python | Etiquetado de parte del discurso usando TextBlob

El módulo TextBlob se utiliza para crear programas para el análisis de texto. Uno de los aspectos más poderosos del módulo TextBlob es el etiquetado de parte del discurso. Instale TextBlob y ejecute los siguientes comandos:

$ pip install -U textblob
$ python -m textblob.download_corpora

Esto instalará TextBlob y descargará los corpus NLTK necesarios. La instalación anterior llevará bastante tiempo debido a la gran cantidad de tokenizadores, fragmentadores, otros algoritmos y todos los corpus que se descargarán.

Repasemos un poco de vocabulario rápido: Corpus: Cuerpo de texto, singular. Corpora es el plural de esto. Léxico: Las palabras y sus significados. Token: cada «entidad» que forma parte de lo que sea se dividió según las reglas.

En lingüística de corpus, etiquetado de parte del discurso (etiquetado POS o etiquetado PoS o POST), también llamado etiquetado gramatical o desambiguación de categorías de palabras.

Input: Everything is all about money.
Output: [('Everything', 'NN'), ('is', 'VBZ'), 
              ('all', 'DT'), ('about', 'IN'), 
                             ('money', 'NN')] 

Aquí hay una lista de las etiquetas, lo que significan y algunos ejemplos:

CC coordinating conjunction
CD cardinal digit
DT determiner
EX existential there (like: “there is” … think of it like “there exists”)
FW foreign word
IN preposition/subordinating conjunction
JJ adjective ‘big’
JJR adjective, comparative ‘bigger’
JJS adjective, superlative ‘biggest’
LS list marker 1)
MD modal could, will
NN noun, singular ‘desk’
NNS noun plural ‘desks’
NNP proper noun, singular ‘Harrison’
NNPS proper noun, plural ‘Americans’
PDT predeterminer ‘all the kids’
POS possessive ending parent‘s
PRP personal pronoun I, he, she
PRP$ possessive pronoun my, his, hers
RB adverb very, silently,
RBR adverb, comparative better
RBS adverb, superlative best
RP particle give up
TO to go ‘to‘ the store.
UH interjection errrrrrrrm
VB verb, base form take
VBD verb, past tense took
VBG verb, gerund/present participle taking
VBN verb, past participle taken
VBP verb, sing. present, non-3d take
VBZ verb, 3rd person sing. present takes
WDT wh-determiner which
WP wh-pronoun who, what
WP$ possessive wh-pronoun whose
WRB wh-adverb where, when

Python3

# from textblob lib import TextBlob method
from textblob import TextBlob
 
text = ("Sukanya, Rajib and Naba are my good friends. " +
    "Sukanya is getting married next year. " +
    "Marriage is a big step in one’s life." +
    "It is both exciting and frightening. " +
    "But friendship is a sacred bond between people." +
    "It is a special kind of love between us. " +
    "Many of you must have tried searching for a friend "+
    "but never found the right one.")
 
# create a textblob object
blob_object = TextBlob(text)
 
# Part-of-speech tags can be accessed
# through the tags property of blob object.'
 
# print word with pos tag.
print(blob_object.tags)

Producción :

[('Sukanya', 'NNP'),
 ('Rajib', 'NNP'),
 ('and', 'CC'),
 ('Naba', 'NNP'),
 ('are', 'VBP'),
 ('my', 'PRP$'),
 ('good', 'JJ'),
 ('friends', 'NNS'),
 ('Sukanya', 'NNP'),
 ('is', 'VBZ'),
 ('getting', 'VBG'),
 ('married', 'VBN'),
 ('next', 'JJ'),
 ('year', 'NN'),
 ('Marriage', 'NN'),
 ('is', 'VBZ'),
 ('a', 'DT'),
 ('big', 'JJ'),
 ('step', 'NN'),
 ('in', 'IN'),
 ('one', 'CD'),
 ('’', 'NN'),
 ('s', 'NN'),
 ('life.It', 'NN'),
 ('is', 'VBZ'),
 ('both', 'DT'),
 ('exciting', 'VBG'),
 ('and', 'CC'),
 ('frightening', 'NN'),
 ('But', 'CC'),
 ('friendship', 'NN'),
 ('is', 'VBZ'),
 ('a', 'DT'),
 ('sacred', 'JJ'),
 ('bond', 'NN'),
 ('between', 'IN'),
 ('people.It', 'NN'),
 ('is', 'VBZ'),
 ('a', 'DT'),
 ('special', 'JJ'),
 ('kind', 'NN'),
 ('of', 'IN'),
 ('love', 'NN'),
 ('between', 'IN'),
 ('us', 'PRP'),
 ('Many', 'JJ'),
 ('of', 'IN'),
 ('you', 'PRP'),
 ('must', 'MD'),
 ('have', 'VB'),
 ('tried', 'VBN'),
 ('searching', 'VBG'),
 ('for', 'IN'),
 ('a', 'DT'),
 ('friend', 'NN'),
 ('but', 'CC'),
 ('never', 'RB'),
 ('found', 'VBD'),
 ('the', 'DT'),
 ('right', 'JJ'),
 ('one', 'NN')]

Básicamente, el objetivo de un etiquetador POS es asignar información lingüística (principalmente gramatical) a unidades sub-orales. Estas unidades se denominan fichas y, la mayoría de las veces, corresponden a palabras y símbolos (p. ej., puntuación).

Publicación traducida automáticamente

Artículo escrito por ankthon y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *