机器学习性能度量指标:ROC曲线、查准率、查全率、F1
错误率
在常见的具体机器学习算法模型中,一般都使用错误率来优化loss function来保证模型达到最优。
\[错误率=\frac{分类错误的样本}{样本总数}\]
\[error=\frac{1}{m} \sum_{i=1}^{m} I(f(x_{i})\neq y_{i})\]
但是错误率有一个严重的缺点:
错误率会掩盖样本如何被错误分类事实,这样对于有的问题很难进行下一步的分析
混淆矩阵 confusion matrix
真正例: True Positive
真反例: True Negative
假正例: False Positive
假反例: False Negative
下面是一个二分类的混淆矩阵:
| 真实情况 | 预测 | 结果 |
|---|---|---|
| 正例 | 反例 | |
| 正例 | TP(真正) | FN(假反) |
| 反例 | FP(假正) | TN(真反) |
查准率(正确率):
\[precision=\frac{真正正确的个数}{分类中正确的个数}\]
\[P=\frac{TP}{TP+FP}\]
查全率(召回率):
\[recall=\frac{预测为正确的个数}{真实情况正确的个数}\]
\[R=\frac{TP}{TP+FN}\]
综合考虑查准率和查全率的性能度量
F1:
F1是基于查全率和查准率的调和平均(harmonic mean)定义的
\[\frac{1}{F_{1}}=\frac{1}{2}(\frac{1}{P}+\frac{1}{R})\]
\[\frac{1}{F_{1}}=\frac{2*P*R}{P+R}=\frac{2*TP}{总样本树+TP-TN}\]
度量分类中非均衡分类问题 ROC 与AUC
ROC:receiver operating characteristic 受试者工作特征
横坐标:假正例率
\[FPR=\frac{FP}{FP+TN}\]
纵坐标:真正例率 就是回归率
\[TPR=\frac{TP}{TP+FN}\]
图形绘制过程:西瓜书 2.3.3 p34
一共有 \(m^{+}\)个正例,\(m^{-}\)个反例
- 1.先将样例按照学习器的预测结果进行排序
- 2.将分类阈值设置为最大,这样所有的样例都预测为反例。这就是图形的左下点(0,0)
- 3.将分类阈值设置为每个预测结果值,依次将每个样例预测为正例
- 4.假设前一个标记点坐标(x,y).如果当前例为TP,则对应标记点的坐标为\((x,y+\frac{1}{m^{+}})\) 如果当前例为FP,则对应标记点坐标为\((x+\frac{1}{m^{-}},y)\)
不同的ROC曲线根据AUC来进行比较
AUC:area under ROC curve
可根据微积分的定义来求解:
\[AUC=\frac{1}{2} \sum_{i=1}^{m-1}(x_{i+1}-x_{i}(y_{i}+y_{i+1}))\]
机器学习性能度量指标:ROC曲线、查准率、查全率、F1的更多相关文章
- 机器学习性能度量指标:AUC
在IJCAI 于2015年举办的竞赛:Repeat Buyers Prediction Competition 中, 很多参赛队伍在最终的Slides展示中都表示使用了 AUC 作为评估指标: ...
- 【Udacity】机器学习性能评估指标
评估指标 Evaluation metrics 机器学习性能评估指标 选择合适的指标 分类与回归的不同性能指标 分类的指标(准确率.精确率.召回率和 F 分数) 回归的指标(平均绝对误差和均方误差) ...
- 【sklearn】性能度量指标之ROC曲线(二分类)
原创博文,转载请注明出处! 1.ROC曲线介绍 ROC曲线适用场景 二分类任务中,positive和negtive同样重要时,适合用ROC曲线评价 ROC曲线的意义 TPR的增长是以FPR的增长为代价 ...
- [机器学习] 性能评估指标(精确率、召回率、ROC、AUC)
混淆矩阵 介绍这些概念之前先来介绍一个概念:混淆矩阵(confusion matrix).对于 k 元分类,其实它就是一个k x k的表格,用来记录分类器的预测结果.对于常见的二元分类,它的混淆矩阵是 ...
- 机器学习实战笔记(Python实现)-07-分类性能度量指标
1.混淆矩阵 下图是一个二类问题的混淆矩阵,其中的输出采用了不同的类别标签 常用的衡量分类性能的指标有: 正确率(Precision),它等于 TP/(TP+FP) ,给出的是预测为正例的样本中的真正 ...
- 机器学习性能评估指标(精确率、召回率、ROC、AUC)
http://blog.csdn.net/u012089317/article/details/52156514 ,y^)=1nsamples∑i=1nsamples(yi−y^i)2
- 衡量镜头解像能力性能的指标-MTF曲线
MTF(Modulation Transfer Function,模量传递函数),是目前分析镜头解像能力的方法,可以用来评判镜头还原物体对比度的能力.说到MTF,不得不先提一下衡量镜头性能的两在重要指 ...
- ROC曲线,AUC面积
AUC(Area under Curve):Roc曲线下的面积,介于0.1和1之间.Auc作为数值可以直观的评价分类器的好坏,值越大越好. 首先AUC值是一个概率值,当你随机挑选一个正样本以及负样本, ...
- 评价指标的局限性、ROC曲线、余弦距离、A/B测试、模型评估的方法、超参数调优、过拟合与欠拟合
1.评价指标的局限性 问题1 准确性的局限性 准确率是分类问题中最简单也是最直观的评价指标,但存在明显的缺陷.比如,当负样本占99%时,分类器把所有样本都预测为负样本也可以获得99%的准确率.所以,当 ...
随机推荐
- 基础算法和数据结构高频题 II
DFS的两种理解方式:1. 按照实际执行顺序模拟 (适合枚举型DFS,下节课内容)2. 按照DFS的定义宏观理解 (适合分治型DFS,本节课内容) 1 Convert BST to Greater T ...
- decode函数的几种用法
1:使用decode判断字符串是否一样 DECODE(value,if1,then1,if2,then2,if3,then3,...,else) 含义为 IF 条件=值1 THEN RETURN(va ...
- tomcat配置启动文件
修改tomcat到指定文件夹 conf -> server.xml <Host name="localhost" appBase="webapps" ...
- 极力推荐一个简单好用的C++JSON库
极力推荐一个简单好用的C++JSON库CJsonObject,让使用json如使用C++原生的结构体那般方便,随心所欲.CJsonObject是个优秀的C++JSON库,也许会是你见过的最为简单易 ...
- Sring 的 @AliasFor 使用规则
一.该标签存在的意义 顾名思义 @AliasFor 表示别名,它可以注解到自定义注解的两个属性上,表示这两个互为别名,也就是说这两个属性其实同一个含义.该标签存在的含义,从网上查发现有个点, 若 自 ...
- SonarQube+Jenkins安装工程中遇到的吭
1. SonarQube是不是有点飘了,居然要java11+才能运行 解决方案: 重新下载老版本 也不知道哪个版本才好用,就下载了7.0 和6.6,这两个版本用jdk1.8就可以用 2. 配置数据库u ...
- 90后iOS开发者的出路,如何规划30岁前的自己(程序员必修课)
前言: 最近发生了一些和我们没有直接关系但是有间接关系的事情.比如华为“清洗”高龄基层员工,比如游戏公司2号员工拿不到股份而离职.先不说事实到底如何,起码很多码农是心有戚戚焉. 最近一年多也发生了一些 ...
- Jenkins 配置 SpringBoot 自动构建部署
服务器版本 Linux version 3.10.0-957.12.1.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8 ...
- 【JDK】JDK源码分析-CountDownLatch
概述 CountDownLatch 是并发包中的一个工具类,它的典型应用场景为:一个线程等待几个线程执行,待这几个线程结束后,该线程再继续执行. 简单起见,可以把它理解为一个倒数的计数器:初始值为线程 ...
- Android buildType混淆代码
[话题引入] ①在Android开发完成,我们会将代码打包成APK文件.选择 菜单栏 Build --> Build APK ②将查看视图切换到 Project 模式,文件夹下有一个debug模 ...