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

  1. 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] 机器学习中的几个度量指标的更多相关文章

  1. Machine learning | 机器学习中的范数正则化

    目录 1. \(l_0\)范数和\(l_1\)范数 2. \(l_2\)范数 3. 核范数(nuclear norm) 参考文献 使用正则化有两大目标: 抑制过拟合: 将先验知识融入学习过程,比如稀疏 ...

  2. Portal:Machine learning机器学习:门户

    Machine learning Machine learning is a scientific discipline that explores the construction and stud ...

  3. [原创]Machine Learning/机器学习 文章合集

    转载请注明出处:https://www.codelast.com/ ➤ 用人话解释机器学习中的Logistic Regression(逻辑回归) ➤ 如何防止softmax函数上溢出(overflow ...

  4. machine learning----->Amazon Machine Learning机器学习平台

    参考资料: 1.如何使用Amazon Machine Learning平台构建你的机器学习预测模型 2.

  5. 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 10—Advice for applying machine learning 机器学习应用建议

    Lecture 10—Advice for applying machine learning 10.1 如何调试一个机器学习算法? 有多种方案: 1.获得更多训练数据:2.尝试更少特征:3.尝试更多 ...

  6. Machine Learning:机器学习算法

    原文链接:https://riboseyim.github.io/2018/02/10/Machine-Learning-Algorithms/ 摘要 机器学习算法分类:监督学习.半监督学习.无监督学 ...

  7. Data Leakage in Machine Learning 机器学习训练中的数据泄漏

    refer to:  https://www.kaggle.com/dansbecker/data-leakage There are two main types of leakage: Leaky ...

  8. [Machine Learning] 机器学习常见算法分类汇总

    声明:本篇博文根据http://www.ctocio.com/hotnews/15919.html整理,原作者张萌,尊重原创. 机器学习无疑是当前数据分析领域的一个热点内容.很多人在平时的工作中都或多 ...

  9. 【Machine Learning·机器学习】决策树之ID3算法(Iterative Dichotomiser 3)

    目录 1.什么是决策树 2.如何构造一棵决策树? 2.1.基本方法 2.2.评价标准是什么/如何量化评价一个特征的好坏? 2.3.信息熵.信息增益的计算 2.4.决策树构建方法 3.算法总结 @ 1. ...

随机推荐

  1. Oracle数据库表复制语句

    Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少.但我 ...

  2. Mysql权限

    连接Oracle/Mysql数据库的配置 1.Oracle <context:property-placeholder location="jdbc.properties"/ ...

  3. IE6低版本jQuery里的show和hide方法BUG

    公司内部一直在用的jQ的版本有些低,具体是哪个版本不太清楚,相关的东西都给删掉了,今天在做一个固定在页面右侧的导航的时候,IE6里出现了一个比较奇葩的问题.具体样子如下图: 收起是用定位left等于负 ...

  4. 问题解决(一)在ipad上通过safari浏览文档

    项目背景 针对用Sencha touch 1.1开发的一个用于通过ipad浏览的网站(其实是对PC端一个网站的映射)中的一个模块的开发,这个模块的主要功能就是用户浏览各种‘报告’,这些被阅览的‘报告’ ...

  5. transform的用法和注意事项

    1.作用: 1)transform可以控制平移.比例缩放和旋转. 2)transform中的方法主要分为两种:带make和不带make的方法. 3)带make的方法主要是基于控件最初的状态进行改变,所 ...

  6. find 找出大文件

    找到大文件 find . -type f -size +100M -exec du -smh {} \;

  7. LeetCode Patching Array

    原题链接在这里:https://leetcode.com/problems/patching-array/ 题目: Given a sorted positive integer array nums ...

  8. SQL scripts

    Add a column with default current date timeALTER TABLE [TableName]ADD CreatedOn DATETIME NOT NULL DE ...

  9. Adding Swagger to Web API project

    Adding Swagger to Web API project. All source code for this series can be found here. When you creat ...

  10. DuiLib学习笔记5——标题栏不能正常隐藏问题

    我之前代码都是照着官方那个Duilib入门文档.doc来学习的.但是遇到一个问题,虽然他隐藏了windows的自带标题栏,可以自己绘画一个标题栏了,但是在这个标题栏下方,用力乱戳,就可能把系统自带的, ...