2016-03-20 1 views
1

J'ai trouvé des exemples de comportement incohérent dans mon application en utilisant Stanford PNL Parser/POS Tagger et j'ai été en mesure de le répliquer en ligne http://nlp.stanford.edu:8080/corenlp/process. J'utilise la version 3.60:Stanford NLP POS Tagger a des problèmes avec des phrases très simples?

Voici les 3 questions que j'ai trouvé à ce jour:

  • Dot avec ou sans problème d'incohérence:

NLP Stanford POS Tagger with and without dot

  • Verbs que sont trouvés en tant que Noms enter image description here

  • verbes qui sont étiquetés comme Adjectifs enter image description here

Je sais que la langue est assez ambiguë mais je voudrais savoir si je peux faire confiance à cette bibliothèque, même pour ces phrases simples. Je voudrais aussi savoir si je fais quelque chose de mal. J'ai essayé les cas problématiques de chacun d'un exemple seul ou en d'autres termes dans des phrases séparées et le problème persiste.

C'est le comportement attendu:

enter image description here

Toute aide est appréciée! Merci

+0

Mettez un espace avant l'arrêt complet? – alvas

+0

@alvas Je viens d'essayer et cela ne change pas le comportement de l'un des problèmes liés à l'arrêt complet –

Répondre

2

Vous ne faites rien de mal. Vous êtes bien sûr le bienvenu pour décider par vous-même de la fiabilité de tout outil, mais je suppose que vous verrez des problèmes similaires avec n'importe quel analyseur formé empiriquement/statistiquement. En ce qui concerne vos problèmes:

  • Les périodes sont traitées comme n'importe quel autre jeton dans la construction du modèle, donc, oui, elles peuvent influencer l'analyse choisie.
  • Il y a en effet beaucoup d'ambiguïtés en anglais (comme dans tous les autres langages humains), et la question d'interpréter les formes se terminant par ou comme verbes, noms (noms verbaux ou gérondifs), ou adjectifs est un commun. L'analyseur ne le comprend pas toujours correctement.
  • En termes de mauvais choix particuliers qu'il a faits, ils reflètent souvent des discordances d'utilisation/domaine entre les données d'apprentissage de l'analyseur et les phrases que vous essayez. Les données de formation sont principalement des articles de presse - les articles de presse du dernier millénaire - même si nous mélangeons d'autres données et y ajoutons parfois. Alors:

    • L'utilisation de repérage comme un verbe, couramment utilisé développeur Internet moderne, ne se produit pas du tout dans les données de formation, donc il ne tend étonnamment à choisir JJ pour repérage, depuis c'est l'analyse des seuls cas dans les données d'entraînement.
    • Dans les articles de presse potable est un peu plus souvent un nom, avec des discussions de potable d'âge mineur, boire du café, boire et conduire, etc.
+0

Merci pour la réponse bien expliquée Prof. Manning :) - Je supposais que les résultats de phrase plus courts seraient plus prévisibles, mais il semble comme si les données d'apprentissage ne correspondent pas à mes propres données. Je vais enquêter sur la façon dont je peux former l'analyseur moi-même. Est-ce un processus qui demande beaucoup d'efforts pendant que je lis? –

1

Les différents résultats de POS tagueurs me rendait fou donc pour les contrôles de santé d'esprit j'ai finalement écrit quelque chose à comparer rapidement les résultats contre les trois à utiliser en général (Stanford PNL, NLTK 3.2.1 et Senna) Il aussi les fois comme souvent un tagueur peut s'étouffer sur certains textes. https://github.com/StealthyK/TaggerTimer