来源: DeepHub IMBA
本文约1000字,建议阅读5分钟本文讨论了如何在多分类中使用混淆矩阵评估模型的性能。

什么是混淆矩阵?

它显示了实际值和预测值之间的差异。它告诉我们有多少数据点被正确预测,哪些数据点没有被正确预测。对于多分类来说,它是一个 N * N 矩阵,其中 n 是编号。输出列中的类别,也称为目标属性。一二分类任务中包含了 2 个类也就是一个 2*2 矩阵,一般情况下介绍混淆矩阵都会以二分类为例。如果有 3 个类呢?那么将得到一个 3*3 矩阵依此类推。通过上面描述我们知道,混淆矩阵的类将具有相同数量的行和列。

下面让我们尝试了解一些常用术语,有 TP(True Positive)、FP(False Positive)、False Positive 和 FN(False Negative)。

我们将使用一个 3 x 3 矩阵,我们将使用我将向您展示的技巧计算 TP、TN、FP、FN 值。这个技巧也可以应用于 4*4、5*5…N*N 矩阵。

考虑这个混淆矩阵在下图 1 中的数据集的输出列中具有 A、B、C 类。

我们将尝试计算 A 类的TP(True Positive)、FP(False Positive)、False Positive 和 FN(False Negative)的值

TP

TruePositive(A):它告诉实际值和预测值相同。A 类的TP只不过是实际值和预测值相同,这意味着单元格 1 的值为 15。

FP

FalsePositive(A):它告诉实际值是负的,在我们的例子中它是 B 类和 C 类,但模型预测它是正的,即 A 类。它是除了 TP 值之外的相应列的值的相加。

FalsePositive(A) = (单元格 4 + 单元格 7):7+2=9

TN

TrueNegative(A):实际值和预测值的含义相同,对于 A:B 类和 C 类是负分类。它是所有非A行和列的值相加。

TrueNegative(A) = (单元格 5 + 单元格 6 + 单元格 8 + 单元格 9):15 + 8 +3 + 45= 71

FN

FalseNegative(A):实际值在我们的例子中是正的,它是 A 类,但模型预测它是负的,即 B 类和 C 类。可以通过除 TP 值之外的相邻行来计算的。

FalseNegative(A) = (单元格 2 + 单元格 3):2 + 3= 5

常用指标

现在是计算 A 类的 Precision、Recall 和 Accuracy 的时候了。

精度Precision:“模型认为正确且确实是正确的样本占模型认为正确的所有样本的概率”

Precision (A) = 正确预测 / 总预测 = 15/24 = 0.625

召回Recall :“模型认为正确且确实是正确的样本占模型认为正确的所有样本的概率”

Recall  (A)= 正确分类 / 总实际值 = 15/20 = 0.75

正确率Accuracy :被分对的样本数除以所有的样本数

Accuracy  (A) = 正确分类的总数 / 实际分类的总数 = (15 + 15+ 45)/100 = 0.75

同样,可以计算 B 类和 C 类的 TP、FP、FN、TN、Precision、Recall

多分类任务的混淆矩阵相关推荐

  1. 分类模型计算混淆矩阵

    1. 什么是混淆矩阵 混淆矩阵是评判模型结果的一种指标,属于模型评估的一部分,常用于评判分类器的优劣.即,混淆矩阵是评判模型结果的指标,属于模型评估的一部分. 此外,混淆矩阵多用于判断分类器(Clas ...

  2. 机器学习(五)之评价指标:二分类指标、多分类指标、混淆矩阵、不确定性、ROC曲线、AUC、回归指标

    文章目录 0 本文简介 1 二分类指标 1.1 二分类时的错误类型 1.2 不平衡的数据 1.3 混淆矩阵 1.4 考虑不确定性 1.5 准确率-召回率曲线 1.6 ROC与AUC 2 多分类指标 3 ...

  3. 人工智能学习07--pytorch11--分类网络:使用pytorch和tensorflow计算分类模型的混淆矩阵

    师兄说学目标检测之前先学分类 坏了,内容好多!学学学 感谢up主,好人一生平安 混淆矩阵 什么是混淆矩阵: 横坐标:每一列属于该类的所有验证样本.每一列所有元素对应真实类别. 纵坐标:网络的预测类别. ...

  4. 这瓜保熟吗——二分类结果的混淆矩阵与查准率、查全率

    根据瓜的真实情况和学习器预测情况可以将分类结果划分为四类,简单起见,用(AB)表示. A:如果预测结果与真实情况一致,则称T(True),否则为F(False) B:如果预测结果为正例(好瓜),则表示 ...

  5. sklearn 统计多分类和单分类结果的混淆矩阵API 写法 confusion_matrix 左边为真实值 上边为预测值

    分析代码源自 from sklearn.metrics import confusion_matrix 如何写混淆矩阵 手动分析如下 一 将y_true y_pred写成列向量的形式 y_true y ...

  6. 多分类问题中混淆矩阵(Confusion Matrix)的Matlab画法

    在多分类问题中,有一种很实用的分类问题结果统计图. 比如说多类别文类问题,那么每一个类别分到其他类别都有一些数据,但是分到自己类别的毕竟多,这样计算百分比之后就形成了一个矩阵,如果分类正确率高的话,那 ...

  7. 分类模型之混淆矩阵(Confusion Matrix)

    目录 混淆矩阵简介 混淆矩阵及其参数 混淆矩阵的其他指标 混淆矩阵简介 混淆矩阵是ROC曲线绘制的基础,同时它也是衡量分类型模型准确度中最基本,最直观,计算最简单的方法. 可以简单理解为:将一个分类模 ...

  8. pyhton分类时画混淆矩阵

    1.求取预测的矩阵 import numpy as np from sklearn.metric import confusion_matrix from keras import model fro ...

  9. python多分类画混淆矩阵_【AI基础】分类器评估一:混淆矩阵、准确率、精确率、召回率、灵敏度、特异度、误诊率、漏诊率...

    混淆矩阵 在机器学习中尤其是统计分类中,混淆矩阵(confusion matrix),也被称为错误矩阵(error matrix).之所以叫做混淆矩阵,是因为能够很容易的看到机器学习有没有将样本的类别 ...

最新文章

  1. “SQL Server does not allow remote connections”错误的解决
  2. wxWidgets:wxPanel类用法
  3. nodejs项目的package-lock.json文件的用途
  4. 超迷你个人电脑微型计算机,超迷你HTPC Giada N10深度解析
  5. 【MySQL】语句抓包分析工具MySQL sniffer
  6. 【广工考试笔记】计算机系统结构考试速成笔记
  7. armbian 斐讯n1_斐讯N1刷入Armbian(linux)或者电视盒子系统
  8. burp抓取APP数据包+安装Xposed+Just TrustMe
  9. js、Java的url参数转码(url里中文、特殊符号参数转码)
  10. 【Qt象棋游戏】05_象棋走棋规则——象、马、将、兵
  11. Python课第3周:平方根格式化
  12. 如何快速调出软键盘_软键盘怎么调出来 打开软键盘的方法【图文】
  13. Select函数的作用和使用
  14. 【软件教程】如何将夸克网盘挂载为本地磁盘【Docker+AList+RaiDrive】
  15. 解决办法在idea中搭建spark环境:Unable to fetch table student. Invalid method name: ‘get_table_req‘;
  16. 华为S/CE系列交换机stelnet示例(带外管理地址绑定vpn实现业务和管理平面的隔离)
  17. 20155317 第一周蓝墨云班课考题
  18. 计算机毕业设计java+ssm车辆租赁网站(源码+系统+mysql数据库+Lw文档)
  19. astash制作UML类图 简单入门教程
  20. 通过VN1630/VN7640的I/O功能来确认电源设置电压的时间精确度

热门文章

  1. java中位与运算符_Java中位运算符和的区别
  2. tcp retransmission 出现的原因_浅谈TCP的keepalive机制
  3. 写一个函数,2 个参数,1 个字符串,1 个字节数,返回截取的字符串,要求字符串中的中文不能出现乱码
  4. UiBot带你两分钟看懂RPA是什么
  5. Mac拷贝/复制文件夹路径快捷键
  6. jquery获取主机地址和端口
  7. Build a react project step by step
  8. github 项目绑定自己的域名
  9. firefox浏览器不能使用window.close的解决方案
  10. 关于Linux前后台程序切换