现代推荐引擎有多好?

时间:2014-11-24 14:05:48

标签: recommendation-engine

新的推荐系统必须具备何种推荐质量才能具有竞争力?

通过"推荐质量"我是说跟随。让我们说,推荐系统呈现用户X项。此后我问他,他或她实际上有多少人喜欢(可能会买)而事实证明他喜欢他们中的Y.推荐质量为Y / X(最佳可能值为1,表示用户喜欢所有推荐项目)。

推荐的质量

  1. 平均而且
  2. 最好的
  3. 推荐系统大约有?

    更新1: Here(第64页)作者写道,2007年Netflix奖前2名算法的RMSE分别达到0.8914和0.8990。

    RMSE的定义可以在第63页找到,但我不明白这意味着什么。

2 个答案:

答案 0 :(得分:2)

你实际上提出了一个非常有趣的问题。学术界仍在进行一场关于a)什么是好的"推荐甚至意味着,和b)用于预测准确性的指标,以及其他评估措施。

你问:

  

普通和最佳推荐系统的推荐质量大致为什么?

答案是 - 它取决于很多不同的东西。简短的回答是没有真正同意的平均值#34;或者"最好的"对于一般的推荐系统,您可能会找到特定推荐系统的基准 - 例如电影推荐系统。

为了帮助您提供更多背景信息:

均方根误差用作预测精度的度量。即鉴于一系列物品(面包,牛奶,咖啡,橙汁),系统可以预测我对这些物品的评级,或预测我将购买这些物品的程度。

当您为一组项目拥有一组用户的预测评级时,您可以使用RMSE,并且您还可以获得这些项目的实际评级。您通常会在"离线"中使用RMSE。试验你的真实数据集。在这个过程中你会隐藏"一些真正的评级,看看系统是否可以预测隐藏的评级。 "错误" RMSE的一部分是预测评级与实际评级之间的差异。然后首先对每个误差求平方,然后对该用户的项集合中的这些误差的平均值(平均部分),然后取平方根(名称的根部分)。由于RMSE首先对误差进行平方,因此与其他精度指标(如平均绝对误差(MAE))相比,它会不成比例地惩罚大误差。

除了做出准确的预测之外,做出好的建议还有很多。这就是没有标准/平均数的原因。有一系列不同的指标用于准确性,然后准确度只是测量推荐系统效率的一小部分,其他部分都有多个指标也可以使用!它还取决于您推荐的项目。推荐某人约会,与推荐在线购买的食物几乎不一样。我看过0.8+ RMSE的电影推荐人得分和0.2+ RMSE的推荐工作得分。

如果您想要更好地(无数学)了解评估推荐系统的复杂性,我建议您阅读以下文章:

Herlocker,Konstan,Terveen,Diedl - "评估协同过滤推荐系统" (2004) - 是一篇很好的论文,开始了解可用于评估RS性能的不同方法。

另一篇好文章是McNee,Riedl和Konstan - "准确性并不总是好:准确度指标如何影响推荐系统" (2006)

答案 1 :(得分:1)

对于一个好的,快速且可完全自定义的推荐引擎,我可以推荐http://www.sajari.com。它提供了根据地点,流行度,数据相似性,新近度等来从给定数据集中提升推荐结果的能力 - 基本上定制您自己的推荐引擎。一个好的推荐系统至少需要那些具有竞争力的东西,IMO,最重要的是它不是一个黑盒子,你可以控制输出。