可用于自然语言处理的字典很少。像正面,负面的词词典等。
是否有任何可用的字典包含所有字典单词的同义词列表?
像nice
synonyms: enjoyable, pleasant, pleasurable, agreeable, delightful, satisfying, gratifying, acceptable, to one's liking, entertaining, amusing, diverting, marvellous, good;
可用于自然语言处理的字典很少。像正面,负面的词词典等。
是否有任何可用的字典包含所有字典单词的同义词列表?
像nice
synonyms: enjoyable, pleasant, pleasurable, agreeable, delightful, satisfying, gratifying, acceptable, to one's liking, entertaining, amusing, diverting, marvellous, good;
虽然 WordNet 是开始寻找同义词的好资源,但必须注意它的局限性,下面是NLTK
库中 python API 的示例:
首先,单词具有多种含义(即感官):
>>> from nltk.corpus import wordnet as wn
>>> wn.synsets('nice')
[Synset('nice.n.01'), Synset('nice.a.01'), Synset('decent.s.01'), Synset('nice.s.03'), Synset('dainty.s.04'), Synset('courteous.s.01')]
要获得单词的正确含义,您需要知道给定上下文的单词的正确含义。
>>> wn.synset('nice.a.01').definition()
u'pleasant or pleasing or agreeable in nature or appearance'
您可以尝试 Word Sense Disambiguation 软件,但它们并不完美(请参阅有人知道一些好的 Word Sense Disambiguation 软件吗?)。即使你知道这个词的意思,wordnet 的词条也是有限的。你不能期望太多:
>>> wn.synset('nice.a.01').lemma_names()
[u'nice']
>>> wn.synset('nice.a.01').similar_tos()
[Synset('good.s.06'), Synset('pleasant.s.02')]
>>> [i.lemma_names() for i in wn.synset('nice.a.01').similar_tos()]
[[u'good'], [u'pleasant']]
“WordNet® 是一个大型的英语词汇数据库。名词、动词、形容词和副词被分组为一组认知同义词 (synsets),每个都表达一个不同的概念。”:http ://wordnet.princeton.edu/