gpt4 book ai didi

python - NLTK Verbnet 给出错误的类

转载 作者:行者123 更新时间:2023-12-01 08:56:26 25 4
gpt4 key购买 nike

我正在尝试理解 nltk Verbnet api。具体来说,请考虑:

from nltk.corpus import verbnet
verbnet.classids(lemma='add')

最后一个命令打印:['mix-22.1-2'] 。方法classids应该“仅返回包含该引理作为成员的类的 VerbNet 类标识符”。

现在,如果继续 the official verbnet project page并搜索动词“add”,我得到以下结果: search result for verb add on verbnet page即动词 addmix 的成员, multiply , say , addictillustrate 。而 verbnet 类实际上是 addict .

问题:如何使用 nltk 获取与动词 add 相关的实际类(和其他人)?

似乎有一些概念没有非常明确地定义(并且我可能不太理解),并且相互冲突。感谢您的帮助! :D

最佳答案

结果之间不一致的原因是当前版本的 NLTK 使用 Verbnet 2.1,而不是更新的 Verbnet 3.3。

虽然尚未正式支持,但可以使用 NLTK 加载最新版本的 Verbnet。为此:

首先,转到this NLTK Github page并下载文件verbnet3.zip

其次,将文件解压到NLTK文件夹data的corpora文件夹中,通常类似于:Users/username/nltk_data/corpora/your_unzip_here。解压缩后,corpora 文件夹中应该有一个名为 verbnet3 的文件夹。这是 nltk 查找数据的地方;

第三,使用以下命令在 Python 中加载 Verbnet3:

import nltk
vnet3 = nltk.corpus.util.LazyCorpusLoader('verbnet3', nltk.corpus.reader.verbnet.VerbnetCorpusReader,r'(?!\.).*\.xml')

然后您可以使用vnet3.classids('add')正确恢复类mixmultiplysay.

关于python - NLTK Verbnet 给出错误的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52746347/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com