获取 nltk semcor 语料库单词的意义词干

Getting sense stems for nltk semcor corpus words

我在 nltk 中尝试 semcor 语料库。

我找到了这段代码 here:

>>> list(map(str, semcor.tagged_chunks(tag='both')[:3])) 
['(DT The)', "(Lemma('group.n.01.group') (NE (NNP Fulton County Grand Jury)))", "(Lemma('state.v.01.say') (VB said))"]

我在 colab 上尝试了同样的方法(检查 this 笔记本中的最后一个单元格):

>>> list(map(str, semcor.tagged_chunks(tag='both')[:3]))
['(DT The)',
 '(group.n.01 (NE (NNP Fulton County Grand Jury)))',
 '(say.v.01 (VB said))']

这是来自 colab 的屏幕截图:

问题

请注意,在 nltk 页面上,Fulton County Grand Jury 的输出为 Lemma('group.n.01.group'),但在 colab 上,我得到的是 group.n.01。所以我没有理解/同义词集引理。

奇怪的是它昨天给了我正确的输出。 This 笔记本将消除疑问,因为它在今天和昨天执行了相同的两行。昨天 (2/9/2021),我收到格式为 group.n.01.group 的标签,但今天我收到格式为 group.n.01 的标签(注意红色和蓝色评论 ):

我在这里缺少什么?

我知道 semcor 使用 wordnet 感官来标记 brown 语料库的子集。但我不知道 semcor APIs 可以在有或没有 wordnet 预下载的情况下工作,它会在这些不同的场景中以不同的格式给出标签。老实说,至少 semcor API 文档应该提到这一点。

因此,如果没有 wordnet 预下载,它不会 return 感知词干:

预下载 wordnet 后,它会 return 词干: