2009-12-23 11 views
1

J'essaie ceci:Stanford POS tagger en Java

Sentence<TaggedWord> taggedString = MaxentTagger.tagStringTokenized("here is a string to tag"); 

qui me donne:

Error: \u\nlp\data\pos-tagger\wsj3t0-18-left3words\left3words-wsj-0-18.tagger (The system cannot find the path specified)

J'utilise POS tagger Stanford. Que puis-je faire pour surmonter ce problème?

+0

Télécharger le package complet de Stanford tagger, là vous trouverez des modèles, par exemple, left3words ... tagger. – Skarab

Répondre

4

Il semble que vous devez d'abord instancier un tagger passer le fichier inclus:

new MaxentTagger("models/left3words-wsj-0-18.tagger"); 

Ce qui est assez désagréable comme méthode de marquage utilisée est plus tard statique:

MaxentTagger.tagStringTokenized("here is a string to tag"); 

Je devais aussi passer -Xmx256m pour le faire fonctionner avec cette configuration.

+2

Ouais, c'était assez méchant, mais cela a été corrigé à présent :-). La version 3 a une API assez propre! Vous devriez maintenant être bien avec MaxentTagger tagger = new MaxentTagger (args [0]); String ans = tagger.tagString ("Voici une chaîne à taguer"); –

2

Il dit qu'il ne peut pas trouver ce chemin. Alors, existe-t-il sur votre machine? Notez que les barres obliques sont des barres obliques inverses. Votre système d'exploitation prend-il en charge la barre oblique inversée en tant que séparateur de fichiers?

Notez également qu'il s'agit d'un chemin absolu - est-ce prévu?

Si tout le reste est OK, le fichier existe-t-il?

Editer: sinon, vous devez le télécharger ici (http://github.com/tiendung/ruby-nlp/blob/master/left3words-wsj-0-18.tagger), le placer dans le chemin que le système spécifie, et voir ce qu'il se passe.

+0

il n'existe pas mais je ne sais pas où je suis censé l'obtenir. J'ai téléchargé ceci: http: //nlp.stanford.edu/software/tagger.shtml donc j'ai supposé que tous les fichiers seraient inclus: S – Lilz

+0

Ajout d'une URL à ma réponse – danben