我可以用什么来确定相似的单词或关键字?

时间:2009-05-19 14:27:35

标签: c# algorithm

是否有人知道开源或API中提供的“类似字词或关键字”算法?我正在寻找类似词库但更聪明的东西。

例如:

  

英特尔

返回:

  

处理器,
  i7核心芯片,
  四核芯片,
  ..等等

任何想法甚至可以指出我在C#中的正确方向?


编辑:

我很想听听您的想法,但为什么我们只能使用Google Adwords API生成与输入相关的关键字?

4 个答案:

答案 0 :(得分:5)

为什么不向Google发送搜索查询并解析它返回的内容?

另外,请查看Google Sets

答案 1 :(得分:2)

这种事情没有算法。您将不得不获取同义词库的数据,并将其加载到数据结构中,然后它是一个简单的字典查找(您可以使用C#Dictionary类)。也许您可以将WordnetMoby Thesaurus视为数据来源。其他选项使用Thesaurus server并根据需要在线获取信息。

答案 2 :(得分:0)

您需要一个包含此信息的大型数据库。其余的很简单 - 查看输入并查看存储的相关单词。

困难的部分是生成数据库。如果要覆盖大量单词和主题,手动执行可能需要数年时间 生成它是非常重要的。也许你可以尝试下载网页并分析频繁出现在一起的单词,但我认为这仍需要几个月的时间来构建,调整并最终收集高质量的数据。也许从维基百科中提取链接可能是一个很好的信息来源,因为它的半结构。

答案 3 :(得分:0)

我已经在NHunspell项目中为.NET提供了开放式办公室词库功能。您可以使用OO同义词库文件。 Here is the NHunspell Project