【推荐系统】常用评价指标NDCG、HR、Recall、MRR解析
文章目录
【推荐系统】常用评价指标NDCG、HR、Recall、MRR解析1. 准备工作2. 计算这些指标 (@5)2.1 Accuracy(准确率)2.2 Recall(召回率、查全率)2.3 Precision(精确率、查准率)2.4 F1 score(精确率与召回率的调和均值)2.5 HR (命中率(Hits Ratio))2.6 MRR (平均倒数排名(Mean Reciprocal Rank))2.7 NDCG(归一化折损累计增益(Normalized Discounted Cumulative Gain))2.7.1 CG (累计增益 Cumulative Gain)2.7.2 DCG(折损累计增益 Discounted cumulative gain)2.7.3 NDCG (归一化折损累计增益 Normalized Discounted Cumulative Gain)2.7.4 当针对用户接下来要访问的单个物品时,NDCG定义如下 2.8 MAP(平均精度均值(Mean Average Precision)) 参考
1. 准备工作
本文将探讨 Accuracy、Recall、Precision、HR、F1 score、MAP、MRR、NDCG 等指标。
混淆矩阵需要用到。
这里以@5为例,计算这些指标。
给出预测的、真实的用户将要交互的物品,下面进行计算。
真实的:[A, B, C, D, E]预测的:[A, C, B, E, F]2. 计算这些指标 (@5)
——————————————————————————————————
这里假设总样本为6个(A, B, C, D, E, F),则
2.1 Accuracy(准确率)
含义 预测正确的样本在所有样本中的比例。在样本不平衡的情况下,不能作为很好的指标来衡量结果。 公式计算: ACC = (4 + 0) / 6 = 0.67
2.2 Recall(召回率、查全率)
含义: 预测正确的正样本在所有正样本中所占的比例,即表示有多少比例的用户-物品交互记录包含在最终的预测列表中。关注于用户感兴趣的物品(TP + FN 其实就是用户感兴趣的物品) 公式计算 Recall = 4 / (4 + 1) = 0.8
2.3 Precision(精确率、查准率)
含义 在全部预测为正的结果中,被预测正确的正样本所占的比例。关注于要推荐的物品(TP + FP 其实就是要推荐的物品) 公式计算 Precision = 4 / (4 + 1) = 0.8
2.4 F1 score(精确率与召回率的调和均值)
召回率和精确率是一对矛盾的指标,当召回率高的时候,精确率一般很低;精确率高时,召回率一般很低。
因此便有了:精确率与召回率的调和均值 F1 score。
公式
计算
F1 = 2 (0.8 * 0.8) / (0.8 + 0.8) = 0.82.5 HR (命中率(Hits Ratio))
含义 预测结果列表中预测正确的样本占所有样本的比例,即用户想要的项目有没有推荐到,强调预测的“准确性”。其实是针对于用户下一阶段只交互一个物品。 公式N,表示用户总数量。hits(i),表示第 i 个用户要访问的物品是否在推荐列表中,是则为1,否则为0。 计算 HR = 4 / 5 = 0.8 (要访问的有5个,成功预测了4个,因此为0.8)针对 A 的话,HR = 1针对 D 的话,HR = 0
2.6 MRR (平均倒数排名(Mean Reciprocal Rank))
含义 平均结果中的排序倒数,表示待推荐的项目是否放在了用户更显眼的位置,强调“顺序性”。也是针对于用户下一时刻只交互一个物品。(这里以) 公式N,表示用户的总数。pi,表示第 i 个用户的真实访问值在推荐列表的位置,若推荐列表不存在该值,则pi->∞。 计算 针对 A 的话,MRR = 1 / 1 = 1.0针对 B 的话,MRR = 1 / 3 = 0.33
2.7 NDCG(归一化折损累计增益(Normalized Discounted Cumulative Gain))
推荐系统通常为某用户返回一个 item 列表,假设列表长度为 K,这时可以用 NDCG@K 评价该排序列表与用户真实交互列表的差距。
2.7.1 CG (累计增益 Cumulative Gain)
考虑一个长度为K的列表, r e l i rel_i reli 代表 i 位置物品的相关度。(在推荐系统里就是0、1)
2.7.2 DCG(折损累计增益 Discounted cumulative gain)
DCG提出:如果有效结果在列表中排的较低的话,应该对列表的评分惩罚,惩罚和有效结果的排位有关。所以就加了衰减因子:
2.7.3 NDCG (归一化折损累计增益 Normalized Discounted Cumulative Gain)
DCG没有考虑到推荐列表和每个检索中真正有效结果(test items list)的个数,所以最后引入NDCG,就是标准化后的DCG。
2.7.4 当针对用户接下来要访问的单个物品时,NDCG定义如下
含义 表示归一化加入位置信息度量计算的前 p 个位置累计得到的效益。 公式N,表示用户的总数。pi,表示第 i 个用户的真实访问值在推荐列表的位置,若推荐列表不存在该值,则pi->∞。
2.8 MAP(平均精度均值(Mean Average Precision))
Average Precision(AP):平均精确率,在召回率从0到1逐步提高的同时也要保证准确率比较高,AP值尽可能的大。含义 用多个来衡量性能,多个类别AP的平均值。 公式参考
【1】https://blog.csdn.net/qq_51392112/article/details/129169738
【2】https://blog.csdn.net/qq_41750911/article/details/124082415