间接对称同义词的数据结构



我有一组同义词,例如:

大-大巨大的小小的苹果香蕉

意思是大是大的同义词,大是巨大的同义词。小是小,苹果是香蕉,反之亦然(大是大等的同义词(。另一件事是";"大";是";巨大的";以及";巨大的";是";"大";由于经由";"大";。

这应该是类似词库的东西?但我不确定数据结构应该是什么样子。

一个简单的选项是数组数组,如:

[
['big', 'large', 'huge'],
['small', 'little']
]

或者,如果在你的模型中,例如巨大不是大的同义词,那么你可能想要一个散列,比如:

{
big: ['large'],
large: ['big', 'huge'],
huge: ['large'],
small: ['little', 'tiny'],
little: ['small'],
...
}

这真的取决于你打算用它做什么

"语言的许多不同方面都有图形的自然表示。图形也可以用来描述单词之间的语义关系。在每个单词类中,单词被分组为同义词集,即所谓的同义词集"-根据本文。

因此,例如,根据WordNet,单词">香蕉"的同义词是(细长的新月形黄色水果,果肉柔软甜(。句法通过语义关系相互联系。因此,你可以找到单词">苹果">的相似语义同义词(水果带有红色或黄色或绿色皮肤和甜味,带有脆白的果肉(

您可以使用这个ruby gem来使用WordNet数据库构建一个图。

最新更新