Stanford Entity Recognizer (caseless) en Python Nltk

j'essaie de comprendre comment utiliser la version SANS cas de l'entité recognizer de NLTK. J'ai téléchargé http://nlp.stanford.edu/software/stanford-ner-2015-04-20.zip et l'a placé dans le dossier site-packages de python. Puis j'ai téléchargé http://nlp.stanford.edu/software/stanford-corenlp-caseless-2015-04-20-models.jar et l'a placé dans le dossier. Puis j'ai lancé ce code dans nltk

from nltk.tag.stanford import NERTagger
english_nertagger = NERTagger(‘/home/anaconda/lib/python2.7/site-packages/stanford-ner-2015-04-20/classifiers/english.conll.4class.distsim.crf.ser.gz’, ‘/home/anaconda/lib/python2.7/site-packages/stanford-ner-2015-04-20/stanford-corenlp-caseless-2015-04-20-models.jar’)

mais quand je exécutez ceci:

english_nertagger.tag(‘Rami Eid is studying at stony brook university in NY’.split())

j'obtiens une erreur:

Error: Could not find or load main class edu.stanford.nlp.ie.crf.CRFClassifier

Toute aide si vous avez de l'expérience est appréciée!

P.S. Je peux faire fonctionner la version non-caseless mais je trouve que lors de l'analyse des requêtes de recherche, les utilisateurs capitalisent rarement des mots et la version non-caseless semble manquer complètement les mots s'ils ne sont pas capitalisés.

1
demandé sur B_Miner 2015-06-10 04:45:00

1 réponses

le second paramètre de StanfordNERTagger est le chemin vers le fichier stanford tagger jar, pas le chemin vers le modèle. Alors, changez-le en stanford-ner.jar (et placez-le là, bien sûr).

il semble aussi que vous devriez choisir english.conll.4class.caseless.distsim.crf.ser.gz (de stanford-corenlp-caseless-2015-04-20-des mannequins.jar) au lieu de english.conll.4class.distsim.crf.ser.gz

essayez donc ce qui suit:

 english_nertagger = StanfordNERTagger(‘/home/anaconda/lib/python2.7/site-packages/stanford-ner-2015-04-20/classifiers/english.conll.4class.caseless.distsim.crf.ser.gz’, ‘/home/anaconda/lib/python2.7/site-packages/stanford-ner-2015-04-20/stanford-ner.jar’)

Upd. NERTagger a été renommé en StanfordNERTagger

9
répondu Nikita Astrakhantsev 2016-07-15 13:40:07