3

我一直在玩 NLTK WordNet 包,但对 Synsets 的不同方法感到很困惑。

我理解 meronym / holonyms 和 hypernym / hyponyms 的含义。但是在 NLTK WordNet 中,有part_meronymsand member_meronyms, and instance_hypernymsand hypernyms

似乎这part_meronyms正在返回 Synset 的 Meronyms,并且hypernyms是使用的方法。但是有什么区别呢?NLTK 网站上似乎也没有文档。

4

1 回答 1

2

一个meronym是一个更大的整体的一些组成部分,可以在语义上代表整体。由于这是一个巨大的关系,nltk 将 meronym 类别划分为部分代表整体(part_meronyms())和实体代表整体(substance_meronyms())。

tree = wn.synset('tree.n.01')

tree.part_meronyms()
>>>[Synset('burl.n.02'), Synset('crown.n.07'), Synset('limb.n.02'), Synset('stump.n.01'), Synset('trunk.n.01')]


tree.substance_meronyms()
>>>[Synset('heartwood.n.01'), Synset('sapwood.n.01')]

上位词与分词没有绝对关系。给定的同义词集的上位词列表包含所有同义词集,深度比单词树中的目标同义词集低一级。

wordnet.synsets("placental")[0].hypernyms()
>>> [Synset('mammal.n.01')]

Meronym 示例取自这里:

https://medium.com/parrot-prediction/dive-into-wordnet-with-nltk-b313c480e788

于 2018-05-05T23:03:01.247 回答