简述机器学习模型性能度量中Precision、Recall、BEP、F1、ROC和AUC等概念的联系和区别。
答:一个二分类问题的混淆矩阵如下所示:
Precision:译为查准率或精确率,一般缩写为P。它是针对模型的预测结果而言的,表示的是预测为正的样例中有多少是真正的正样例,公式表示为:
Recall:译为查全率或召回率,一般缩写为R。它是针对我们原来的样本而言的,表示的是样本中的正例有多少被预测正确,公式表示为:
F1: F1是基于Precision和Recall的调和平均定义的,是个综合考虑Precision值和Recall值的指标,其公式如下:
在许多时候,我们的模型可以输出分类的“置信度”,通过置信度可以对所有样本进行排序,按此顺序逐个把样本作为正例进行预测。每一个样本作为划分点时,我们都可以计算对应的Precision和Recall。以Precision为Y轴,Recall为X轴作图,可以得到P-R曲线。
同时,以FPR(False Positive Rate,错误地预测为正例的概率,公式如下)为横轴,以TPR(True Positive Rate,正确地预测为正例地概率,公式如下)为纵轴,可以得到ROC(receiver operating characteristic curve)曲线。
TPR=TP/(TP+FN),FPR=FP/(TN+FP)
两条曲线如图1-1所示(注:下列曲线均截图自《机器学习》周志华):
图 1-1 P-R曲线(上) ROC曲线(下)
BEP:在P-R曲线上,令每个分类模型的召回率与精准率相等的取值,即为该模型的 BEP(Break-Event Point, 平衡点)。用于在P-R曲线上比较两个模型的高低。
AUC:即Area Under ROC Curve,是模型ROC曲线下的面积。用于通过ROC曲线比较两个模型的高低。