【问题标题】:Understanding Spark MLlib ALS.trainImplicit input format了解 Spark MLlib ALS.trainImplicit 输入格式
【发布时间】:2016-12-28 11:25:15
【问题描述】:

我正在尝试使用 trainImplicit 根据购买历史创建推荐系统。我的输入在域 [1, +inf) 中(观看次数和购买次数的总和)。

所以我的输入 RDD 的元素如下所示:[(user_id,item_id),rating] --> [(123,5564),6] - 用户(id = 123)与项目(id=5564)交互了 6 次。

我是否应该在我的 RDD 元素中添加 [(user_id,item_id),rating] --> [(123,2222),0],这意味着给定的用户从未与给定的项目进行过交互,或者 ALS.implicitTrain 会隐含地这样做?

【问题讨论】:

    标签: python pyspark collaborative-filtering


    【解决方案1】:

    没有必要(对于隐式)也不应该这样做(对于显式),所以在这种情况下,您实际拥有的只有低音数据。

    【讨论】:

    • 您的意思是说,在零数据集上训练的模型会给出与在不零数据集上训练的模型大致相同的建议吗?或者这些额外的零会影响结果?
    • 隐式不会影响结果,显式会显着影响结果。
    猜你喜欢
    • 2016-10-18
    • 2014-09-30
    • 2017-11-15
    • 2014-12-02
    • 1970-01-01
    • 1970-01-01
    • 2017-12-11
    • 2015-11-05
    • 2016-01-11
    相关资源
    最近更新 更多