输入名词以获得具有相似含义的另一个名词。 python,nltk

时间:2018-01-25 06:54:59

标签: python nltk wordnet

  

输入:名词

     

输出:名词

示例:

输入:狗,我想获得猫,狼,老虎的输出

输入:电脑,我想获得笔记本电脑,平板电脑,手机等的输出。

任何人都可以写一个执行此操作的python代码吗?更喜欢使用NLTK?

示例代码:

text = nltk.Text(word.lower() for word in nltk.corpus.treebank.words())
y= text.similar('dog')
print (y)

更新:找到了这个并且效果更好

from py_thesaurus import Thesaurus
thesaurus = Thesaurus('dog')
print(thesaurus.get_synonym())

1 个答案:

答案 0 :(得分:0)

对于狗,即使我得到“不匹配”。

类似的词语取决于您使用的语料库。现在我使用了你使用过的语料库。

<强>代码:

import nltk

text = nltk.Text(word.lower() for word in nltk.corpus.treebank.words())
text.similar('computer')

similar_words = text._word_context_index.similar_words('computer')
print(similar_words)

<强>输出:

industrial insurance research manufacturing market car farm trading
presence stored
['manufacturing', 'industrial', 'insurance', 'research', 'market', 'presence', 'farm', 'trading', 'stored', 'car']