我一直在使用NLTK WordNet软件包,但对于Synsets的不同方法感到很困惑。
我理解meronym / holonyms和hypernym / hyponyms的含义。
但在NLTK WordNet中,有part_meronyms
和member_meronyms
,以及instance_hypernyms
和hypernyms
。
似乎part_meronyms
返回了Synset的缩写,hypernyms
是要使用的方法。但是有什么区别? NLTK网站似乎也没有文档。
答案 0 :(得分:1)
一个缩写是一个较大整体的某个组成部分,可以代表整个语义。由于这是一个巨大的关系,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')]
Hypernyms与meronyms断言无关。给定的Synset的hypernym列表包含比单词树中的目标Synset低一个深度级别的所有Synset。
wordnet.synsets("placental")[0].hypernyms()
>>> [Synset('mammal.n.01')]
从这里采取的名词示例:
https://medium.com/parrot-prediction/dive-into-wordnet-with-nltk-b313c480e788