3. 线性模型性能分析--混淆矩阵(Confusion Matrix)

来源:互联网 发布:双色球九宫图算法杀号 编辑:程序博客网 时间:2024/05/19 05:33

1. 什么是混淆矩阵

在人工智能中,混淆矩阵(confusion matrix)是可视化工具,特别用于监督学习,在无监督学习一般叫做匹配矩阵。在图像精度评价中,主要用于比较分类结果和实际测得值,可以把分类结果的精度显示在一个混淆矩阵里面。混淆矩阵是通过将每个实测像元的位置和分类与分类图像中的相应位置和分类像比较计算的[1]

通过分析混淆矩阵,我们可以得到:
* TPR (True Positive Rate), FPR (False Positive Rate) 并画出ROC (Receiver Operating Characteristic)曲线和求出AUC (Area Under Curve)
* 准确率(Accuracy), 精确率(Precision), 召回率(Recall), F1值(F1 Score)
下面我们来分析混淆矩阵。



2. 混淆矩阵分析

Confusion Matrix

Confusion Matrix[2]

分析:
TP:模型判定为P,实际上也是P,即判断正确
FP:模型判定为N,实际上却是P,即判断错误
FN:模型判定为P,实际上却是N,即判断错误
TN:模型判定为N,实际上也是N,即判断正确


存在关系:
TPR=TPTP+FP

FPR=FPTN+FN

Accuracy=TP+TNTP+FP+TN+FN

Precision=TPTP+FP

Recall=TPTP+FN

F1Measure=21Precision+1Recall



3. Accuracy, Precision, Recall,F1-Measure的分析

举例:要对癌症患者分类:良性和恶性。现在有200个患者,刚好100个良性,100个恶性,训练之后的预测50个良性,150个恶性,即:预测50个良性正确,有50个良性被预测为恶性,100个恶性预测全部正确。
此时:
TP: 50
FP: 50
FN: 0
TN: 100
TPR: 0.5
FPR: 0.5
Accuracy: 75%
Precision: 50%
Recall: 100%
F1-Measure: 66.7% 即(23)

关于精确率和召回率,要根据具体情境去判断,那个高才好,参考知乎第一条回答精确率、召回率、F1 值、ROC、AUC 各自的优缺点是什么?



4. ROC,AUC的分析:

4.1. ROC分析

关于ROC,先看下图,
ROC

根据刚刚上面对TPR,FPR的分析,容易发现:

  • 在(0,0)点,TP和FP都为0(FN和TN都为1),也就是说,对于所有值,预测模型都预测为Negative,即判断为Positive的阈值过高。
  • 在(1,1)点,TP和FP都为1(FN和TN都为0),也就是说,对于所有值,预测模型都预测为Positive,即判断为Positive的阈值过低。

4.2. AUC分析

AUC(Area Under Curve),我觉得原名应为(Area Under roc Curve)更好,其定义为ROC曲线下的面积,面积的数值不会大于1。
ROC曲线一般都处于y=x这条直线的上方,没有人希望模型在y=x的线以下,所以AUC的取值范围在0.5和1之间。使用AUC值作为评价标准是因为很多时候ROC曲线并不能清晰的说明哪个分类器的效果更好,但对应一个数据来说,AUC往往越大越好。



参考

[1]百度百科:https://baike.baidu.com/item/%E6%B7%B7%E6%B7%86%E7%9F%A9%E9%98%B5/10087822?fr=aladdin&fromid=18082441&fromtitle=Confusion+Matrix
[2]维基百科:https://en.wikipedia.org/wiki/Confusion_matrix
[3]精确率、召回率、F1 值、ROC、AUC 各自的优缺点是什么?https://www.zhihu.com/question/30643044/answer/48955833

原创粉丝点击