这个问题可能在博客和Q& A网站上反复出现,但我还没有找到具体的答案。
我正在尝试仅使用购买历史记录为客户构建推荐系统。
如果我是对的,我们称之为基于内容的推荐,而不是协同过滤,因为它不涉及项目或用户偏好与项目的共同出现。
我的问题是多方面的:
注意:我看过Mahout(因为我熟悉Java和Mahout显然是利用Hadoop进行分布式处理),这样做的规模和优势都是经过充分测试的ML算法。
感谢您的帮助。任何例子都会很棒。感谢。
答案 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