前言
准确度、精确率、召回率、F1值作为评估指标,经常用到分类效果的评测上。比较好理解的二分类问题,准确度评估预测正确的比例,精确率评估预测正例的查准率,召回率评估真实正例的查全率。如何把这些评估指标用到多分类上呢,比如有三个类别A、B、C,准确度好理解,只要关系是否预测正确即可;那么精确率和召回率怎么理解呢?我们可以把多分类问题拆分成多个二分类问题,比如A类别是否预测正确,B类别是否预测正确,C类别是否预测正确,分别计算各个类别的每个类别的精确率和召回率,最终求均值既能作为所有样本的评估指标。
基本概念
TP(True Positives):真正例,预测为正例而且实际上也是正例;
FP(False Positives):假正例,预测为正例然而实际上却是负例;
FN(false Negatives):假负例,预测为负例然而实际上却是正例;
TN(True Negatives):真负例,预测为负例而且实际上也是负例。
混淆矩阵:
记忆要点:正负例的是依据预测值,真假是依据实际值。真正例的意思,预测为正例,实际上是真的正例。
准确率 Accuracy
准确度:正例和负例中预测正确数量占总数量的比例,用公式表示:
准确度好理解,就是所有预测样本中预测准确的占比,就不多费文墨解释了。
精确度 Precision
精确度:以预测结果为判断依据,预测为正例的样本中预测正确的比例。预测为正例的结果分两种,要么实际是正例TP,要么实际是负例FP,则可用公式表示:
召回率 Recall
召回率:以实际样本为判断依据,实际为正例的样本中,被预测正确的正例占总实际正例样本的比例。实际为正例的样本中,要么在预测中被预测正确TP,要么在预测中预测错误FN,用公式表示:
召回率的另一个名字,叫做“查全率”,评估所有实际正例是否被预测出来的占比多少,我们实际黑球个数是3个,被准确预测出来的个数是2个,所有召回率r=2/3。
F1 值
单独用精确率或者召回率是否能很好的评估模型好坏,举个例子:
1、什么情况下精确率很高但是召回率很低?
一个极端的例子,比如我们黑球实际上有3个,分别是1号、2号、3号球,如果我们只预测1号球是黑色,此时预测为正例的样本都是正确的,精确率p=1,但是召回率r=1/3。
2、什么情况下召回率很高但是精确率很低?
如果我们10个球都预测为黑球,此时所有实际为黑球都被预测正确了,召回率r=1,精确率p=3/10。
F1值就是中和了精确率和召回率的指标:
当P和R同时为1时,F1=1。当有一个很大,另一个很小的时候,比如P=1,R~0,此时F1~0。分子2PR的2完全了为了使最终取值在0-1之间,进行区间放大,无实际意义