我一直在关注用户行为数据,1.喜欢2.不喜欢3.评分4.查看过的产品5.购买的产品
火花MLlib支持置信度为0或1的隐式行为数据,请参阅(http://spark.apache.org/docs/latest/mllib-collaborative-filtering.html)。
例如,用户1查看了产品A,则模型将类似于
1,A,1(用户ID,产品ID,二进制置信度得分)
但是通过观察行为的本质,喜欢的产品比看到的产品具有更强的信心。购买的商品比观看的商品更有信心。
如何根据行为类型对数据建模?
实际上,隐式数据不必为0或1。这意味着将值视为可信度或关联强度,而不是等级。您可以简单地对显示较高的置信度的用户和项目之间的关联进行建模。赞胜于视图,购买胜于赞。
实际上,负置信度可以适合此框架(并且我知道MLlib实现了这一点)。不喜欢可能意味着得分为负。
的确,您需要调整哪些值。如果您没有更好的主意,我认为选择与相对频率相对应的值是合理的。例如,如果一般的浏览量比喜欢的浏览量多50倍,那么喜欢的价值可能就是浏览量的50倍。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句