我发现了类似的问题,但答案并不能让我满意。基本上我想在mahout中实现基于购买(甚至评级)的项目建议。 在mahout中,您似乎有一个用户项目模型,并且推荐是关于用户的。现在我明白我们可以用item替换术语user并且有一个item - item reccomendation但我认为它不会按预期工作。例如,如果我们有这些数据:
User Item
1 1
1 2
1 3
2 1
2 3
3 1
如果我在第1项页面并且我要求推荐,我期待第3项作为结果,因为它被选择超过第2项。我不明白这是否可以在mahout中轻松配置以及如何。
谢谢
答案 0 :(得分:1)
这不是向项目推荐项目的情况,不是。
您的意思是,在某个项目的页面上,您想要显示最常购买的商品吗?这实际上比推荐人问题更简单,因为答案不是个性化的;它不依赖于用户。那很好。
当然,您仍然需要用户数据。在非分布式Mahout框架中,您可以使用“boolean pref”DataModel
,GenericItemBasedBooleanPrefDataModel
和ItemSimilarity
之类的LogLikelihoodSimilarity
指标轻松实现此目标。 。只需致电Recommender.mostSimilarItems()
。
它实际上回答的更加智能,而不仅仅是告诉你这个项目最常买的东西 - 这往往会有利于那些只是经常购买的物品,完全停止。该指标将提取那些因其整体受欢迎程度而异常频繁购买的指标。