CG(Cumulative Gain)表示累积增益,rel_i 表示查询结果列表中第 i 个位置的相关性值(相关程度可以理解为权重),即该结果和查询有多大联系,可以看出CG不会考虑查询结果的顺序,即如果随机打乱查询结果, CG 的值也不会变。比如有一个查询:『abc』

C G p = ∑ i = 1 p r e l i \mathrm { CG } _ { \mathrm { p } } = \sum _ { i = 1 } ^ { p } r e l _ { i } CGp​=i=1∑p​reli​

上图输出5条结果,每条结果的相关程度即增益为“Gain”所在的列,累积增益为“Cumulative Gain”所在的列,可以看到第二条查询结果和查询的相关程度最低,为3,如果将第2条结果和第5条结果交换位置,那么计算所得的 CG_5完全不变,也就是说 CG 在整体上考虑了查询结果的好坏,并不在意结果的顺序。

DCG_P中的 p 代表第 p 个位置的折扣累积增益,rel_i 表示第 i 个位置相关程度,其分子代表第 i 个位置结果的相关程度,分母是位置 i 的对数表示。如果将相关程度高的结果排序在列表的后面,会导致 DCG 的值变低,即惩罚了这种情况,所以以 DCG 作为目标的排序会使最相关的结果排列在最靠前的位置。

D C G p = ∑ i = 1 p 2 r e l i − 1 log ⁡ 2 ( i + 1 ) \mathrm { DCG } _ { \mathrm { p } } = \sum _ { i = 1 } ^ { p } \frac { 2 ^ { r e l _ { i } } - 1 } { \log _ { 2 } ( i + 1 ) } DCGp​=i=1∑p​log2​(i+1)2reli​−1​

nDCG_p=DCG_P / IDCG ,其值在0-1之间,为什么要这么做呢?举个例子:可以比较两个不同长度的查询结果列表,哪个结果更好一些;也可以比较不同的系统给出结果的好坏。但是,其有一个缺点: IDCG 通常难以全部获得,因为相关程度需要用户的反馈信息,而一个列表完整的反馈信息通常难以获得。

n D C G p = D C G p I D C G p \mathrm { nDCG } _ { \mathrm { p } } = \frac { D C G _ { p } } { I D C G _ { p } } nDCGp​=IDCGp​DCGp​​

可以看到 其中 IDCG为理想化的 DCG ,其值计算方式如下,|REL| 代表按相关程度排序后的查询结果列表,也就是这个列表最大的 DCG 值。

排序指标CG,DCG,NDCG相关推荐

  1. 【商业分析 04 搜索引擎指标CG,DCG,NDCG】

    CG (Cumulative Gain 累积收益) CG是可以用于评价基于打分/评分的个性推荐系统.假设我们推荐个物品,这个推荐列表的计算公式如下: 表示第个物品的相关性或者评分.假设我们共推荐个电影 ...

  2. CG, DCG, NDCG

    衡量搜索引擎质量指标(DCG -- Discounted Cumulative Gain) DCG的英文全称是Discounted cumulative gain,它是一个衡量搜索引擎算法的指标. 搜 ...

  3. 信息检索中的度量precison@k,recall@k,f1@k,MRR,ap,map,CG, DCG,NDCG

    转载自:信息检索中度量指标全解析 导读 由浅入深逐个解析信息检索中的度量指标. 我们如何评估前n个结果有多好? 问题1:二元相关性 让我们通过一个简单的玩具例子来理解各种评估指标的细节和权衡.我们有一 ...

  4. 理解NDCG排序指标

    理解NDCG排序指标 关于NDCG,wiki给点解释很详细,这里我谈谈我的理解. NDCG(Normalized discounted cumulative gain):是用来衡量排序质量的指标. 其 ...

  5. [LTR] 信息检索评价指标(RP/MAP/DCG/NDCG/RR/ERR)

    一.RP R(recall)表示召回率.查全率,指查询返回结果中相关文档占所有相关文档的比例:P(precision)表示准确率.精度,指查询返回结果中相关文档占所有查询结果文档的比例: 则 PR 曲 ...

  6. DCG, NDCG 公式及其实现

    DCG, NDCG Normalized Discounted Cumulative Gain(归一化折损累计增益) NDCG用作排序结果的评价指标,评价排序的准确性. 推荐系统通常为某用户返回一个i ...

  7. kdj买卖指标公式源码_“点金主图+副图+KDJ排序指标”公式源码

    在技术软件中的指标,都有其背后的公式在进行支撑,特别的指标更能帮助我们进行投资!知道一些股票技术指标公式源码,是有必要的!有两种指标源码,是可以让短线朋友的投资变得更加简化,他们就是点金主图+副图+K ...

  8. 【推荐系统排序指标】CG、DCG、NDCG、Hit Rate

    文章目录 一.CG,累计增益 Cumulative Gain 二.DCG,折损累计增益 Discounted cumulative gain 三.NDCG,归一化折损累计增益 Normalized D ...

  9. 推荐系统测评指标——计算DCG、IDCG以及nDCG的python代码

    1. 公式 DCG:DCG@K=∑i=1K2ri−1log2(i+1)DCG@K=\sum_{i=1}^{K}\frac{2^{r_i}-1}{log_2(i+1)}DCG@K=i=1∑K​log2​ ...

最新文章

  1. 机器学习是如何运作的?谷歌来告诉你
  2. GetLogicalDriveStrings FindFirstVolume和FindNextVolume
  3. android 自定义 child,Android自定义View
  4. C需语言程序中的基本控制结构有哪些,C语言程序的基本控制结构1.ppt
  5. java+random+oracle,oracle随机数 — dbms_random
  6. ML.NET Cookbook:(17)如何在分类数据上训练模型?
  7. git安装包国内镜像下载地址,速度快
  8. java用volatile或AtomicBoolean实现高效并发处理 (只初始化一次的功能要求)
  9. 利用SmsManager发送短信
  10. php连接云数据库服务器,服务器使用PHP连接sqlserver数据库
  11. 'scipy._lib.messagestream' 以及 'scipy.interpolate.interpnd.array' 解决办法
  12. LeetCode: Substring with Concatenation of All Words
  13. 互联网搜索的哪些环节 机器学习_机器学习、深度学习以及强化学习在金融领域有哪些应用?...
  14. 30秒让你有效的使用天池实验室资源
  15. 开源无国界!CSDN 董事长蒋涛、GitHub 副总裁 Thomas Dohmke 对话实录
  16. ckfinder 配置 php,GitHub - itxq/ckfinder: CkFinder3.5.1 for PHP 优化版 (添加又拍云存储)...
  17. linux ntp时间立即同步命令_Linux时间同步,ntpdate命令、ntpd服务详解
  18. 微信自定义菜单java_java微信开发API第四步 微信自定义个性化菜单实现
  19. TMS320F28335 - eCAP、eQEP
  20. 『Batch Normalization』Batch Normalization一文吃透

热门文章

  1. 【ONE·Linux || 基本工具介绍 】
  2. 计算机毕业设计ssm基于H的新冠防疫宣传网站的设计与实现
  3. SAP MRP设置默认值
  4. 【愚公系列】2023年01月 Java教学课程 004-Java语言三种注释
  5. IE提示”不支持当前兼容性设置,请在运行此Web页之前禁用兼容性视图”
  6. 群辉系统DS918+ DSM 7.11系统安装升级
  7. (附源码)SSM校园新闻发布系统JAVA计算机毕业设计项目
  8. 应用性能监控对DMS系统综合分析案例
  9. python 下载道客巴巴文档
  10. 哔哩哔哩导航背景写法