【推荐】排序模型的评价指标nDCG

简介: nDCG(Normalized Discounted Cumulative Gain)归一化折损累计增益是一种用于评估排序模型性能的指标,它考虑了两个方面:排序的正确性和相关性的程度。

介绍


 nDCG(Normalized Discounted Cumulative Gain)归一化折损累计增益是一种用于评估排序模型性能的指标,它考虑了两个方面:排序的正确性和相关性的程度。


 学习nDCG按照Gain、CG、DCG、iDCG、nDCG这个顺序来学习。


 假设现在你有一个标签序列:


image.png


  如果是打分数据集,那么A分数最高(3),D最低(0),这样真实顺序为ABCD;


  如果是点击数据集,那么AC分数有(1),BD无(0),这样标签为AC,顺序无所谓;



增益Gain

 增益Gain就表示第i个标签位置的得分。这里r e l ( i )表示分数,这个分数到底是什么?分数是什么什么取决于数据集的对应位置存的是什么。


image.png

  如果是用的是推荐的显示反馈,也就是打分数据集(1-5分),那么这个1-5的打分就是计算时要用的分数。如果用的隐式反馈,也就是用户点击数据集,那这个分数就是0-1。1表示用户点击过,0表示未点击过。


  那么在上面举例中:在打分数据集,可以说标签A的增益为3、B为2……



累计增益 CG


  累计增益 CG表示前k个位置累计得到的效益。CG必须要指定topk中的k才可以计算,不然在不同的情况下,A用户有100个标签、B用户只有10个标签,这样去统计CG就没意义了。


image.png


  那么在上面举例中:在打分数据集,如果标签为[A,B,C,D]或[B,A,C,D],CG@2 = 5。所以,顺序不影响CG得分。如果我们想评估不同顺序的影响,就需要使用另一个指标DCG来评估。


折损累计增益 DCG

 CG只是单纯累加相关性,不考虑位置信息。考虑排序顺序的因素,使得排名靠前的item增益更高,对排名靠后的item进行折损。CG与顺序无关,而DCG评估了顺序的影响。DCG的思想是:list中item的顺序很重要,不同位置的贡献不同,一般来说,排在前面的item影响更大,排在后面的item影响较小。


image.png


 那么在上面举例中:在打分数据集,如果标签为[A,B,C,D]:DCG@2 = 3/log(2) + 2/log(3) = 6.149;如果标签为[B,A,C,D]:DCG@2 = 2/log(2) + 3/log(3) = 5.616;我们发现肯定是越靠近原始标签顺序,折损累计增益越大。


理想折损累计增益 IDCG


  IDCG是指理想情况下的DCG,即DCG取得最大值的情况,就是数据集中的顺序。公式为:


image.png


  它和DCG没区别,只是DCG算的是模型预测出来的标签顺序去算分,IDCG算的是数据集中的真实标签顺序去算分,所以DCG不可能比IDCG大。


归一化折损累计增益 nDCG


  除以IDCG,把分数约束到[0,1]。


image.png

计算举例



 假如现在模型对标签A-B-C-D预测的分数是[0.111, 0.222, 0.001, 0.10]


 那么要对分数排个序即[0.222, 0.111, 0.10, 0.001]


 那么模型预测出来的标签顺序为B-A-D-C


 模型预测出来的标签顺序B-A-D-C在数据集里面的评分是[2, 3, 0, 1]


 nDGC@3 = [2/log(2) + 3/log(3) + 0/log(4)] / [3/log(2) + 2/log(3) + 1/log(4)] = 0.8174935137996165



目录
打赏
0
0
0
0
176
分享
相关文章
HiveSQL分位数函数percentile()使用详解+实例代码
HiveSQL分位数函数percentile()使用详解+实例代码
5646 0
HiveSQL分位数函数percentile()使用详解+实例代码
【王喆-推荐系统】模型篇-(task5)wide&deep模型
Wide&Deep是工业界中有巨大影响力的模型,如果直接翻译成中文是宽和深的模型,其模型结构如下所示:wide和deep让模型兼具逻辑回归和深度神经网络的特点。
1656 0
【王喆-推荐系统】模型篇-(task5)wide&deep模型
承上启下:基于全域漏斗分析的主搜深度统一粗排
两阶段排序(粗排-精排)一开始是因系统性能问题提出的排序框架,因此长期以来粗排的定位一直是精排的退化版本,业内的粗排的优化方向也是持续逼近精排。我们提出以全域成交的hitrate为目标的全新指标,重新审视了召回、粗排和精排的关系,指出了全新的优化方向
94028 3
承上启下:基于全域漏斗分析的主搜深度统一粗排
文章首先介绍了淘宝搜索的多阶段检索系统,包括召回、粗排和精排阶段。粗排模型的目标是优化商品的排序,以提高在召回集合中选择优质商品的能力。文章提到,粗排模型与精排模型的目标有所不同,粗排更注重腰部商品的排序,而精排更注重头部商品的排序。 此外,文章还探讨了模型的损失函数形式,发现原始的softmax损失函数在处理多正样本时存在问题,提出了改进的损失函数,使得模型在粗排阶段的表现更佳。最后,作者们总结了优化工作的进展,以及优化样本对齐,以实现更好的整体效果。
深度粗排模型的GMV优化实践:基于全空间-子空间联合建模的蒸馏校准模型
随着业务的不断发展,粗排模型在整个系统链路中变得越来越重要,能够显著提升线上效果。本文是对粗排模型优化的阶段性总结。
1853 0
深度粗排模型的GMV优化实践:基于全空间-子空间联合建模的蒸馏校准模型
【推荐】排序模型的调优
排序模型的选择 LR,GBDT,LR+GBDT,FM/FFM, 深度模型(wide & deep,DeepFM,DCN等等 )
288 1
经典神经网络论文超详细解读(七)——SENet(注意力机制)学习笔记(翻译+精读+代码复现)
经典神经网络论文超详细解读(七)——SENet(注意力机制)学习笔记(翻译+精读+代码复现)
3689 1
经典神经网络论文超详细解读(七)——SENet(注意力机制)学习笔记(翻译+精读+代码复现)
AI助理
登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问

你好,我是AI助理

可以解答问题、推荐解决方案等