我花了一天半的时间理解auc,其中自己把自己绕进去了,其实最终也没有理解的很是透彻,只是记住了auc的计算方法。

大纲:auc的理论推导及示例

推荐系统中auc计算公式

简便方法1

简便方法2

auc的理论推导及示例

提到auc,首先想到的就是ROC曲线,auc=ROC曲线下与xy轴的面积。ROC曲线的x轴为伪阳率,y轴为真阳率。

混淆矩阵

这里需要注意的是:FN为伪阴(预测与真实不一致为伪,预测结果negative为阴),同理TN是真阴(预测与真实结果一致,预测结果为阴)。

真阳率=真阳个数/(真阳数+伪阴数) (预测为1&真实为1)/预测为1

伪阳率=伪阳个数/(伪阳数+真阴数)(预测为1&真实为0)/预测为0

当真阳率等于伪阳率时我们认为真实为1预测为1的概率等于真实为0预测为1的概率。整个的正确率为0.5.

在推荐系统中我们希望真实为1预测为1的概率尽量大于真实为0预测为1的概率。如下图所示。

举个简单例子,计算下图的auc

TP=3,FN=1,TPr=3/4.FP=2,TN=2,FPr=1/2

推荐系统中auc计算公式

对于推荐系统来说我们事判断排序是否正确,比如ctr预估,得到的是点击与否的概率值,然后排序,我们想看这个ctr排序的auc。将每个ctr作为划分正负样本的阈值,大于等于阈值的被划分为正样本,小于阈值的被划分负样本。

举个例子 :

分别采用每个值作为阈值来划分正负样本。

0.1为阈值时

得到最后的面积为13/16.

简便算法1

auc=(正样本的排序序号-正正样本对)/正负样本对个数

存在问题是当正负样本值一样时,排序是把正样本的值排在前边还是负样本的排在前边呢?会出现auc的奇异情况。所以以上公式不适用于正负样本值一样的情况。

简便算法2

以下有另外一种解释,是正样本的值大于等于负样本的值,那么负样本值小于正样本值的个数是几个?

正样本和负样本是两个互不纠缠的正态分布,其中有M个正样本,N个负样本。

阈值如果遍历所有正样本,则每个正样本都比N个负样本大,因此,积分下来,就是N+N+N+…+N = M * N,而积分的区域是M * N,因此,这种理想状态下,得到了AUC为

以上例子里,

正样本的阈值为0.9时,比4个负样本的值大,

正样本的阈值为0.8时,比4个负样本的值大,

正样本的阈值为0.6时,比3个负样本的值大,

正样本的阈值为0.3时,比2个负样本的值大。

总共时16个正负样本对,正样本比负样本大的有4+4+3+2=13个

auc=13/16

基于以下大佬讲解总结的,如何理解机器学习和统计中的AUC?​www.zhihu.com千寻:图解AUC和GAUC​zhuanlan.zhihu.com

算法衡量auc_AUC理解相关推荐

  1. 重磅MIT开源人工智能算法评估和理解对抗Logit配对的稳健性

    重磅MIT开源人工智能算法评估和理解对抗Logit配对的稳健性摘要:我们评估了对抗性Logit Pairing的稳健性,这是最近针对广告范例提出的防御措施. 我们发现,使用Adversarial Lo ...

  2. [react] 说说你对React的reconciliation(一致化算法)的理解

    [react] 说说你对React的reconciliation(一致化算法)的理解 就是启发式Diff算法 ,时间复杂度从N的三次方下降到N ,通过博客途径了解到实现的策略是 tree diff , ...

  3. 协同过滤算法的简单理解《推荐系统实践》

    协同过滤算法的简单理解 本文主要是讲解一下<推荐系统实践>中UserCF和ItemCF这两种基于领域的推荐算法,写出自己的理解. UserCF(基于用户的协同过滤算法) 这种推荐算法的出发 ...

  4. Mean-shift算法的直观理解

    Mean-shift算法的直观理解 0 前言 暑假的时候参加移动计算竞赛打了下酱油,接触到了Mean-shift算法,用于做目标跟踪.在那段时间也在网上查阅了不少关于这个算法的资料,可是总感觉它们都比 ...

  5. 工作6年,谈谈我对“算法岗”的理解

    文 | Severus 编 | 小轶 写在前面:本文完全基于我个人的工作经验,没有经过任何形式的行业调研,所以我的理解也有相当浓厚的个人印记,可以认作一家之言.如果能对读者朋友们起到任何帮助,都是我的 ...

  6. 机器学习算法衡量指标——准确率、精确率(查准率)、召回率(查全率)

    机器学习算法衡量指标 在分类问题中,将机器学习模型的预测与实际情况进行比对后,结果可以分为四种:TP.TN.FN.FP.每个的第一个字母:T/F,代表预测结果是否符合事实,模型猜得对不对,True o ...

  7. 国密SM2算法的只求理解不求甚解 (4/5)SM2算法加解密协议

    国密SM2算法的只求理解不求甚解 (1/5)前置数学知识:模运算 国密SM2算法的只求理解不求甚解 (2/5)前置数学知识:平面几何 国密SM2算法的只求理解不求甚解 (3/5)SM2算法数学模型 国 ...

  8. Hamiltonian Monte Carlo抽样算法的初步理解

    Hamiltonian Monte Carlo抽样算法的初步理解 接受拒绝采样算法 MCMC回顾 Hamiltonian dynamics 拉格朗日方程 从牛顿方程出发推导拉格朗日方程 勒让德变换 哈 ...

  9. Interview之AI:人工智能领域岗位求职面试—人工智能算法工程师知识框架及课程大纲(AI基础之数学基础/数据结构与算法/编程学习基础、ML算法简介、DL算法简介)来理解技术交互流程

    Interview之AI:人工智能领域岗位求职面试-人工智能算法工程师知识框架及课程大纲(AI基础之数学基础/数据结构与算法/编程学习基础.ML算法简介.DL算法简介)来理解技术交互流程 目录 一.A ...

最新文章

  1. springMVC出现HTTP Status 405 - Request method 'GET' not supported错误的解决方法
  2. 老男孩博客获三大搜素引擎搜索自然排名第一位(百度谷歌搜狗)
  3. Latex ! Missing $ inserted error 解决方法
  4. python 柱形图_python绘制双柱形图代码实例
  5. 一篇关于兼容问题的基础总结
  6. IIS/ASP.NET 管道
  7. 存储极简史一幅图你就都懂了
  8. java socket-服务器不启动 直接启动客户端.md
  9. Pytest之基本介绍
  10. python中定制类
  11. 四窗口能分布到四台显示器上吗? 回答 Galactica 的提问
  12. Atitit  图像处理Depixelizing Pixel Art像素风格画的矢量化
  13. 从开锁到中年危机的杂谈
  14. spring boot内置容器性能比较(Jetty、Tomcat、Undertow)
  15. 办公室购买计算机会计分录,购买办公用品属于什么会计科目
  16. 石油大学个人训练赛(一)补题----问题 D: 卡片
  17. sub eax, _PAGESIZE; decrease by PAGESIZE test dword ptr [eax],eax ; probe page
  18. Dnspod域名设置
  19. U74LVC1G07G-SOT353R-TG
  20. 主攻文推荐攻守都有系统_第一百四十八章:攻守之间 - 足球神话 - 找小说网

热门文章

  1. [python] 运算顺序
  2. 2022 浙江省赛F. Easy Fix--思维+主席树
  3. Unity | 微信分享链接到好友及朋友圈(Android端)
  4. 1月8日火箭vs凯尔特人
  5. 微信小程序:微信公众号关联小程序步骤
  6. 看什么看啊,你不会还不会抓HTTPS请求报文吧?
  7. 《修心三不 不生气 不计较 不抱怨》作者-张跃峰_读后感
  8. (信号与系统 作业)卷积积分结合律性质的证明
  9. 用python预测小孩的身高_儿童身高预测表怎么看
  10. 我们正确的追求物质的原因:让我们去追求更美好的精神生活。