Quali sono tutti i possibili tag pos di NLTK?


141

Come trovo un elenco con tutti i possibili tag pos usati da Natural Language Toolkit (nltk)?

Risposte:


151

Il libro contiene una nota su come trovare aiuto sui set di tag, ad esempio:

nltk.help.upenn_tagset()

Altri probabilmente sono simili. (Nota: forse devi prima scaricare tagsetsdalla sezione Modelli dell'helper di download per questo)


3
Ora sono curioso: cosa c'è di così misterioso in questo? Non ho mai usato NLTK, e trovare quella risposta mi ha portato cinque minuti a cercare e cercare su Google ... È davvero così nascosto?
phipsgabler,

5
Penso che non sia la questione di quanto nascosto, questo mi è venuto in mente anche solo cercando di taggare una singola frase, perché sto cercando il motivo per cui nltk tagga i miei verbi come nomi e non sapevo come diversi set di tag può essere utilizzato. Questo è stato utile anche per questo, grazie!
Phonebox

2
@phipsgabler se gli altri sono come me, avevo aspettative sbagliate. Mi aspettavo una tabella / lista / mappa di ricerca, mappando gli acronimi pos come il RBloro significato adverb. ( Ecco un esempio ; oppure vedi la risposta di @ Suzana, che collega il set di tag Penn Treebank ). Ma hai ragione, l'edificio nltk.help.upenn_tagset('RB')è utile e menzionato all'inizio del nltklibro ,
The Red Pea

137

Per risparmiare un po 'di tempo, ecco un elenco che ho estratto da un piccolo corpus. Non so se sia completo, ma dovrebbe avere la maggior parte (se non tutte) delle definizioni di aiuto di upenn_tagset ...

CC : congiunzione, coordinamento

& 'n and both but either et for less minus neither nor or plus so
therefore times v. versus vs. whether yet

CD : numerale, cardinale

mid-1890 nine-thirty forty-two one-tenth ten million 0.5 one forty-
seven 1987 twenty '79 zero two 78-degrees eighty-four IX '60s .025
fifteen 271,124 dozen quintillion DM2,000 ...

DT : determinante

all an another any both del each either every half la many much nary
neither no some such that the them these this those

EX : esistenziale lì

there

IN : preposizione o congiunzione, subordinata

astride among uppon whether out inside pro despite on by throughout
below within for towards near behind atop around if like until below
next into if beside ...

JJ : aggettivo o numero, ordinale

third ill-mannered pre-war regrettable oiled calamitous first separable
ectoplasmic battery-powered participatory fourth still-to-be-named
multilingual multi-disciplinary ...

JJR : aggettivo, comparativo

bleaker braver breezier briefer brighter brisker broader bumper busier
calmer cheaper choosier cleaner clearer closer colder commoner costlier
cozier creamier crunchier cuter ...

JJS : aggettivo, superlativo

calmest cheapest choicest classiest cleanest clearest closest commonest
corniest costliest crassest creepiest crudest cutest darkest deadliest
dearest deepest densest dinkiest ...

LS : marcatore elemento elenco

A A. B B. C C. D E F First G H I J K One SP-44001 SP-44002 SP-44005
SP-44007 Second Third Three Two * a b c d first five four one six three
two

MD : ausiliario modale

can cannot could couldn't dare may might must need ought shall should
shouldn't will would

NN : sostantivo, comune, singolare o di massa

common-carrier cabbage knuckle-duster Casino afghan shed thermostat
investment slide humour falloff slick wind hyena override subhumanity
machinist ...

NNP : sostantivo, proprio, singolare

Motown Venneboerger Czestochwa Ranzer Conchita Trumplane Christos
Oceanside Escobar Kreisler Sawyer Cougar Yvette Ervin ODI Darryl CTCA
Shannon A.K.C. Meltex Liverpool ...

NNS : sostantivo, comune, plurale

undergraduates scotches bric-a-brac products bodyguards facets coasts
divestitures storehouses designs clubs fragrances averages
subjectivists apprehensions muses factory-jobs ...

PDT : pre-determinatore

all both half many quite such sure this

POS : marcatore genitivo

' 's

PRP : pronome, personale

hers herself him himself hisself it itself me myself one oneself ours
ourselves ownself self she thee theirs them themselves they thou thy us

PRP $: pronome, possessivo

her his mine my our ours their thy your

RB : avverbio

occasionally unabatingly maddeningly adventurously professedly
stirringly prominently technologically magisterially predominately
swiftly fiscally pitilessly ...

RBR : avverbio, comparativo

further gloomier grander graver greater grimmer harder harsher
healthier heavier higher however larger later leaner lengthier less-
perfectly lesser lonelier longer louder lower more ...

RBS : avverbio, superlativo

best biggest bluntest earliest farthest first furthest hardest
heartiest highest largest least less most nearest second tightest worst

RP : particella

aboard about across along apart around aside at away back before behind
by crop down ever fast for forth from go high i.e. in into just later
low more off on open out over per pie raising start teeth that through
under unto up up-pp upon whole with you

TO : "to" come preposizione o marker infinito

to

UH : interiezione

Goodbye Goody Gosh Wow Jeepers Jee-sus Hubba Hey Kee-reist Oops amen
huh howdy uh dammit whammo shucks heck anyways whodunnit honey golly
man baby diddle hush sonuvabitch ...

VB : verbo, forma base

ask assemble assess assign assume atone attention avoid bake balkanize
bank begin behold believe bend benefit bevel beware bless boil bomb
boost brace break bring broil brush build ...

VBD : verbo, passato

dipped pleaded swiped regummed soaked tidied convened halted registered
cushioned exacted snubbed strode aimed adopted belied figgered
speculated wore appreciated contemplated ...

VBG : verbo, participio presente o gerundio

telegraphing stirring focusing angering judging stalling lactating
hankerin' alleging veering capping approaching traveling besieging
encrypting interrupting erasing wincing ...

VBN : verbo, participio passato

multihulled dilapidated aerosolized chaired languished panelized used
experimented flourished imitated reunifed factored condensed sheared
unsettled primed dubbed desired ...

VBP : verbo, tempo presente, non terza persona singolare

predominate wrap resort sue twist spill cure lengthen brush terminate
appear tend stray glisten obtain comprise detest tease attract
emphasize mold postpone sever return wag ...

VBZ : verbo, tempo presente, terza persona singolare

bases reconstructs marks mixes displeases seals carps weaves snatches
slumps stretches authorizes smolders pictures emerges stockpiles
seduces fizzes uses bolsters slaps speaks pleads ...

WDT : determinante WH

that what whatever which whichever

WP : pronome WH

that what whatever whatsoever which who whom whosoever

WRB : Wh-avverbio

how however whence whenever where whereby whereever wherein whereof why

2
@PALEN cosa manca?
binarymax,

2
Manca: $, '', (, ), ,, --, ., :, FW, NNPS, SYM, WP$, [due] backticks. Vedere nltk.help.upenn_tagset().

6
Grazie! Dovrebbe essere stata scelta la risposta in quanto è molto più completa della semplice risposta, in sostanza, digita qualcosa nella tua console per scoprirlo.
slartibartfast,

63

Il set di tag dipende dal corpus utilizzato per addestrare il tagger. Il tagger predefinito nltk.pos_tag()utilizza il set di tag Penn Treebank .

In NLTK 2, è possibile verificare quale tagger è il tagger predefinito come segue:

import nltk
nltk.tag._POS_TAGGER
>>> 'taggers/maxent_treebank_pos_tagger/english.pickle'

Ciò significa che è un tagger di Entropia massima addestrato sul corpus Treebank.

nltk.tag._POS_TAGGERnon esiste più in NLTK 3 ma la documentazione afferma che il tagger standard utilizza ancora il tagset Penn Treebank.


6
Grazie, imo questa è una risposta molto più utile di quella accettata.
Dale,

3
Questa è una risposta incompleta. Innanzitutto, nltk.tag._POS_TAGGERnon viene eseguito e non vengono fornite istruzioni specifiche su cosa importare. Inoltre, scoprire che il tagger utilizzato è la metà della risposta, la domanda è chiedere un elenco di tutti i tag possibili all'interno del tagger
Hamman Samuel

3
È il corpus e non il tagger che determina il set di tag. Non appena conosci il nome del corpus, il set di tag completo è solo una ricerca su Google.
Suzana,

34

Quanto segue può essere utile per accedere a un dict digitato da abbreviazioni:

>>> from nltk.data import load
>>> tagdict = load('help/tagsets/upenn_tagset.pickle')
>>> tagdict['NN'][0]
'noun, common, singular or mass'
>>> tagdict.keys()
['PRP$', 'VBG', 'VBD', '``', 'VBN', ',', "''", 'VBP', 'WDT', ...

2
Preferisco questo approccio rispetto alla soluzione accettata, perché è più semplice ed elenca chiaramente i possibili valori
Hamman Samuel,

1
Come siamo sicuri che questo sia il tagset usato dal tagger impiegato? Afaik nltk può usare diversi tagger.
Nikana Reklawyks,

D'accordo con Hamman, in questo modo ha l'ulteriore vantaggio di permetterti di cercare i significati in modo programmatico
datavoredan

28

Il riferimento è disponibile sul sito ufficiale

Copia e incolla da lì:

  • CC | Congiunzione coordinata |
  • CD | Numero cardinale |
  • DT | Determinatore |
  • EX | Esistenziale |
  • AI | Parola straniera |
  • IN | Preposizione o congiunzione subordinata |
  • JJ | Aggettivo |
  • JJR | Aggettivo, comparativo |
  • JJS | Aggettivo, superlativo |
  • LS | Indicatore elemento elenco |
  • MD | Modale |
  • NN | Sostantivo, singolare o di massa |
  • NNS | Noun, plurale |
  • NNP | Nome proprio, singolare |
  • NNPS | Nome proprio, plurale |
  • PDT | Predeterminatore |
  • POS | Finale possessivo |
  • PRP | Pronome personale |
  • PRP $ | Pronome possessivo |
  • RB | Avverbio |
  • RBR | Avverbio, comparativo |
  • RBS | Adverb, superlativo |
  • RP | Particella |
  • SYM | Simbolo |
  • TO | a |
  • UH | Interiezione |
  • VB | Verbo, forma base |
  • VBD | Verbo, tempo passato |
  • VBG | Verbo, gerundio o participio presente |
  • VBN | Verbo, participio passato |
  • VBP | Verbo, non-terza persona presente singolare |
  • VBZ | Verbo, 3ª persona singolare presente |
  • WDT | Determinatore Wh |
  • WP | Pronome Wh |
  • WP $ | Il pronome wh possente |
  • WRB | Wh-avverbio |


1
['LS', 'TO', 'VBN', "''", 'WP', 'UH', 'VBG', 'JJ', 'VBZ', '--', 'VBP', 'NN', 'DT', 'PRP', ':', 'WP$', 'NNPS', 'PRP$', 'WDT', '(', ')', '.', ',', '``', '$', 'RB', 'RBR', 'RBS', 'VBD', 'IN', 'FW', 'RP', 'JJR', 'JJS', 'PDT', 'MD', 'VB', 'WRB', 'NNP', 'EX', 'NNS', 'SYM', 'CC', 'CD', 'POS']

Basato sul metodo di Doug Shore ma lo rende più facile da copiare e incollare


Accetto questo come contributo di convenienza. Ho considerato di migliorare la formattazione, ma ciò potrebbe andare contro lo scopo di questo post. Ti preghiamo di prendere in considerazione la modifica e l'utilizzo della formattazione del codice in combinazione con le nuove righe per ottenere sia una formattazione piacevole che una facilità di copia-incolla. stackoverflow.com/editing-help
Yunnosch

Ho pensato di farlo, ma penso che lo renderebbe meno conveniente.
Fluffy Ribbit

0

Esegui questo testualmente.

import nltk
nltk.download('tagsets')
nltk.help.upenn_tagset()

nltk.tag._POS_TAGGERnon funzionerà. Darà AttributeError: modulo 'nltk.tag' non ha alcun attributo '_POS_TAGGER' . Non è più disponibile in NLTK 3.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.