ошибка поиска nltk в анализаторе нейронных зависимостей в Стэнфорде

#python-2.7 #nltk

#python-2.7 #nltk

Вопрос:

Я пытаюсь использовать анализатор нейронных зависимостей Stanford, предоставляемый nltk. Проблема, с которой я сталкиваюсь, заключается в том, что при вызове я st = nltk.parse.stanford.StanfordNeuralDependencyParser() получаю следующую ошибку:

 >>> st = nltk.parse.stanford.StanfordNeuralDependencyParser()
Traceback (most recent call last):
  File "C:Users<user>Anaconda2libsite-packagesIPythoncoreinteractiveshell.py", line 2885, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "<ipython-input-5-ca2dec4f3c1f>", line 1, in <module>
    st = nltk.parse.stanford.StanfordNeuralDependencyParser()
  File "C:Users<user>Anaconda2libsite-packagesnltkparsestanford.py", line 378, in __init__
    super(StanfordNeuralDependencyParser, self).__init__(*args, **kwargs)
  File "C:Users<user>Anaconda2libsite-packagesnltkparsestanford.py", line 51, in __init__
    key=lambda model_name: re.match(self._JAR, model_name)
  File "C:Users<user>Anaconda2libsite-packagesnltkinternals.py", line 714, in find_jar_iter
    raise LookupError('nn%sn%sn%s' % (div, msg, div))
LookupError: 

===========================================================================
  NLTK was unable to find stanford-corenlp-(d )(.(d )) .jar! Set
  the CLASSPATH environment variable.

  For more information, on stanford-corenlp-(d )(.(d )) .jar, see:
    <http://nlp.stanford.edu/software/lex-parser.shtml>
===========================================================================
 

Но когда я запускаю os.environ.get('CLASSPATH') , я получаю результат

 `C:nltk_data;C:nltk_datastanford;C:nltk_datastanfordstanford-ner` 
 

Я знаю, что у меня есть файл corenlp jar, C:nltk_datastanford поэтому я запускаю следующее и получаю немного другую ошибку.

 >>> st = nltk.parse.stanford.StanfordNeuralDependencyParser('C:\nltk_data\stanford\')
Traceback (most recent call last):
  File "C:Users<user>Anaconda2libsite-packagesIPythoncoreinteractiveshell.py", line 2885, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "<ipython-input-22-28d797d702d9>", line 1, in <module>
    st = StanfordNeuralDependencyParser('C:\nltk_data\stanford\')
  File "C:Users<user>Anaconda2libsite-packagesnltkparsestanford.py", line 378, in __init__
    super(StanfordNeuralDependencyParser, self).__init__(*args, **kwargs)
  File "C:Users<user>Anaconda2libsite-packagesnltkparsestanford.py", line 51, in __init__
    key=lambda model_name: re.match(self._JAR, model_name)
  File "C:Users<user>Anaconda2libsite-packagesnltkinternals.py", line 635, in find_jar_iter
    (name_pattern, path_to_jar))
LookupError: Could not find stanford-corenlp-(d )(.(d )) .jar jar file at C:nltk_datastanford
 

Я загрузил jar stanford-english-corenlp-2016-01-10-models.jar с веб -сайта Stanford NLP, а также переименовал его в stanford-corenlp-2016-01-10.jar чтобы попытаться соответствовать шаблону, но я все равно столкнулся с теми же ошибками. Я также загрузил анализатор Stanford версии 3.6.0, но он не содержит никаких файлов corenlp.

Есть ли какой-нибудь способ заставить это работать, или я что-то недопонимаю?