2

这个网络应用程序是关于向网络应用程序发布不同类型的帖子,用户可以通过基于文本的搜索来搜索这些帖子。基本上,帖子具有以下属性。

   Title
   Description
   Category
   Budget 
   Submit_date
   End_date

目前,Post 内容存储在 'Post' 表下的 sql server 数据库中。我想要做的是,对发布在应用程序中的这些帖子进行语义搜索。例如,当用户在搜索字段中键入“教育”时,系统应该使用该词“教育”的含义而不是其文本值进行搜索。我喜欢为此使用 Jena 框架寻找基于 RDF/OWL 的解决方案。但我真的不知道如何开始,因为我是语义网的新手。帮助我建立这个搜索。(如果您可以提供示例应用程序/代码,那就更好了)。提前致谢。

4

2 回答 2

4

在开始一项重要的任务之前,我想说对语义 Web 技术、他们打算解决的问题等多一点了解是明智的。您可以先阅读/浏览“语义编程”以网络书为例。

有了对什么是什么的高层次理解,您就可以将您的问题重新表述得更具体,也许可以分成几个不太一般的问题。OWL 和 Jena 是实现细节,首先你需要一个清晰的整体概念,你的语义搜索将如何准确地工作。您的帖子描述会由人类作者或机器进行语义注释吗?您还会使用类别来帮助您进行搜索吗?您会使用外部系统来查找诸如“哪些术语/概念/资源与‘教育’相关”之类的信息,还是您的系统会自行维护这些信息?等等。

除非您对语义化非常认真,否则为了改进您的搜索,我建议从词干提取等简单的事情开始,因此搜索“教育”会返回提及“教育”、“未受过教育”等的帖子。添加一些像这样的简单技巧,也许你会意识到这就是你真正需要的...... :-)

于 2010-08-27T17:22:10.410 回答
1
  • 实施语义网络搜索引擎绝非易事。其中一种方法是根据本体对帖子进行分类。现在显然本体需要随着时间的推移而发展,您可能希望保留几个这样的本体进行搜索。我会这样做的方式是通过分析帖子中的文本来为帖子生成标签。帖子通常只有作者自己定义的标签,如果你能以某种方式添加更多标签,它会使帖子在搜索和更多有用的。一旦你有了标签,你就可以根据你拥有的本体对其进行分类,然后使用这些本体建立关系。我可以建议使用“ opencalais“(还有更多可供选择)用于生成更多标签的网络服务。使用一些您可以在网络上找到的标准本体,根据您找到的新标签添加到它们中。您拥有的帖子越多,您将拥有更多的关系从而获得更好的结果。

希望它给你一个开始。

于 2011-07-31T12:37:56.127 回答