模型评估【PR|ROC|AUC】
这里主要讲的是对分类模型的评估。
1、准确率(Accuracy)
准确率的定义是:【分类正确的样本】 / 【总样本个数】,其中分类正确的样本是不分正负样本的
优点:简单粗暴
缺点:当正负样本分布不均衡的情况(假设一种极端情况,正样本1个,负样本99个),此时即使一个比较差的模型(只会将所用的样本预测成负样本),那它也有99%的准确率。
总结一下就是 当样本分布不均匀,该指标意义不大
改进方案: 1、在不同样本分类下求它的准确率,然后取平均值
2、选取其他评价指标
2、PR曲线
Precision(精准率):【分类正确的正样本个数】/【被预测为正样本的个数】
Recall(召回率):【分类正确的正样本个数】/【真实中正样本的个数】
Precision 与 Recall是一对既矛盾又统一的变量
矛盾是指:如果想要高的 精准率,也就要求模型有一些挑剔,对于一些不太确定的是否为正样本的,不将它预测成正样本,可以理解为模型变得“保守”了,所以【被预测为正样本的个数】变小,【分类正确的正样本个数】变小,但是他们比值是变大的,可以这么理解假设有10个样本不太确定是否是正样本,在挑剔之前,就把这个不确定的全部预测成正样本,假设在这10个中,只有4个分类正确,在挑剔之后,分子-4,分母-10,也就是不确定中可以会预测正确也可能预测错误,而追求高的精准率,就直接将这些不确定的抛弃,而此时【分类正确的正样本个数】是变小的,所以召回率变小。
统一是指:个人感觉精准率和召回率越高都会反映模型效果会比较好
PR曲线:是以Precision为纵坐标,Recall为横坐标的描述一个模型在不同阈值(划分正负样本的标准)下的曲线图
绘制过程:与ROC绘制过程相同
曲线意义:当R接近0,即在原点附近时,模型变得非常保守,十分把握才预测成正样本,也就是阈值变得很大,此时正确的可能性将也很大,即精确率很高,随着R的变大,精确率将变小。
那如何通过PR曲线衡量不同模型的好坏呢?
可以通过曲线下的面积,面积越大,模型越好
缺点:
受样本影响比较大,假设负样本扩大100倍,召回率不变,精准率的分母变大了,一些负样本被预测成正样本,也就是在召回率固定的情况下,精准率变小了。
3、ROC曲线
真阳性 (TPR): TP / P 【分类正确的正样本个数TP】/【真实中正样本的个数P】 等于 召回率
伪阳性(FPR): FP / N 【在负样本中被预测成正样本的个数 FP】 / 【真实中负样本的个数N】
ROC曲线是以真阳性为纵坐标,伪阳性为横坐标描述一个模型在不同阈值(划分正负样本的标准)下的曲线图
绘制过程:
- 对所有样本求预测为正样本的概率,并根据概率从大到小排序
- 分别以每一个概率作为一个划分正负样本的阈值,对于第一个就是将最大概率作为划分阈值,此时正样本个数为0(y轴为0),全部为负样本(横轴也为0),不断改变降低阈值,就会得到在该阈值下的点
- 不同阈值下的点对构成的曲线就是roc曲线
另外还有一个简单的绘制方法:
X轴以 1/N 为单位,Y轴以 1/P为单位,遍历所有的样本,如果当前样本为正的话,向上移动一个单位,样本为负向右移动一个单位,最终的结果就是由左下方不断往右上方移动
每一次的移动其实都是一次改变判断正负样本阈值的过程,对于 X轴和Y轴的分母不会改变,当样本是正,阈值为大于等于该样本概率判断为正样本,所以Y轴 + 1,样本为负,表示该样本会判断成正样本,所以X轴 + 1。
优点:
ROC曲线不会受样本影响,相对稳定。假设负样本扩大100倍,对于X轴,分子分母等概率变化,总体结果是不变的,对于Y轴也是不变的
4、AUC (Area under cover)
AUC是ROC曲线的积分,表示模型分类效果,值越大分类效果越好
模型评估【PR|ROC|AUC】的更多相关文章
- 召回率、AUC、ROC模型评估指标精要
混淆矩阵 精准率/查准率,presicion 预测为正的样本中实际为正的概率 召回率/查全率,recall 实际为正的样本中被预测为正的概率 TPR F1分数,同时考虑查准率和查全率,二者达到平衡,= ...
- 评价指标的局限性、ROC曲线、余弦距离、A/B测试、模型评估的方法、超参数调优、过拟合与欠拟合
1.评价指标的局限性 问题1 准确性的局限性 准确率是分类问题中最简单也是最直观的评价指标,但存在明显的缺陷.比如,当负样本占99%时,分类器把所有样本都预测为负样本也可以获得99%的准确率.所以,当 ...
- 笔记︱风控分类模型种类(决策、排序)比较与模型评估体系(ROC/gini/KS/lift)
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 本笔记源于CDA-DSC课程,由常国珍老师主讲 ...
- 风控分类模型种类(决策、排序)比较与模型评估体系(ROC/gini/KS/lift)
python信用评分卡建模(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_ca ...
- 【AUC】二分类模型的评价指标ROC Curve
AUC是指:从一堆样本中随机抽一个,抽到正样本的概率比抽到负样本的概率大的可能性! AUC是一个模型评价指标,只能用于二分类模型的评价,对于二分类模型,还有很多其他评价指标,比如logloss,acc ...
- 模型评测之IoU,mAP,ROC,AUC
IOU 在目标检测算法中,交并比Intersection-over-Union,IoU是一个流行的评测方式,是指产生的候选框candidate bound与原标记框ground truth bound ...
- 模型构建<1>:模型评估-分类问题
对模型的评估是指对模型泛化能力的评估,主要通过具体的性能度量指标来完成.在对比不同模型的能力时,使用不同的性能度量指标可能会导致不同的评判结果,因此也就意味着,模型的好坏只是相对的,什么样的模型是较好 ...
- 模型的性能评估(二) 用sklearn进行模型评估
在sklearn当中,可以在三个地方进行模型的评估 1:各个模型的均有提供的score方法来进行评估. 这种方法对于每一种学习器来说都是根据学习器本身的特点定制的,不可改变,这种方法比较简单.这种方法 ...
- 一文让你彻底理解准确率,精准率,召回率,真正率,假正率,ROC/AUC
参考资料:https://zhuanlan.zhihu.com/p/46714763 ROC/AUC作为机器学习的评估指标非常重要,也是面试中经常出现的问题(80%都会问到).其实,理解它并不是非常难 ...
随机推荐
- 周一01.4安装PyCharm步骤
安装集成开发工具 步骤一 步骤二 步骤三 步骤四
- SQLServer之添加聚集索引
聚集索引添加规则 聚集索引按下列方式实现 PRIMARY KEY 和 UNIQUE 约束 在创建 PRIMARY KEY 约束时,如果不存在该表的聚集索引且未指定唯一非聚集索引,则将自动对一列或多列创 ...
- Java基础——0 前言
- JavaScript对象类型之简单介绍
引言 对象是JavaScript的基本数据类型. 对象是一种复合值:将很多值(原始值或者其他对象)聚合在一起,通过名字访问这些值. 对象可以看做属性的无序集合,每个属性都是一个名/值对.属性名是字符串 ...
- 阿里巴巴JAVA开发手册
Java编程规约 (一)命名风格 1. [强制] 代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束. 反例: _name / __name / $O ...
- 《JAVA程序设计》_第五周学习总结
一.本周学习内容 1.接口--6.1知识 接口的声明 interface 接口名 接口体 只有常量和抽象方法 (用final.static.public修饰的变量,关键词可省略) (用abstract ...
- Maven的继承以及import作用域
Maven的pom文件中可继承的元素包括: groupId:项目ID,项目坐标核心元素 version:项目版本 description:描述信息 organization:组织信息 inceptio ...
- C# Json字符串保存信息
1.我们在进行数据通信的时候,往往是需要传输一个字符串类型的参数,而这个字符串类型的参数又需要封装大量的数据信息. 这个时候,就需要使用Json来封装这些数据,最后将Json数据以字符串的格式输出 2 ...
- TPYBoard开发板搭建,实现隐秘通信
一.准备工作 lTPYBoard v102(简称v102) 1块 lTPYBoard v202(简称v202) 1块 l杜邦线.MicroUSB数据线 若干 (成本100元以内,某宝上可以买到) 附上 ...
- Filebeat命令参考
Filebeat命令参考: Filebeat提供了一个命令行界面,用于启动Filebeat并执行常见任务,例如测试配置文件和加载仪表板.命令行还支持用于控制全局行为的全局标志. 命令: export ...