[Machine-Learning] 机器学习中的几个度量指标
Several classification metrics for ML/DM methods.
主要解释下机器学习(或数据挖掘)中的几个度量指标。
1. 关于 "TN/TP/FN/FP"
在预测过程中,经常会出现这几个名词,先是解释下字面意思:
- TN: True Negative (真负),被模型预测为负的样本,模型预测对了
- TP: True Positive (真正),被模型预测为正的样本,模型预测对了
- FN: False Negative (假负),被模型预测为负的样本,模型预测错了
- FP: False Positive (假正),被模型预测为正的样本,模型预测错了
可以看出来,两个字母的后面一个字母(N or P ),是模型预测的结果,而第一个字母(T or N ) 代表的是这个结果的正确与否;下面用一个表格来表示一下:
| Actual Class: X | Actual Class: not X | |
|---|---|---|
| Predicted Class: X | TP | FP |
| Predicted Class: not X | FN | TN |
Table.1: BINARY CONFUSION MATRIX
从上面这个表格中也能比较直观地分辨这4个指标:横轴代表结果实际的情况,而纵轴代表了该例子被模型预测的情况。
2. 常用于二分类问题(监督学习)的度量指标
2.1 准确率 or 正确比例:
Accuracy or Proportion Correct

计算方法:(TN + TP) / (TP + TN + FP + FN)
需要注意的是:当分类问题是平衡(blanced)的时候,准确率可以较好地反映模型的优劣程度,但不适用于数据集不平衡的时候。
例如:分类问题的数据集中本来就有97% 示例是属于X,只有另外3%不属于X,所有示例都被分类成X的时候,准确率仍然高达97%,但这没有任何意义。
2.2 PPV or 正预测值:
PPV = Positive Predictive Value 。

计算方法:TP / ( TP + FP )
模型预测属于X的示例(instance)中,预测正确(真正属于X)的比例。
2.3 召回率 or TP Rate:
Sensitivity(灵敏度) orRecall or True Positive Rate or Probability。

计算方法: TP / (TP + FN)
真正属于X的示例中,成功预测为属于X(TP)的比例。
2.4 NPV or 错误预测正确率:
NPV = Negative Predictive Value

计算方法:TN / (TN + FN)
模型预测不属于X的示例中,预测正确(TN)的比例;那个中文是我自己翻译的,凑活看吧。。。这个和PPV比较像。
2.5 TN Rate:
Specificity or True Negative Rate

计算方法:TN / (TN + FP)
真正不属于X的示例中,被预测成不属于X的示例所占的比例。(已经无力翻译成中文名称了。。。)
2.6 FP rate or FAR or Fall-out:
FAR = 1-Specificity

计算方法:FP / (TN + FP)
真正不属于X的示例中,模型预测成属于X的(预测失败)示例所占的比例。
在分类问题中,在灵敏度和FAR两者之间要保持一个平衡(折中)。这种折中要通过ROC曲线来表示,在Y轴上表示灵敏度,在X轴上表示FAR。 较高的FAR导致较高的灵敏度,较低的FAR导致较低的灵敏度。 通常,FAR不能高于某个数,这就是最终分类器的选择。
3. 多分类问题中的度量指标
- Overall Accuracy:被正确分类的示例在数据集中的比例。
- Class detection rate:来自给定类的例子正确地分类占来自给定类的所有样本得比例。
- Class FAR or class FP rate:一个类别中分类错误(未被分到这个类)的示例占所有不是这个类的示例的比例。
在多分类问题中计算PPV和NPV是可行的,但是通常不这么做
reference
- Anna L. Buczak, Erhan Guven, "A Survey of Data Mining and Machine Learning Methods for Cyber Security Intrusion Detection", IEEE COMMUNICATIONS SURVEYS & TUTORIALS VOL. 18, NO. 2, SECOND QUARTER 2016
[Machine-Learning] 机器学习中的几个度量指标的更多相关文章
- Machine learning | 机器学习中的范数正则化
目录 1. \(l_0\)范数和\(l_1\)范数 2. \(l_2\)范数 3. 核范数(nuclear norm) 参考文献 使用正则化有两大目标: 抑制过拟合: 将先验知识融入学习过程,比如稀疏 ...
- Portal:Machine learning机器学习:门户
Machine learning Machine learning is a scientific discipline that explores the construction and stud ...
- [原创]Machine Learning/机器学习 文章合集
转载请注明出处:https://www.codelast.com/ ➤ 用人话解释机器学习中的Logistic Regression(逻辑回归) ➤ 如何防止softmax函数上溢出(overflow ...
- machine learning----->Amazon Machine Learning机器学习平台
参考资料: 1.如何使用Amazon Machine Learning平台构建你的机器学习预测模型 2.
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 10—Advice for applying machine learning 机器学习应用建议
Lecture 10—Advice for applying machine learning 10.1 如何调试一个机器学习算法? 有多种方案: 1.获得更多训练数据:2.尝试更少特征:3.尝试更多 ...
- Machine Learning:机器学习算法
原文链接:https://riboseyim.github.io/2018/02/10/Machine-Learning-Algorithms/ 摘要 机器学习算法分类:监督学习.半监督学习.无监督学 ...
- Data Leakage in Machine Learning 机器学习训练中的数据泄漏
refer to: https://www.kaggle.com/dansbecker/data-leakage There are two main types of leakage: Leaky ...
- [Machine Learning] 机器学习常见算法分类汇总
声明:本篇博文根据http://www.ctocio.com/hotnews/15919.html整理,原作者张萌,尊重原创. 机器学习无疑是当前数据分析领域的一个热点内容.很多人在平时的工作中都或多 ...
- 【Machine Learning·机器学习】决策树之ID3算法(Iterative Dichotomiser 3)
目录 1.什么是决策树 2.如何构造一棵决策树? 2.1.基本方法 2.2.评价标准是什么/如何量化评价一个特征的好坏? 2.3.信息熵.信息增益的计算 2.4.决策树构建方法 3.算法总结 @ 1. ...
随机推荐
- windows安装django
Window 下安装 Django 如果你还未安装Python环境需要先下载Python安装包. 1.Python 下载地址:https://www.python.org/downloads/ 2.D ...
- 实验一Java开发环境的熟悉
实验一Java开发环境的熟悉 实验内容 •命令行下Java程序开发 •IDEA下Java程序开发.调试 •练习(通过命令行和Eclipse两种方式实现,在Eclipse下练习调试程序) •实现凯撒密码 ...
- Java Web(转)
struts2+spring+hibernate 上传文件 关 键字: s2sh 上传文件 struts2 spring hibernate 前段时间,我用struts2.1.6.spring2.5. ...
- Oracle 常用数据类型(转)
varchar2(6) 张三 --在jbk中是两个字节,在utm中是三个字节char(6) 张 三 --可以确定长度的用charclob --大存储,没事少用,当多余4000字节时,会用lob来存储, ...
- Python强化训练笔记(一)——在列表,字典,集合中筛选数据
列表,字典,集合中根据条件筛选数据,如下所示 列表:[-10,2,2,3,-2,7,6,9] 找出所有的非负数 字典:{1:90,2:55,3:87...} 找出所有值大于60的键值对 集合:{2,3 ...
- ultraedit正则使用
下面是从UltraEdit文档中摘录的语法说明: 正则表达式 (UltraEdit 语法): 符号 功能 % 匹配行首 – 表示搜索字符串必须在行首,但不包括任何选定的结果字符中的行终止字符. $ 匹 ...
- tensorflow 学习(一)
改系列只为记录我学习 udacity 中深度学习课程!! 1. 整个课程分为四个部分,如上图所示. 第一部分将研究逻辑分类器,随机优化以及实际数据训练. 第二部分我们将学习一个深度网络,和使用正则化技 ...
- TCP/IP协议 三次握手与四次挥手
一.TCP报文格式 TCP/IP协议的详细信息参看<TCP/IP协议详解>三卷本.下面是TCP报文格式图: 图1 TCP报文格式 上图中有几个字段需要重点介绍下: (1)序号 ...
- LeetCode Encode and Decode Strings
原题链接在这里:https://leetcode.com/problems/encode-and-decode-strings/ 题目: Design an algorithm to encode a ...
- PRAGMA AUTONOMOUS_TRANSACTION
转自 http://blog.csdn.net/pan_tian/article/details/7675800 这段时间遇到一个问题,程序里明明插入了一条记录,但在后边的一段Procedure中却查 ...