【问题标题】:how can I set a goal on recommendation system ?(mean average precision, baselineRmse)如何在推荐系统上设定目标?(平均平均精度,baselineRmse)
【发布时间】:2015-12-22 19:26:39
【问题描述】:

我开始使用ALS algorithm 开发离线推荐系统。 我需要为系统设定一个目标。

所以我想知道用于评估推荐系统的标准。 我已经知道 MAP(平均平均精度)和对 baselineRmse 的改进,我想知道:现代推荐系统中这些标准的性能如何设定我的目标。

【问题讨论】:

    标签: recommendation-engine evaluation precision-recall


    【解决方案1】:

    在推荐系统的早期,人们认为预测评分是个好主意。事实证明,这本身几乎没有用。如果您在 UI 中有足够的空间来显示一些推荐,您会选择您认为用户会选择的评分最高的推荐吗?这总是会导致糟糕的表现。评分预测是 RMSE 旨在衡量的。

    另一方面,MAP@k 旨在找到推荐器中的预测性。它衡量训练数据预测测试数据中的内容的程度。它还说明了推荐的顺序。最近发现推荐的排名/排序对推荐的有效性有更大的影响,因为如果你只能显示有限的数量,它们最好是最有可能导致用户采取行动的。

    MAP@k 还考虑了排名,如果您测量 MAP@1 和 MAP@10,您将看到 MAP 分数下降如果您的第一个推荐更有可能在测试数据比10号。这意味着您订购的建议大致正确。

    出于这些原因,我们使用 MAP@k。拆分您将在以后的休息中使用的“黄金标准”数据集并保持拆分静态 - 大约 80%-20% 将按随机选择或时间拆分,最近的 20% 用作测试拆分。在 80% 上构建模型,然后为 20% 中的每次交互获取推荐,并查看推荐是否包含测试集中实际交互的项目。所有这些的总和将进入 MAP@k 计算,k 取决于您要求的推荐数量。

    请参阅这些参考资料和一些我们必须这样做的工具:

    【讨论】:

      猜你喜欢
      • 2015-01-09
      • 2020-09-30
      • 1970-01-01
      • 2014-12-09
      • 2017-04-15
      • 1970-01-01
      • 2019-04-09
      • 2010-11-19
      • 2015-08-14
      相关资源
      最近更新 更多