算法衡量auc_AUC理解
我花了一天半的时间理解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和GAUCzhuanlan.zhihu.com
算法衡量auc_AUC理解相关推荐
- 重磅MIT开源人工智能算法评估和理解对抗Logit配对的稳健性
重磅MIT开源人工智能算法评估和理解对抗Logit配对的稳健性摘要:我们评估了对抗性Logit Pairing的稳健性,这是最近针对广告范例提出的防御措施. 我们发现,使用Adversarial Lo ...
- [react] 说说你对React的reconciliation(一致化算法)的理解
[react] 说说你对React的reconciliation(一致化算法)的理解 就是启发式Diff算法 ,时间复杂度从N的三次方下降到N ,通过博客途径了解到实现的策略是 tree diff , ...
- 协同过滤算法的简单理解《推荐系统实践》
协同过滤算法的简单理解 本文主要是讲解一下<推荐系统实践>中UserCF和ItemCF这两种基于领域的推荐算法,写出自己的理解. UserCF(基于用户的协同过滤算法) 这种推荐算法的出发 ...
- Mean-shift算法的直观理解
Mean-shift算法的直观理解 0 前言 暑假的时候参加移动计算竞赛打了下酱油,接触到了Mean-shift算法,用于做目标跟踪.在那段时间也在网上查阅了不少关于这个算法的资料,可是总感觉它们都比 ...
- 工作6年,谈谈我对“算法岗”的理解
文 | Severus 编 | 小轶 写在前面:本文完全基于我个人的工作经验,没有经过任何形式的行业调研,所以我的理解也有相当浓厚的个人印记,可以认作一家之言.如果能对读者朋友们起到任何帮助,都是我的 ...
- 机器学习算法衡量指标——准确率、精确率(查准率)、召回率(查全率)
机器学习算法衡量指标 在分类问题中,将机器学习模型的预测与实际情况进行比对后,结果可以分为四种:TP.TN.FN.FP.每个的第一个字母:T/F,代表预测结果是否符合事实,模型猜得对不对,True o ...
- 国密SM2算法的只求理解不求甚解 (4/5)SM2算法加解密协议
国密SM2算法的只求理解不求甚解 (1/5)前置数学知识:模运算 国密SM2算法的只求理解不求甚解 (2/5)前置数学知识:平面几何 国密SM2算法的只求理解不求甚解 (3/5)SM2算法数学模型 国 ...
- Hamiltonian Monte Carlo抽样算法的初步理解
Hamiltonian Monte Carlo抽样算法的初步理解 接受拒绝采样算法 MCMC回顾 Hamiltonian dynamics 拉格朗日方程 从牛顿方程出发推导拉格朗日方程 勒让德变换 哈 ...
- Interview之AI:人工智能领域岗位求职面试—人工智能算法工程师知识框架及课程大纲(AI基础之数学基础/数据结构与算法/编程学习基础、ML算法简介、DL算法简介)来理解技术交互流程
Interview之AI:人工智能领域岗位求职面试-人工智能算法工程师知识框架及课程大纲(AI基础之数学基础/数据结构与算法/编程学习基础.ML算法简介.DL算法简介)来理解技术交互流程 目录 一.A ...
最新文章
- springMVC出现HTTP Status 405 - Request method 'GET' not supported错误的解决方法
- 老男孩博客获三大搜素引擎搜索自然排名第一位(百度谷歌搜狗)
- Latex ! Missing $ inserted error 解决方法
- python 柱形图_python绘制双柱形图代码实例
- 一篇关于兼容问题的基础总结
- IIS/ASP.NET 管道
- 存储极简史一幅图你就都懂了
- java socket-服务器不启动 直接启动客户端.md
- Pytest之基本介绍
- python中定制类
- 四窗口能分布到四台显示器上吗? 回答 Galactica 的提问
- Atitit 图像处理Depixelizing Pixel Art像素风格画的矢量化
- 从开锁到中年危机的杂谈
- spring boot内置容器性能比较(Jetty、Tomcat、Undertow)
- 办公室购买计算机会计分录,购买办公用品属于什么会计科目
- 石油大学个人训练赛(一)补题----问题 D: 卡片
- sub eax, _PAGESIZE; decrease by PAGESIZE test dword ptr [eax],eax ; probe page
- Dnspod域名设置
- U74LVC1G07G-SOT353R-TG
- 主攻文推荐攻守都有系统_第一百四十八章:攻守之间 - 足球神话 - 找小说网