【发布时间】:2015-01-11 17:20:44
【问题描述】:
我尝试使用带有以下代码 conll2002 的 NLTK,使用来自
的说明How to improve dutch NER chunkers in NLTK
我在解压 NLTK-Trainer 的目录下运行了以下命令。
python train_chunker.py conll2002 --fileids ned.train --classifier NaiveBayes --filename /nltk_data/chunkers/conll2002_ned_NaiveBayes.pickle
我找到了 picle 文件 (conll2002_ned_NaiveBayes.pickle) 并复制了 chunker 文件 目录(C:\Users\Administrator\AppData\Roaming\nltk_data\chunkers)。这也是 NLTK.download 下载包的地方。
并尝试执行以下代码:
import nltk
from nltk.corpus import conll2002
tokenizer = nltk.data.load('tokenizers/punkt/dutch.pickle')
tagger = nltk.data.load('taggers/conll2002_ned_IIS.pickle')
chunker = nltk.data.load('chunkers/conll2002_ned_NaiveBayes.pickle')
test_sents = conll2002.tagged_sents(fileids="ned.testb")[0:1000]
print "tagger accuracy on test-set: " + str(tagger.evaluate(test_sents))
test_sents = conll2002.chunked_sents(fileids="ned.testb")[0:1000]
print chunker.evaluate(test_sents)
但运行此代码后,我收到以下错误:
LookupError:
Resource u'taggers/conll2002_ned_IIS.pickle' not found. Please ....
我尝试使用 NLTK.download() GUI 下载所有包和模型,但我仍然遇到同样的错误
有人知道如何解决这个问题吗?非常感谢
埃里克
【问题讨论】:
-
您是否运行了链接问题中指定的
python train_chunker.py conll2002 ...命令? -
Sebastian,我在解压 NLTK-Trainer 的目录下运行了以下命令。 python train_chunker.py conll2002 --fileids ned.train --classifier NaiveBayes --filename /nltk_data/chunkers/conll2002_ned_NaiveBayes.pickle。但仍然得到错误。找不到资源 u'taggers/dutch.pickle'。请使用 NLTK 下载器获取资源:>>> nltk.download() 搜索:
-
如果命令创建pickle文件;确保将它们复制到 nltk_data 目录的相应子目录中
-
塞巴斯蒂安,是的,我做到了!请参阅问题中的更新。但仍然收到相同的消息。
标签: python-3.x nltk