推荐系统系列——推荐算法评价指标
文章目录
- 同步读书之《菜根谭》
- 9、静坐观心,真妄毕现
- 10、得意早回头,拂心莫停手
- 推荐算法评价指标
- 1 评分预测指标
- 1.1 符号定义
- 1.2 平均绝对误差
- 1.3 均方根误差
- 1.4 覆盖率
- 2 集合推荐指标
- 2.1 混淆矩阵
- 2.2 准确率
- 2.3 精确率
- 2.4 召回率
- 2.5 F1值
- 2.6 ROC与AOC
- 2.7 命中率
- 3 排名推荐指标
- 3.1 半衰期效用指标
- 3.2 折现累积收益DCG
- 3.3 排序偏差准确率RBP
- 4 其它评估指标
- 4.1 多样性
- 4.2 新颖性
- 4.3 稳定性
- 参考文献
同步读书之《菜根谭》
9、静坐观心,真妄毕现
夜深人静独坐观心,始觉妄穷而真独露,每于此中得大机趣:既觉真现而妄难逃,又于此中得大惭忸(niǔ)。
妄:非分,越轨。妄穷:私心杂念都没有了。
惭忸(niǔ):惭愧。
10、得意早回头,拂心莫停手
恩里由来生害,故快意时,须早回首;
败后或反成功。故拂心处,莫便放手。
推荐算法评价指标
要评估一个推荐模型的好坏,需要通过不同指标从多个角度评价推荐系统,按照推荐任务的不同,推荐质量度量方法可以分为三大类:
(1)评分预测指标:许多推荐系统根据物品的评分进行推荐,因而可以根据评分预测指标进行评价。
(2)集合推荐指标:许多推荐系统最后得到的是推荐物品的集合(例如Top-N推荐任务),因而可以根据集合推荐指标进行评价。(3)排名推荐指标:按排名列表对推荐效果加权进行评估,既可以适用于评分预测任务也可以用于集合推荐任务[11]。
1 评分预测指标
常见的指标有平均绝对误差(MAE)、均方根误差(RMSE)、标准化平均误差(NMAE)以及覆盖率(Coverage)。
1.1 符号定义
1.2 平均绝对误差
平均绝对误差指的是所有测试集中推荐预测的得分与实际用户的打分之间的差值之和的均值。对应公式如下所示:
对应单个用户u的标准平均绝对误差为,对应公式如下所示:
1.3 均方根误差
均方根误差指的是所有测试集中的物品推荐预测的得分与实际用户的打分之间的差值平方和开根号的均值。对应公式如下所示:
1.4 覆盖率
此处更正Cu:Cu里面应改为用户u的近邻集合不为空且未被用户u评分的物品集合。
2 集合推荐指标
常见的指标有准确率、精确率、召回率、F1值等。
2.1 混淆矩阵
提到上面几个经典的指标我们必须要先了解一下混淆矩阵的概念。混淆矩阵是评价系统精度的一种n行n列的矩阵,它的每一行代表预测值,每一列代表真实值。
如表4.1所示,混淆矩阵主体为两行两列,两行分别代表样本的真实值的Positive或者Negative状态;而两列分别代表预测值的Positive或者Negative状态。而这样就组合出了关于真实值和预测值的四种状态:
- 真阳性(True Positive, TP):用户给物品的打分是正例,并且推荐系统预测的结果也是正例
- 真阴性(True Negative, TN):用户给物品的打分是负例,并且推荐系统预测的结果也是负例
- 假阳性(False Positive, FP):用户给物品的打分是负例,但是推荐系统预测其为正例
- 假阴性(False Negative, FN):用户给物品的打分是正例,但是推荐系统预测其为负例
2.2 准确率
准确率指的是在所有物品中,推荐系统预测正确的物品数占总物品数的比例,对应的公式如下所示:
2.3 精确率
精确率指的是在所有预测为正例的物品中,预测正确为正例所占的比例,对应的公式如下所示:
2.4 召回率
召回率指的是在所有实际为正例的物品中,预测正确为正例所占的比例,对应的公式如下所示:
2.5 F1值
F1-值就是精确率和召回率的调和平均值,F1-值认为精确率和召回率一样重要,其取值范围从0到1的,1代表模型的输出最好,0代表模型的输出结果最差,对应的公式如下所示:
2.6 ROC与AOC
ROC曲线是以FPR为x轴,TPR为y轴得到的曲线,而AUC是指ROC曲线下坐标轴围成区域的面积。AUC的实际意义是在该区域把正例的物品预测为1的概率大于把负例物品预测为1的概率。对应公式如下所示:
2.7 命中率
命中率是目前TOP-K推荐研究中非常流行的评价指标,表示测试集中的物品出现在TOP-K推荐列表中的用户数与用户总数的比值。对应公式表示如下:
3 排名推荐指标
由于许多用户只对推荐列表中排名靠前的物品感兴趣,所以它们的重要性也远大于排名靠后的物品,所以出现了排名推荐指标来按排名列表对推荐效果进行加权评估。常见的指标有半衰期效用指标HLU、折现累积收益DCG、排序偏差准确率RBP等。
3.1 半衰期效用指标
半衰期效用指标(Half Life Utility index,HLU)认为用户与浏览某商品的概率与其在推荐列表中的位置相关,而且是呈指数递减相关,它能够度量用户打分与系统默认评分之间的差距。对应的公式如下所示:
3.2 折现累积收益DCG
折扣累计收益(discounted cumulative gain, DCG)认为推荐列表中排名越靠前的物品应该越被用户所喜欢,其公式如下所示:
b是自由参数;L为推荐列表长度。
3.3 排序偏差准确率RBP
排序偏差准确率(rank-biased precision,RBP)基于的假设是用户总是先浏览推荐列表首位的商品,然后依次以概率p浏览下一个,以1-p的概率不再浏览,RBP公式如下所示:
4 其它评估指标
除了上述评价指标之外,由于人们对于推荐系统的用户体验要求越来越高,所以诞生出诸如多样性、新颖性、稳定性等指标。
4.1 多样性
4.2 新颖性
推荐系统的新颖性指的是能够向用户推荐非热门非流行商品的能力。一般来说,系统所推荐商品与用户已知物品相似度越小,新颖度越高,所以其公式表示如下:
4.3 稳定性
稳定性是指推荐系统的预测结果在短期内不会发生明显变化,只有这样才会被用户所信任。假设已知用户评分集合R1,对应的预测评分集合为P1,经过一段时间后,用户对之前未评分的物品进行了评分,此时我们再对P1中的物品进行预测评分,得到预测评分集合P2,则系统的稳定性可以表示如下:
参考文献
[11] Terryn W C , World. Discounted cumulative gain[J]. Fer Publishing, 2011.
推荐系统系列——推荐算法评价指标相关推荐
- 简单在线音乐推荐网 基于用户、物品的协同过滤推荐算法 使用Python+Django+Mysql开发技术 在线音乐推荐系统 音乐网站推荐系统 个性化推荐算法开发 人工智能、大数据分布式、机器学习开发
简单在线音乐推荐网 基于用户.物品的协同过滤推荐算法 使用Python+Django+Mysql开发技术 在线音乐推荐系统 音乐网站推荐系统 个性化推荐算法开发 人工智能.大数据分布式.机器学习开发S ...
- mahout 推荐算法 java_推荐系统之推荐算法实战:mahout推荐算法框架
1.Mahout介绍 1.1概述 根据百度的解说,Mahout 是 Apache Software Foundation(ASF) 旗下的一个开源项目,提供一些可扩展的机器学习领域经典算法的实现,旨在 ...
- 【个性化推荐系统】推荐算法
推荐算法 1. 推荐模型构建流程 2. 最经典的推荐算法:协同过滤推荐算法(Collaborative Filtering) 3. 相似度计算(Similarity Calculation) 4. 协 ...
- 推荐算法评价指标(ACC、查全率、查准率、F1-Score、ROC、AUC,P-R)
文章目录 混淆矩阵 二级指标 三级指标 F1-Score ROC(AUC) PR曲线 推荐系统的评价指标很多,今天介绍:准确率(ACC).查准率(P精确率).查全率(R召回率).F1-score.AU ...
- 《网络电视节目推荐系统----基于用户协同过滤与基于内容的推荐算法的后融合》
文章目录 一.什么是推荐系统 二.产生原因 由上我们可以得知,推荐系统产生的两大原因 三.应用场景 四.推荐系统的评测方法 1. 推荐系统的三大实验方法 a. 离线实验: b. 用户调查 c. 在线实 ...
- 带你走进微博背后的大数据原理:微博推荐算法
在介绍微博推荐算法之前,我们先聊一聊推荐系统和推荐算法.有这样一些问题:推荐系统适用哪些场景?用来解决什么问题.具有怎样的价值?效果如何衡量? 推荐系统诞生很早,但真正被大家所重视,缘起于以" ...
- python推荐算法课程_Python数据科学:全栈技术详解4-推荐算法
作者:Ben,多本数据科学畅销书作家,先后在亚信.德勤.百度等企业从事电信.金融行业数据挖掘工作. 配套学习教程:数据科学实战:Python篇 https://edu.hellobi.com/cour ...
- 转载:微博推荐算法简述
本文来自于:http://www.wbrecom.com/:图就不贴了,有兴趣去看原文. 在介绍微博推荐算法之前,我们先聊一聊推荐系统和推荐算法.有这样一些问题:推荐系统适用哪些场景?用来解决什么问题 ...
- 微众银行在联邦推荐算法上的探索及应用(文末附PPT下载链接)
分享嘉宾:谭奔 微众银行 高级研究员 编辑整理:王少华 内容来源:微众·AI 出品平台:DataFunTalk 导读:现如今推荐系统已经得到了广泛的应用,其性能通常是随着数据量的增加而提高.但现实中, ...
最新文章
- 切换不了摄像头 高拍仪_手机摄像头模组支架保护膜的变革之路
- jquery学习手记(7)Data_utility_index方法
- Android屏幕方向调整的两种方式
- Linux / openwrt / 安装 Web GUI 和 ftp server
- C# Find() 与 FindAll()方法的使用
- EasyUI(前端框架)
- 啊哈c语言逻辑的挑战课后题答案,啊哈C语言 逻辑的挑战(修订版)pdf
- 数字电路与逻辑设计计算机专业,数字电路与逻辑设计试卷(A)(04级计算机、网络工程、软件工程专业).doc...
- Cboard框架搭建及使用
- java web表单系统
- 标题:《东邪西毒》台词全本(国语版) (转)
- unity 使用像素实现墙面子弹留孔效果(给已有贴图模型叠加贴图)
- springboot医院预约挂号系统在线视频点播系统毕业设计毕设作品开题报告开题答辩PPT
- 事务的并发读问题(简图)
- gamemaker学习笔记:截屏
- shell双引号、单引号、反撇号的使用
- Understanding and Diagnosing Visual Tracking Systems
- EtherNet/IP协议开发2:理论学习
- SteamVR Unity Tool Kit(二):激光与移动
- 用计算机语言写结婚祝福语,抖音很火的一到10结婚祝福语
热门文章
- allergro音乐术语什么意思_rit(这是音乐术语)什么意思?
- 找出只包含1的最大矩形c语言,一些简单的编程练习题
- 电脑重启很久一直在转_电脑重启后鼠标一直在转圈怎么办
- 机器学习笔记(一)微积分
- 移动无线网卡服务器,贵阳移动无线网卡月租
- 【Codecs系列】HEVC中三种Intra帧类型的区别:BLA/IDR/CRA
- matlab——GUI概念
- Vue基础—模版语法指令精细版
- python-yacs库的用法
- 协同办公OA项目:搭建“自定义”OA办公系统,原来就这么简单!