Ошибка использования Stanford POS Tagger в NLTK Python

Я пытаюсь использовать Stanford POS Tagger в NLTK, но не могу запустить приведенный здесь пример кода http://www.nltk.org/api/nltk.tag.html

import nltk
from nltk.tag.stanford import POSTagger
st = POSTagger(r'english-bidirectional-distim.tagger',r'D:/stanford-postagger/stanford-postagger.jar')
st.tag('What is the airspeed of an unladen swallow?'.split())

Я уже добавил переменные среды как

CLASSPATH = D:/stanford-postagger/stanford-postagger.jar
STANFORD_MODELS =  D:/stanford-postagger/models/

Вот ошибка, которую я продолжаю получать

Traceback (последний вызов был последним):

File "D:\pos_stanford.py", line 4, in <module>
    st = POSTagger(r'english-bidirectional-distim.tagger',
         r'D:/stanford-postagger/stanford-postagger.jar')  
... LookupError: NLTK was unable to find the english-bidirectional-distim.tagger file! Use software specific configuration paramaters or set the STANFORD_MODELS environment variable.

Некоторые форумы предполагают, что

File "C:\Python27\lib\site-packages\nltk\tag\stanford.py", line 45, in __init__
env_vars=('STANFORD_MODELS'), verbose=verbose)

следует изменить, чтобы в запятой

env_vars=('STANFORD_MODELS',), verbose=verbose)

но это тоже не решает проблему. Пожалуйста, помогите мне в решении этой проблемы.

Дополнительные информации: Я использую Windows 7 64-битный Python 2.7 32-битный NLTK 2.0

1 ответ

Решение

Примечание: просто разместите его как ответ, чтобы помочь в случае, если другие столкнутся с этой проблемой в будущем

Я наконец-то узнал, что я сделал не так.. это оказалось ошибкой.

Имя файла тэггера не "english-двунаправленный-distim.tagger", а "english-двунаправленный-distsim.tagger".

Другие вопросы по тегам