我正在开展一个项目,其中涉及全文 and semantic搜索网站内的文章(如果无法合并,用户可以选择任一选项)。这些文章是订阅式的,只有登录后才能搜索;因此外部搜索引擎或其 API 无法访问它们。
我读过有关狮身人面像的文章 http://www.ibm.com/developerworks/library/os-php-sphinxsearch/用于全文关键字搜索(我打算在这方面实现它),但我不确定如何由此构建语义搜索引擎。例如搜索“美国总统”应列出包含美国总统实际姓名的文章,例如乔治·华盛顿、比尔·克林顿(或威廉·杰斐逊·克林顿)。
我的想法是,也许可以使用某种标记系统来关联各种关键字,例如将总统与乔治·华盛顿和总统与比尔·克林顿联系起来,但由于数据确实很大,而且会存在许多这样的关系,我不知道如何进一步推进这个想法。
请建议我如何从头开始构建语义搜索引擎(我猜 Sphinx 可以处理全文关键字搜索)。否则,请告知我任何基于互联网的资源,或者是否有任何语言的现有软件可以集成到我的应用程序中。
附:我选择的数据库是 MySQL(如果其他数据库系统更适合该任务,请提出建议),我更喜欢用 PHP 进行编程,但如果我需要学习 Python 或任何其他对这项任务更有效的语言,我会效率。
我已经搜索过答案.semanticweb.com http://answers.semanticweb.com
我会用阿帕奇·索尔 http://lucene.apache.org/solr/。我认为它比 Sphinx 更灵活。 Solr 支持全文搜索,我相信有语义支持的附加组件(比如siren http://siren.sindice.com/download.html)。 Solr 是 Lucene 的服务器化版本。
Solr 支持 SynonymFilter:http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#SynonymFilter http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#SynonymFilter
这篇文章讨论了优化内容检索的一些策略http://www.lucidimagination.com/devzone/technical-articles/optimizing-findability-lucene-and-solr http://www.lucidimagination.com/devzone/technical-articles/optimizing-findability-lucene-and-solr
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)