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 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