在机器学习建模过程中,针对不同的问题,需采用不同的模型评估指标。
一、分类模型评估指标:
- 1、混淆矩阵(Confusion Matrix)
- 2、正确率/准确率(Accuracy)
- 3、错误率(Error rate)
- 4、精确率/查准率(Precision)
- 5、召回率/查全率(Recall)
- 6、PR曲线(Precision Recall Curve) 和 F1-score
- 7、ROC曲线(Receiver Operating Characteristic) 和 AUC(Area Under Curve)
二、目标检测评估指标:
- 1、IoU(Intersection over Union)
- 2、mAP(mean Average Precision)
一、分类模型评估指标
1、混淆矩阵(Confusion Matrix)
混淆矩阵也称为误差矩阵,是表示精度评价的一种标准格式,用 的矩阵形式来表示。
最常见的二元分类,它的混淆矩阵是一个 表,用来衡量一个分类器分类的准确程度。
混淆矩阵中 TP、TN、FP、FN 四个值代表的含义:
- 真正(True Positive,TP):被模型预测为正的正样本。
- 真负(True Negative , TN):被模型预测为负的负样本。
- 假正(False Positive, FP):被模型预测为正的负样本。
- 假负(False Negative , FN):被模型预测为负的正样本。
其中,第一个字母表示本次预测的正确性,T就是正确,F就是错误;第二个字母则表示由分类器预测的类别,P代表预测为正例,N代表预测为反例。
- 真正率(True Positive Rate,TPR):被预测为正的正样本数/正样本实际数,TPR=TP/(TP+FN)。或称 灵敏度(Sensitivity),或称 召回率。
- 真负率(True Negative Rate,TNR):被预测为负的负样本数/负样本实际数,TNR=TN/(FP+TN)。或称 特异度(Specificity)。
- 假正率(False Positive Rate,FPR):被预测为正的负样本数/负样本实际数,FPR=FP/(FP+TN)。
- 假负率(False Negative Rate,FNR):被预测为负的正样本数/正样本实际数,FNR=FN/(TP+FN)。
2、正确率/准确率(Accuracy)
准确率(Accuracy):所有被正确预测占总数的比例。
3、错误率(Error rate)
错误率:所有被错误预测占总数的比例。
正确率和错误率是分别从正反两方面进行评价的指标,两者数值相加刚好等于1。正确率越高,错误率就越低;正确率越低,错误率就越高。
4、精确率/查准率(Precision)
精确率(Precision):也叫查准率,是指在所有被预测为正的样本中,确实是正样本的占比。
5、召回率/查全率(Recall)
召回率(Recall):也叫查全率,是指在所有确实为正的样本中,被预测为正样本的占比。
Recall等价于灵敏度Sensitivity和真正率TPR。
6、PR曲线(Precision Recall Curve) 和 F1-score
然而,Precision和Recall是一对矛盾的度量,高精度往往对应低召回率。为了综合评价整体结果,我们以查准率为轴,以查全率为轴,构成了PR曲线(PRC对 样本不均衡 敏感),如下图所示:
PRC能直观地显示学习器在样本总体上的查全率和查准率,显然它是一条总体趋势递减的曲线。不同的学习器进行比较时,查准率和查全率能取得双高,说明其性能更优。因此,若一个学习区的PR曲线被另一个学习器的PR曲线完全包住,则可断言后者的性能优于前者,比如上图中的A优于C。但是B和A谁更好呢?AB曲线交叉了,所以很难比较,这时候比较合理的判据就是比较PR曲线下的面积,该指标在一定程度上表征了学习器在查准率和查全率上取得相对“双高”的比例。因为这个值(面积)不容易度量,所以人们引入了“平衡点(Break-Even Point,BEP)”来度量,它表示“查准率=查全率”时的取值,值越大表明性能越好,以此我们可以一下子判断A比B性能好。
另一种更常用的度量方法是 F1-score 度量,它被定义为精确率和召回率的调和平均数:
值是综合考虑精确率和召回率的一个指标。在值中,精确率和召回率是同等重要的,权重。
但面对有些实际场景,本身就要求更重视精确率或更重视召回率的情况,该如何处理呢?比如地震预测,我们希望Recall非常高,希望每次地震都能被预测出来,这时候我们可以牺牲Precision。情愿发出1000次预测,把10次地震都预测正确了;也不要预测100次,对了8次漏了两次。所以我们可以设定在合理的Precision下,最高的Recall作为最优点,找到这个对应的threshold点。
于是我们引入分数的定义:
令,上式可化简为:
其中为正数,其作用是调整精确度和召回率的权重。越大,召回率的权重更大;越小,则精确度的权重更大。当时为值,此时精确度和召回率权值均为,即:
- ,查全率的权重=查准率的权重=0.5,即为分数。
- ,查全率的权重>查准率的权重。
- ,查全率的权重<查准率的权重。
7、ROC曲线(Receiver Operating Characteristic) 和 AUC(Area Under Curve)
ROC全称是“受试者工作特征”(Receiver Operating Characteristic)曲线,ROC曲线以“真正率”(TPR)为轴,以“假正率”(FPR)为轴,对角线对应“随机猜测模型”,而则对应“理想模型”。如下图所示:
其中,。
在对学习器进行比较时,与PR曲线类似,若一个学习器的ROC曲线被另一个学习器的曲线完全包住,则我们可以断言后者的性能优于前者;若两个学习器的ROC曲线发生交叉,则难以比较两者的性能。此时我们可以比较ROC曲线下的面积,即AUC(Area Under Curve),面积大的曲线对应的性能更好。
当时,为理想模型,此时AUC为1。但现实生活中AUC一般介于0.5到1之间,AUC越高,说明模型的区分能力越好。若AUC=0.5,此时模型的区分能力与随机猜测没有区别。若AUC<0.5,请检查一下好坏标签是否标反了,或者是模型真的很差。
PRC和ROC在模型性能评估上效果差不多,但如果样本的正负分布极不均衡,应以PRC为评估指标。PRC对于样本不均衡敏感,能够更有效地反应分类器的好快;而ROC的AUC可能看不出好坏。
二、目标检测评估指标
目标检测问题:给定一个图像,找到其中的目标以及位置,并且对目标进行分类。
1、IoU(Intersection over Union)
IoU(Intersection over Union,交并比)是一种测量在特定数据集中检测相应物体标准度的一个标准。是目标检测任务中常用的评价指标。
IoU的定义,预测框与标注框的交集与并集之比:
IoU的值越大说明检测性能越好,当IoU=1时,说明预测框与目标框完全一致。下图中 0.4037<0.7330<0.9264,他们的预测效果依次增强。
2、mAP(mean Average Precision)
- AP(Average Precision,平均精度)是PR曲线围成的面积,用来衡量对一个类检测的好坏。
- mAP(mean Average Precision,均值平均精度)是各类别AP的平均值,衡量对多个类的目标检测好坏。
mAP是目标检测中最常用的测评指标。