一個快速使用wordnet的骯髒解決方案可能如下所示。
>>>from ntlk.corpus import wordnet as wn
>>> wn.synsets('born')
[Synset('born.n.01'), Synset('bear.v.01'), Synset('give_birth.v.01'), Synset('digest.v.03'), Synset('bear.v.04'), Synset('bear.v.05'), Synset('bear.v.06'), Synset('hold.v.11'), Synset('yield.v.10'), Synset('wear.v.02'), Synset('behave.v.02'), Synset('bear.v.11'), Synset('hold.v.14'), Synset('have_a_bun_in_the_oven.v.01'), Synset('born.a.01'), Synset('natural.s.09')]
>>> wn.synsets('birth')
[Synset('birth.n.01'), Synset('birth.n.02'), Synset('parturition.n.01'), Synset('parentage.n.02'), Synset('birth.n.05'), Synset('give_birth.v.01')]
>>>
在這裏你可以看到,「同義詞集(‘give_birth.v.01’)」是一種常見的結果集,它是「動詞」。因此,通過這種方式,您可以找到解決辦法並查看是否有任何匹配結果,並將其轉換爲出生或反之亦然!
從你鏈接的問題中使用wordnet的相關froms看起來是最好的選擇,你也可以看看conceptnet。 –