基于内容的推荐量表

时间:2015-04-23 19:37:48

标签: apache-spark scikit-learn mahout recommendation-engine mahout-recommender

这个问题可能在博客和Q& A网站上反复出现,但我还没有找到具体的答案。

我正在尝试仅使用购买历史记录为客户构建推荐系统。

  • 我们说我的应用程序有n个产品。
  • 根据属性(如国家/地区,类型,价格)计算所有n种产品的项目相似度
  • 当用户需要推荐时 - 为用户u循环以前购买的产品p并获取类似产品(相似性在上一步骤中完成)

如果我是对的,我们称之为基于内容的推荐,而不是协同过滤,因为它不涉及项目或用户偏好与项目的共同出现。

我的问题是多方面的:

  1. 是否有任何现有的可扩展ML平台可以解决基于竞争的推荐问题(我可以采用不同的技术/语言)
  2. 有没有办法调整Mahout以获得此结果?
  3. 分类是处理基于内容的推荐的一种方式吗?
  4. 图表数据库是否适合解决问题?
  5. 注意:我看过Mahout(因为我熟悉Java和Mahout显然是利用Hadoop进行分布式处理),这样做的规模和优势都是经过充分测试的ML算法。

    感谢您的帮助。任何例子都会很棒。感谢。

1 个答案:

答案 0 :(得分:0)

所谓的项目推荐器是预先计算相似性的自然候选者,因为项目的属性很少改变。我建议你预先计算每个项目之间的项目相似度,并且可能存储每个项目的前K,如果你有足够的资源,你可以将相似性matix加载到主存中以进行实时推荐。

在Mahout中查看我对这个问题的回答:Does Mahout provide a way to determine similarity between content (for content-based recommendations)?

示例是如何计算项目之间的文本相似性,以及如何将预先计算的值加载到主存储器中。

有关保存值的不同数据结构的性能比较,请查看以下问题:Mahout precomputed Item-item similarity - slow recommendation