如何在Ruby on Rails中实现语义本体?

时间:2009-02-25 13:15:21

标签: ruby-on-rails ruby database-design semantics

我正在开发一个“推特过滤器” - 更多的是学习铁轨上的红宝石而不是其他任何东西。我的想法是我使用语义本体来查找用户的兴趣。因此,如果用户说他们对“体育”感兴趣,则意味着标记任何讨论“体育”,“高尔夫”,“足球”等的推文。

我希望能够将其扩展到任何主题的层次结构。所以,如果你对欧洲感兴趣,那就是欧洲所有国家。

当然这是相当复杂的,所以我们可能会将它限制在查询的一两个“级别”......

我怎么能这样做呢?我对Java,C和Ruby非常熟悉,并且在MySQL上做了很多工作。

4 个答案:

答案 0 :(得分:2)

我会调查Doug Lenat的Cyc。它完成并开放。

答案 1 :(得分:0)

我不确定它是否对您有所帮助,但谷歌有一套名为Google Sets的东西。您可以在此处查看:http://labs.google.com/sets

答案 2 :(得分:0)

在考虑编程语言和技术之前,请考虑一下:什么样的数据结构是“语义神话”?

对我而言,这听起来像某种directed graph

知道这一点,你很快就会发现,用你想要的任何语言和技术来实现这样的结构非常容易,并且很多语言已经实现了某种图形库(例如{{3}对于Ruby)。

对我而言,真正的问题不在于如何实现这样的数据结构以及如何有效地实现这一目标,而是如何从twitter中获取所需的语义信息来构建它(例如谁告诉您的应用程序欧洲不是西班牙的一部分,但西班牙是欧洲的一部分?)。

无论如何,实现它很有趣,听起来像一个很酷的项目! : - )

答案 3 :(得分:0)

我不确定你的要求是什么。但似乎Singular Value Decomposition(SVD)或Support Vector Machines(SVM)对您有用。