【问题标题】:Apache Mahout - Generating a recommendation using EuclideanDistanceSimilarityApache Mahout - 使用 EuclideanDistanceSimilarity 生成推荐
【发布时间】:2015-04-03 23:45:45
【问题描述】:

我一直在使用 Mahout 库来实现推荐算法。我使用了EuclideanDistanceSimilarity 类,到目前为止我的结果似乎还不错。

我的DataModel currenty 包含 100 个项目的 500 个评分,这些项目按 1 到 5 的等级进行评分,例如

客户 itemID 评分

____1 ____2_____8

但是Apache Mahout API's 声明“请注意,距离没有以任何方式归一化;比较从不同域(例如不同的评级量表)计算的相似性是无效的。在一个域内,归一化没关系,因为它不会改变顺序。"

随着我获得更多客户和商品,这会影响结果的有效性/可靠性吗?

【问题讨论】:

    标签: mahout euclidean-distance mahout-recommender


    【解决方案1】:

    引用的重要部分是: 只要您使用相同的 5 星评级量表添加更多数据,例如来自同一系统(域) 的客户和商品,就无需 规范化数据。

    如果您开始添加来自其他系统的数据,例如使用7 星评级,您必须以某种方式标准化这些评级,以实现与您现有的 5 星等级的可比性。

    让我再补充几句关于基于评级的推荐:

    总的来说,您的方法很好。评分的唯一问题是,用户的评分往往完全不同。一个用户可能会为她喜欢的项目提交“3”,而另一个用户会分配“5”。因此,一些推荐者会尝试其他方法——例如将数字评分转换为布尔值,其中任何评分都将被视为对该项目的一般“兴趣”。

    我强烈建议您获取一些关于您的数据集的统计信息 - 例如平均评分。如果这应该接近 1 或 5(意味着大多数评级要么非常差,要么非常好,并且分布不均),您可能需要尝试布尔方法...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-17
      • 2014-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-29
      相关资源
      最近更新 更多