15

我一直在阅读有关使用 Solr 和 Mahout 开发推荐系统的文章。

据我了解,他们处理两个不同的问题。

  1. 由于 Solr 是一个搜索引擎+分类系统,它主要用于 Drupal 中的“更像这样”之类的推荐 - http://jamidwyer.com/d7/node/21

(或 StackOverflow 中的“相关”功能)

  1. 在 Mahout 的情况下,它实现了协作过滤等机器学习算法。它可用于根据用户以前的操作在亚马逊中实现建议等功能。(喜欢、购买的物品)

我的问题,

它们是否用于解决两个不同的问题?

它们可以集成吗?

我读过 Mahout 进行离线处理和可扩展性。这是否意味着 Solr 无法扩展?

4

3 回答 3

11

这些是针对不同问题的不同工具。Solr 并没有真正提出建议,它会根据内容推荐类似的文档。这不是个性化的,因为它与用户无关。它非常擅长这个特定的问题。

Taste / Mahout 用于协同过滤,它并不特定于文档或任何其他类型的事物,并且在“相似项目”方面存在重大差异,并且推荐基于用户-项目交互,而不是项目属性。

两者都可以很好地扩展,具体取决于您的需要和意思。没有理由怀疑 Solr。

关于 Mahout 和推荐器,简而言之,它有两个部分。一件 (Taste) 是实时的,不是基于 Hadoop 的,并且可以在一台机器上扩展到适度的数据集(可能是 10M 数据点)。Mahout 然后添加了一个基于 Hadoop 的非实时批处理实施,可以扩大规模。(广告:我是上述内容的主要作者,并且正在开发基于两者的下一代系统Myrrix。如果您对可扩展和实时 Mahout 风格的推荐器感兴趣,它将很有吸引力。)

如果您对一家公司感兴趣,该公司基于上述构建平台,包括 Solr,您应该查看NGDATA

于 2012-11-28T09:29:46.537 回答
3

你是对的,他们解决了两个不同的问题,到目前为止,我还没有看到/发现任何可以开箱即用的现有集成。

您可以做的是使用 Mahout 分类结果将更多信息添加到您的索引文档中,然后这些信息可用于提升目的。

关于您的最后一个答案 - Solr 可以扩展,使用刚刚发布的 4.0 版,它甚至可以比以前更好地扩展。但它解决了不同的目的,并且可以很好地扩展。

你的问题有点不具体,所以我希望这在某种程度上有所帮助。

干杯

于 2012-11-28T08:46:14.200 回答
3

如果您愿意亲自动手,您实际上可以使用 Solr + Collaborative Filtering 来制作一个非常好的搜索感知推荐系统。也就是说,给定一个搜索S,给定搜索者的购买历史,P_i并给定其他所有人的购买历史。然后,您可以返回满足搜索但根据搜索者可能希望基于其他类似用户的项目得到提升的结果。P_jj≠iS

这是我写的一篇博文,可以为您指明正确的方向: http: //opensourceconnections.com/blog/2013/10/05/search-aware-product-recommendation-in-solr/

于 2014-12-24T03:38:03.097 回答