8

我正在尝试在 NLTK 中使用语音标记并使用了以下命令:

>>> text = nltk.word_tokenize("And now for something completely different")

>>> nltk.pos_tag(text)

Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
nltk.pos_tag(text)
File "C:\Python27\lib\site-packages\nltk\tag\__init__.py", line 99, in pos_tag
tagger = load(_POS_TAGGER)
File "C:\Python27\lib\site-packages\nltk\data.py", line 605, in load
resource_val = pickle.load(_open(resource_url))
File "C:\Python27\lib\site-packages\nltk\data.py", line 686, in _open
return find(path).open()
File "C:\Python27\lib\site-packages\nltk\data.py", line 467, in find
raise LookupError(resource_not_found)
LookupError: 
**********************************************************************
Resource 'taggers/maxent_treebank_pos_tagger/english.pickle' not
found.  Please use the NLTK Downloader to obtain the resource:

但是,我收到一条错误消息,其中显示:

engish.pickle not found.

我已经下载了整个语料库,并且 English.pickle 文件在 maxtent_treebank_pos_tagger 中

我该怎么做才能让它发挥作用?

4

3 回答 3

7

您的 Python 安装无法访问 maxent 或 treemap。

首先,检查标记器是否确实存在:从命令行启动 Python。

>>> import nltk

然后你可以检查使用

>>> dir (nltk)

查看列表以查看是否存在maxent并且treebank两者都存在。

更容易打字

>>> "maxent" in dir(nltk)
>>> True
>>> "treebank" in dir(nltk)
>>> True

使用nltk.download()--> Models 选项卡并检查树形图标记器是否显示为已安装。您还应该尝试再次下载标记器。

NLTK 下载器,模型选项卡

于 2012-12-31T20:28:44.393 回答
3

如果您不想使用下载器 gui,您可以在 python 或 ipython shell 中使用以下命令:

import nltk
nltk.download('punkt')
nltk.download('maxent_treebank_pos_tagger')
于 2015-07-31T05:18:48.840 回答
0

超过 50 个语料库和词汇资源,例如 WordNet:http ://www.nltk.org/nltk_data/免费。使用http://nltk.github.com/nltk_data/作为服务器索引而不是 googlecode Google 代码 401:需要授权

于 2014-10-22T11:39:17.283 回答