Python NLTK pos_tag ne retourne pas la bonne partie du discours de la balise

Avoir ceci:

text = word_tokenize("The quick brown fox jumps over the lazy dog")

Et en cours d'exécution:

nltk.pos_tag(text)

J'obtiens:

[('The', 'DT'), ('quick', 'NN'), ('brown', 'NN'), ('fox', 'NN'), ('jumps', 'NNS'), ('over', 'IN'), ('the', 'DT'), ('lazy', 'NN'), ('dog', 'NN')]

C'est incorrect. Les balises pour quick brown lazy dans la phrase devrait être:

('quick', 'JJ'), ('brown', 'JJ') , ('lazy', 'JJ')

De tester ce par le biais de leur outil en ligne donne le même résultat; quick, brown et fox devraient être les adjectifs ne pas les noms.

  • En utilisant l'exemple de la phrase "Jean grande idée n'est pas si mauvais que ça." trouve ici: nltk.org/api/nltk.tag.html je vois qu'il fait un excellent travail et trouve les adjectifs, pourquoi est-ce ? Où avez-vous suggérons de chercher un autre marqueur?
  • Ce sont sans équivoque des mots et doit avoir été étiquetés correctement. Essayez quelques autres tagger pour de meilleurs résultats.
  • Je ne sais pas tout tagger pour cette tâche, mais j'ai juste suggéré d'en chercher un dans la Doc!
  • Vous pouvez utiliser HMM tagger dans NLTK. J'ai une auto de la mise en œuvre de HMM tagger qui prédit correctement les balises de votre exemple de phrase. Je suppose que cela devrait fonctionner pour vous aussi.
InformationsquelleAutor faceoff | 2015-06-13