一、ROC和AUC
1.ROC曲线的作用和定义:
ROC曲线可以用来表示分类模型性能的好坏,它的纵坐标是召回率,横坐标是误报率,所以ROC曲线反映的是分类器在不同误报率下具有怎么样的召回率。通常,误报率越高,说明分类器更容易把样本分类为阳性(正样本),所以召回率也越高。
2.对ROC曲线的理解
以生病(阳性)为正样本,没生病(阴性)为负样本为例:
查准率:生病且被诊断为生病的人数占所有被诊断为生病人数的比例;
召回率:生病且被诊断为生病的人数占所有确实生病的人数;
误检率(误诊率):所有没有生病但是被诊断为生病的人数占所有没有生病的人数的比例;
P、N可以理解为诊断结果,T、F可以理解为对诊断结果的判断
P:被诊断为生病,阳性
N:被诊断为没生病,阴性
T:诊断结果是对的
F:诊断结果是错的
所以:
TP:被诊断为生病且确实生病的人数;
TN:被诊断为没生病且确实没生病且的人数;
FP:被诊断为生病,但没生病的人数;
FN:被诊断为没生病,但生病的人数;
所以:
查准率=TP/(TP+FP)
召回率:TP/(TP+FN)
误检率:FP/(FP+TN)
3.AUC表示ROC曲线下的面积,面积越大,说明模型的分类效果越好。
AUC的取值范围一般是0.5~1。
二、 P、R、PR曲线
P:精确度、查准率,表示所有被预测为正样本的数据中,有多少比例是真的正样本;
R:召回率、查全率,表示所有正样本中,有多少比例被正确预测为正样本;
PR曲线:纵轴是P,横轴是R的曲线,一般R越高,P就越低。
AP值就是PR曲线下方的面积,所以AP值是一种均衡考虑了P和R两个值的检测算法评价指标。
mAP是目标检测器在所有类上的AP值的平均值。
P = TP/ (TP+FP)
R = TP/ (TP+FN)