当前位置:  开发笔记 > 编程语言 > 正文

如何计算推荐系统评估的AUC(曲线下面积)

如何解决《如何计算推荐系统评估的AUC(曲线下面积)》经验,为你挑选了1个好方法。

我对计算AUC(曲线下的面积)以评估推荐系统结果感到困惑。

如果我们有交叉验证数据,例如(用户,产品,等级)。如何为每个用户选择正样本和负样本来计算AUC?

选择在数据集中为每个用户出现的产品作为正样本,而在数据集中没有出现其余的作为负样本,是否很好?我认为这种方法无法找出那些“真实”的负样本,因为用户有机会喜欢这些在负样本中的产品。



1> Dan Jarratt..:

“ ROC曲线绘制了回想(真实阳性率)相对于辐射(虚假阳性率)的图表,以增加推荐集的大小。” Schröder,Thiele和Lehner,2011年(PDF)

通常,您将保留一部分数据作为测试数据。对于特定用户,您将训练(例如)她80%的数据,并尝试根据剩余20%的数据来预测哪些项目(数据集中所有项目中的哪一个)会显示出偏好。

假设您正在建立前20名推荐者。您为用户推荐的20个项目为正项目,不推荐的项目为负项目。因此,“正肯定”项是您在“前N名”列表中显示的项,与用户在其保留的测试集中所喜欢的项匹配。误报是您的Top-N列表中与她坚持的测试集中的首选项不匹配的项。真正的负面项目是您未包括在Top-N建议中的项目,也是用户在其坚持的测试集中未包含在其偏好项目中的项目。False Negative是您未包含在Top-N建议中的项目,但确实与用户在其坚持的测试集中所喜欢的项目相匹配。那就是混乱矩阵。

推荐阅读
刘美娥94662
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有