首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么基于排名的推荐使用NDCG?

为什么基于排名的推荐使用NDCG?
EN

Stack Overflow用户
提问于 2015-12-13 14:44:28
回答 1查看 1.1K关注 0票数 7

基于等级的推荐系统使用NDCG对推荐精度进行评估.然而,有时使用正确率和召回率来评价顶级推荐。这是否意味着当NDCG高,准确率高?但是我运行了一个ListRankMF算法,在movelens 100 k数据集上准确率很低,只有8%左右。NDCG与准确率的关系是什么?

EN

回答 1

Stack Overflow用户

发布于 2017-04-26 10:03:39

当推荐系统的目标是返回一些相关的结果时,NDCG是最有用的,而顺序是非常重要的。例如,推荐翻译,或推荐银行帐户。如果我们错过了相关的结果,这并不是有害的,但是对于一个好的用户体验,我们希望它们是一个有意义的顺序。

当推荐系统的目标是返回所有相关的结果时,回忆是最有用的,而顺序是不重要的。例如,潜在的医疗诊断或处方。如果我们错过相关的结果,那是有害的,因为这可能是正确的诊断或治疗。命令是不重要的,因为我们期望医生阅读所有的可能性,并利用他们的专家知识作出最后的决定。

假设有5种药物,我们可以推荐一位医生给病人(A到E),5种我们不应该推荐(F到J)。我们的推荐系统输出建议A、B、C、D。这给了我们以下评价:

  • NDCG = 1.0
  • 召回= 0.8

在这个案例中,回忆清楚地表明我们并没有尽力而为(因为我们没有推荐药物E),而NDCG让我们相信我们提出了完美的建议。

如果我们推荐书籍,那么NDCG就更合适了。由于可能有数百本相关的书,所以回忆并不是那么有意义,但我们不能指望一个用户通过一张数百本书的清单来选择一本书来阅读。NDCG会告诉我们,如果我们至少推荐一些有意义的子集什么是可能的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34252298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档