nDCG学习笔记

简介: 参考:http://en.wikipedia.org/wiki/Discounted_cumulative_gain Normalized Discounted Cumulative Gain:一种对搜索引擎或相关程序有效性的度量。

参考:http://en.wikipedia.org/wiki/Discounted_cumulative_gain

Normalized Discounted Cumulative Gain:一种对搜索引擎或相关程序有效性的度量。

2个假设:

    1.强相关的文档出现在结果列表越靠前(rank越高)越有用。

    2.强相关文档比弱相关文档有用,比不相关文档有用。

DCG来源于一个更早的、更基础的方法---CG。

CG不考虑结果集中的序信息,单纯把分级相关度相加。位置P处的CG值是:

                   

是搜索结果列表的位置i处结果的分级相关度。

改变搜索结果的位置顺序不会影响p的CG值。也就是说:移动一个相关性高的文档d_{i}到一个评级较高但相关性不大的文档上面不改变CG的值。

DCG取代CG作为一个更准确的测量方法。

 如果一个强相关的文档排名靠后则应该受到惩罚,位置P处的DCG值是:

             

另一个DCG计算公式更加强调相关性

 

若分级相关度只在0和1取二值的话,二公式效果相同

nDCG

根据Query的不同,结果列表的长度也不同,所以这一度量考虑了正规化问题

IDCGp(Ideal DCG)是在一个完美的排序下,p所具有的最大DCG值

这样一来无论Query是什么,nDCG都可以得到一个平均值,因此不同的Query之间的效能就可以做比较了。

完美的排序算法会使DCGp和IDCGp相同,从而使nDCGp为1,nDCG的取值在0到1之间

例:

结果列表中的6篇文档D1,D2,D3,D4,D5,D6,判定了他们的相关度是3,2,3,0,1,2,则:

                    

一个理想的排序应该是:3,3,2,2,1,0,所以

             

nDCG的缺点是:当排序的数很少(比如:只有1-3个),那么任何排序的nDCG值都比较接近,所以可以考虑使用AUC(area under the ROC curve)。

AUC学习参考文章:http://blog.csdn.net/chjjunking/article/details/5933105 

 

目录
相关文章
|
移动开发 JavaScript 小程序
uView Cell 单元格
uView Cell 单元格
439 1
|
JSON 移动开发 JavaScript
多款顶级好用的 Vue 表单设计器测评推荐,可拖拽生成表单
Vue 前端开发中,表单组件是排在前三的高频使用的组件,如何快速构建表单,节省力气,避免重复造轮子呢,选择一款适合自己的前端表单设计器就非常重要了。本文介绍 4 款顶级好用的 Vue 表单设计器,其中最后一款卡拉云,是新一代低代码开发工具,不仅能自动生成各类表单,还可以拖拽生成其他常见的前端组件,一行代码连接前后端数据,可快速接入数据库/api。它是表单设计器的超集,可直接生成属于你的后台管理工具,无敌好用。
4300 0
多款顶级好用的 Vue 表单设计器测评推荐,可拖拽生成表单
|
4月前
|
Web App开发 数据挖掘 网络安全
Playwright MCP 实现小红书全自动发布的全流程指南
本文为小红书运营者带来一份实用指南:通过Playwright MCP技术,只需一次手动登录即可实现图文自动发布。教程从环境配置到完整脚本编写,手把手教你搭建稳定高效的无人值守发布系统,彻底解决登录验证难题。
|
缓存 移动开发 网络协议
为什么会TCP粘包?读完这篇你就懂了
在网络编程中,TCP粘包问题指发送方多个数据包在接收方粘成一包,导致数据解析混乱。其原因包括Nagle算法合并小包、发送方收集多个小分组及接收方缓存积压等。解决方法有:固定消息长度、包尾加特殊标记(如\r\n)、包头加包体长度等。选择合适方案可确保数据传输的可靠性和准确性。
|
机器学习/深度学习 数据可视化 数据挖掘
R语言包管理:如何使用CRAN与Bioconductor
【8月更文挑战第28天】CRAN和Bioconductor是R语言包的两个重要来源,分别覆盖了广泛的科学计算和生物信息学领域。通过掌握CRAN和Bioconductor的包管理技巧,用户可以更加高效地利用R语言进行数据分析、统计建模和生物信息学研究。在实际应用中,建议根据具体需求选择合适的包,并合理设置镜像站点以提高下载速度。同时,定期更新和卸载不再需要的包,有助于保持R环境的整洁和高效。
|
域名解析 监控 负载均衡
【域名解析DNS专栏】智能DNS解析:自动选择最快服务器的奥秘
在互联网中,智能DNS解析作为一项先进技术,根据用户的网络环境和服务器负载情况,自动挑选最优服务器进行域名解析,显著提升访问速度与体验。其工作原理包括实时监控服务器状态、分析数据以选择最佳路由。通过负载均衡算法、地理位置识别及实时性能测试等策略,确保用户能获得最快的响应。这项技术极大提高了互联网服务的稳定性和效率。
516 5
|
存储 安全 API
【译】使用“不安全“的Python加速100倍代码运行速度
【译】使用“不安全“的Python加速100倍代码运行速度
191 0
|
调度
解释一下为什么协程比线程更轻量级。
解释一下为什么协程比线程更轻量级。
722 1
|
Python
conda升级python版本
conda升级python版本
2065 0
|
数据格式 流计算
【UCIe】UCIe 支持的协议及操作模式
【UCIe】UCIe 支持的协议及操作模式
3528 1
【UCIe】UCIe 支持的协议及操作模式