作者:泛音/Fainke博客:https://www.fainke.com
来自:知识交点 公众号

混淆矩阵:
也称为误差矩阵,是一种特定的表格布局,允许可视化算法的性能,通常是监督学习的算法(在无监督学习通常称为匹配矩阵)。矩阵的每一行代表预测类中的实例,而每列代表实际类中的实例(反之亦然)。从字面理解:看出系统是否混淆了两个类(即通常将一个类错误标记为另一个类)(多类可以合并为二分类)。

一级评价指标:
由四个基础指标构成:TP、FN、FP、TN
① 真实值是positive,模型认为是positive的数量(True Positive=TP)
② 真实值是positive,模型认为是negative的数量(False Negative=FN):这就是统计学上的第一类错误(Type I Error)
③ 真实值是negative,模型认为是positive的数量(False Positive=FP):这就是统计学上的第二类错误(Type II Error)
④ 真实值是negative,模型认为是negative的数量(True Negative=TN)

一级评价指标混淆矩阵图例:

一级评价指标混淆矩阵图例.png

二级评价指标:
准确率(Accuracy):ACC
精确率(Precision):PPV
灵敏度(Sensitivity)=召回率(Recall)=命中率=真实阳性率:TPR
特异度(Specificity):TNR
(更多名词可查看维基百科)

二级评价指标图例.png

三级评价指标:
F1 Score:

其中,P代表Precision,R代表Recall。F1-Score指标综合了Precision与Recall的产出的结果。F1-Score的取值范围从0到1的,1代表模型的输出最好,0代表模型的输出结果最差。

MCC 马修斯相关系数:
衡量不平衡数据集的指标比较好。

ROC曲线:
ROC曲线的横坐标为false positive rate(FPR),纵坐标为 true positive rate(TPR) 。当测试集中的正负样本的分布变化的时候,ROC曲线能够保持不变。

ROC.png

PRC曲线:
在正负样本分布得极不均匀(highly skewed datasets)的情况下,PRC比ROC能更有效地反应分类器的好坏。

PRC.png

实列理解:

混淆矩阵例2.png

该图表示的是模型预测动物的预测数据图。通过该混淆矩阵,可以得到以下结论:

Accuracy:
在总共66个动物中,我们一共预测对了10 + 15 + 20=45个样本,所以准确率(Accuracy)=45/66 = 68.2%。
下面以猫为例,将上面的图合并为二分类问题,求出二级评价指标与三级评价指标:

混淆矩阵例3.png

Precision:
以猫为例,66只动物里有13只是猫,其中这13只猫只有10只预测对了。模型认为是猫的13只动物里,有1条狗,两只猪。所以,Precision(猫)= 10/13 = 76.9%

Recall:
以猫为例,在总共18只真猫中,我们的模型认为里面只有10只是猫,剩下的3只是狗,5只都是猪。这5只八成是橘猫,能理解。所以,Recall(猫)= 10/18 = 55.6%

Specificity:
以猫为例,在总共48只不是猫的动物中,模型认为有45只不是猫。所以,Specificity(猫)= 45/48 = 93.8%。虽然在45只动物里,模型依然认为错判了6只猪与4只狗,但是从猫的角度而言,模型的判断是没有错的。

F1-Score:
通过公式,可以计算出,对猫而言,F1-Score=(2 * 0.769 * 0.556)/( 0.769 + 0.556) = 64.54%

参考链接:
维基百科:https://en.wikipedia.org/wiki/Confusion_matrix
CSDN:https://blog.csdn.net/Orange_Spotty_Cat/article/details/80520839

推荐阅读:

一大批历史精彩文章啦

【一分钟知识】七种损失函数

【一分钟论文】 NAACL2019-使用感知句法词表示的句法增强神经机器翻译

【一分钟论文】轻松解读Semi-supervised Sequence Learning半监督序列学习

详解Transition-based Dependency parser基于转移的依存句法解析器

干货 | 找工作的经验总结(一)

经验 | 初入NLP领域的一些小建议

学术 | 如何写一篇合格的NLP论文

干货 | 那些高产的学者都是怎样工作的?

是时候研读一波导师的论文--一个简单有效的联合模型

近年来NLP在法律领域的相关研究工作


轻松了解模型评价指标相关推荐

  1. 机器学习 (十四)轻松理解模型评价指标

    篇首语 相信大家都知道下面的图片是啥意思,每个无论在啥公司.无论哪个行业都有自己的KPI评价指标,公司会根据公司情况设定公司战略KPI.部门KPI.以及每个人的指标,对于员工也是比较关心自己的KPI因 ...

  2. sklearn快速入门教程:补充内容 -- sklearn模型评价指标汇总(聚类、分类、回归)

    sklearn集成了大多数模型评价指标,这可以很大程度上方便我们的使用,尤其在对进行进行自动调参时可以方便我们进行选择. 做下这个笔记主要是为了补充之前的内容:sklearn快速入门教程:(四)模型自 ...

  3. 混淆矩阵评价指标_机器学习模型评价指标 -- 混淆矩阵

    机器学习模型评价指标 – 混淆矩阵 在机器学习领域中,混淆矩阵(confusion matrix)是一种评价分类模型好坏的形象化展示工具.其中,矩阵的每一列表示的是模型预测的样本情况:矩阵的每一行表示 ...

  4. 机器学习分类模型评价指标之ROC 曲线、 ROC 的 AUC 、 ROI 和 KS

    前文回顾: 机器学习模型评价指标之混淆矩阵 机器学习模型评价指标之Accuracy.Precision.Recall.F-Score.P-R Curve.AUC.AP 和 mAP 图裂的话请参考:ht ...

  5. 机器学习分类模型评价指标详述

    问题建模 机器学习解决问题的通用流程:问题建模--特征工程--模型选择--模型融合 其中问题建模主要包括:设定评估指标,选择样本,交叉验证 解决一个机器学习问题都是从问题建模开始,首先需要收集问题的资 ...

  6. 机器学习笔记(5)——模型评价指标

    机器学习笔记(5)--模型评价指标 本文部分图片来源网络或学术论文,文字部分来源网络与学术论文,仅供学习使用. 目录 机器学习笔记(5)--模型评价指标 1.精确率.召回率.准确率.错误率 混淆矩阵 ...

  7. python程序题求roc-auc是一种常用的模型评价指标_模型评价方法

    第五章 模型评价方法 5.1 模型的评价方法介绍 5.1.1~5 accuracy,precision,recall,F1-score,ROC曲线 分别画图举例,要说出应用场景,例如什么情况用什么评价 ...

  8. 分类器模型评价指标之ROC曲线

    来源:分类器模型评价指标 An introduction to ROC analysis Spark mllib 自带了许多机器学习算法,它能够用来进行模型的训练和预测.当使用这些算法来构建模型的时候 ...

  9. 推荐模型评价指标 AUC

    推荐中常用的模型评价指标有准确率,召回率,F1-score和AUC. 1. 什么是AUC AUC指标是一个[0,1]之间的实数,代表如果随机挑选一个正样本和一个负样本,分类算法将这个正样本排在负样本前 ...

  10. 【模型评价指标】分析模型评价常用指标

    常用的聚类模型评价指标: ARI评价法(兰德系数).AMI评价法(互信息).V-measure评分.FMI评价法.轮廓系数 等 常用的分类模型评价指标: 准确率(Accuracy).精确率(Preci ...

最新文章

  1. smartClient 2--可视化组件
  2. Docker Review - docker 容器 常用命令
  3. 基于若依框架的二次开发_SAP Commerce(原Hybris)的订单处理框架和SAP CRM One Order框架...
  4. java scanner 用不了_java Scanner具有神奇的作用可惜大部分java开发人员不知
  5. Linux下进程间通信方式——信号量(Semaphore)
  6. Spring Cloud Config Server简介
  7. 如何构建ASP.NET MVC4JQueryAJaxJSon示例
  8. 计算机怎么远程桌面,电脑远程桌面如何连接 电脑远程桌面连接方法【详解】...
  9. glob.glob() + os.path.join() :找到文件路径,拼接路径
  10. 学习asp.net比较完整的流程 (对初学者有很好的帮助)
  11. c语言计算器小程序,计算器程序完整代码
  12. 整人c语言代码大全,(C语言整人代码大全.doc
  13. java gbk转机内码_GBK/GB2312编码问题分析以及java获取汉字国标码
  14. freessl 免费https证书申请
  15. abp moveto mysql_abp 使用 hangfire结合mysql
  16. 工业路由器的端口映射方法 NAT/DMZ/UPNP
  17. java引入外部字体_Java中如何自定义字体文件(引用外部字体)?-字体文件
  18. linux12企业实战 -- 37zabbix企业微信通知配置
  19. 别害羞,开源社区真的很需要你,教你如何参与开源社区~
  20. 安装vmtools之后任然不能在虚拟机和主机之间复制粘贴的问题

热门文章

  1. Python之socketserver源码分析
  2. 文本文件编码探测几个链接
  3. Ubuntu下部署SVN+SVNManager
  4. 在InstallShield中发布单一的Setup.exe文件
  5. 如何招到烂程序员(续)
  6. 学习完windows网络编程第一章后做的UDPTest程序
  7. solr6.5的分词
  8. JAVA入门[5]-初步搭建SpringMVC站点
  9. checkbox选中与取消选择
  10. SQL导入/导出Excel