1

我有一个问题是让搜索输出对最终用户更实用。问题与算法和方法有关,然后与要使用的确切技术或框架有关。

目前我们有一个产品数据库,可以用以下模式描述:

http://goo.gl/391qj

从搜索的角度来看,我们已经完成了非常标准的事情,使用标记分析器进行 3 方文本搜索,处理错误类型和同义词(这不是完整列表,但正如我所说,它超出了范围)。但是我们仍然需要执行额外的工作以使搜索结果更接近现实生活中的用户需求,这可能有点类似于 Google 按相关性对索引页面进行排名的方式。我们已经认为可能适用于解决问题的想法:

  • 分析广泛搜索引擎中最流行的搜索请求(如何获取它们仍然是一个问题)并增加索引中那些与流行请求相对应(可以找到)的条目的排名;
  • 增加最新(热门)条目的排名;
  • 增加最大的条目组的排名,这些条目对应于流行的请求并且有一些共同点(这就是为什么它是一个组);

感谢任何帮助或建议方向,在哪里挖掘。

4

1 回答 1

1

你可以试试pLSA;网上有很多参考资料,应该有库和源代码。

编辑:

好吧,我最近仔细研究了 Lucene,它似乎对实际提出的问题给出了更好的答案(它不使用 pLSA)。至于与 db 的集成,你可以使用 Hibernate Search(虽然它似乎没有直接使用 Lucene 强大)。

于 2012-12-13T14:39:54.363 回答