混淆矩阵
混淆矩阵是数据科学、数据分析和机器学习中总结分类模型预测结果的情形分析表,以矩阵形式将数据集中的记录按照真实的类别与分类模型作出的分类判断两个标准进行汇总。
1. 什么是混淆矩阵
混淆矩阵的每一列代表了预测类别 ,每一列的总数表示预测为该类别的数据的数目;每一行代表了数据的真实归属类别 ,每一行的数据总数表示该类别的数据实例的数目。
以二元分类问题为例,数据集存在肯定类别和否定类别两类记录,而分类模型对记录分类可能作出阳性判断(判断记录属于肯定类别)或阴性判断(判断记录属于否定类别)两种判断。混淆矩阵是一个2 × 2的情形分析表,显示以下四组记录的数目:作出正确判断的肯定记录(真阳性)、作出错误判断的肯定记录(假阴性)、作出正确判断的否定记录(真阴性)以及作出错误判断的否定记录(假阳性)。表1给出了混淆矩阵的结构。
以筛检化验为例,真阳性和假阳性分别是病人和健康人的结果阳性,而真阴性和假阴性分别是健康人和病人的结果阴形。显然,分类模型对在混淆矩阵对角线上的真阳性和真阴性记录组作出了正确的分类,而对反对角线上的假阳性和假阴性记录组发生了误判。
1. 混淆矩阵的举例
TP = True Postive = 真阳性; FP = False Positive = 假阳性
FN = False Negative = 假阴性; TN = True Negative = 真阴性
比如我们一个模型对15个样本进行预测,然后结果如下。
预测值:1 1 1 1 1 0 0 0 0 0 1 1 1 0 1
真实值:0 1 1 0 1 1 0 0 1 0 1 0 1 0 0
这个就是混淆矩阵。矩阵中的这四个数值,经常被用来定义其他一些度量。
准确度(Accuracy) = (TP+TN) / (TP+TN+FN+TN)
在上面的例子中,准确度 = (5+4) / 15 = 0.6
精度(precision, 或者PPV, positive predictive value) = TP / (TP + FP)
在上面的例子中,精度 = 5 / (5+4) = 0.556
召回(recall, 或者敏感度,sensitivity,真阳性率,TPR,True Positive Rate) = TP / (TP + FN)
在上面的例子中,召回 = 5 / (5+2) = 0.714
特异度(specificity,或者真阴性率,TNR,True Negative Rate) = TN / (TN + FP)
在上面的例子中,特异度 = 4 / (4+2) = 0.667
F1-值(F1-score) = 2*TP / (2*TP+FP+FN)
在上面的例子中,F1-值 = 2*5 / (2*5+4+2) = 0.625
3. 混淆矩阵延伸出的各个评价指标
从混淆矩阵中,可以衍生出各种评价的指标。如下是截取的wiki上的一个截图(https://en.wikipedia.org/wiki/Confusion_matrix)
相关阅读
原文地址:https://blog.csdn.net/qq_28448117/article/details/78219549 一:混淆矩阵 监督学习—混淆矩阵 非监督学习—匹配矩阵
三元组的表示(1)、目的:对于在实际问题中出现的大型的稀疏矩阵,若用常规分配方法在计算机中储存,将会产生大量的内存浪费,而且在访问和
相关矩阵也叫相关系数矩阵,是由矩阵各列间的相关系数构成的。也就是说,相关矩阵第i行第j列的元素是原矩阵第i列和第j列的相关系数。
雅可比矩阵:一个多元函数的一阶偏导数以一定方式排列成的矩阵黑塞矩阵:一个多元函数的二阶偏导数以一定方式排列成的矩阵雅可比矩阵
axis off;% 去掉坐标轴 axistight;% 紧坐标轴 axisequal;% 等比坐标轴 axis([-0.1, 8.1, -1.1, 1.1]);% 坐标轴的显示范围 % gca