精确率,召回率,准确率,TP,FN,FP,FN
以一个例子入手,我们写了一个模型去预测样本是否为男性。
假设,有100个样本,其中有5个样本是男性,有95个样本是女性。
我们用系统对这100个样本进行预测,预测结果正确97个,错误3个。一共预测出有6个男性,其中正确预测的有4个
理解即为:男性正确预测出4个,女性正确预测出93个,将1个男性预测为女性,将2个女性预测为男性。
- 准确率
准确率,即是在所有样本的预测结果中,预测正确的概率。97/ 100 = 97%
- 精确率
精确率,是针对于我们要预测的结果,我们的例子是要预测男性,所以针对是的样本中预测是男性的结果,一共预测了6个男性,其中正确的有4个。4 / 6 = 66.7 %
- 召回率
召回率,是针对参与预测的正样本,我们的例子是要预测男性,所以针对是参与预测的男性的样本,样本中一共有5个男性,预测正确的是4个。4 / 5 = 80%
总而言之,精确率是针对预测结果,也就是预测结果中正确的概率;;;召回率是针对正样本的,也就是参与预测的正样本预测结果正确的概率。
正样本是指属于某一类别的样本,反样本是指不属于某一类别的样本。这个例子中,我们要检测的是男性,所以男性的样本就是正样本,女性的样本就是负样本。
引入概念TP,FN,TN,FP。在计算准确率,召回率,精确率时候,有时候会看见这几个英文符号。
我们还是以开头为例子,这个模型是进行二分类,要么是男性,要么是女性。我们要定义男性为Postive(P),女性为Negative(N),预测正确为True(T),预测错误为False(F),正如所学,男性女性,正确错误可以有四种组合方式。
在上面的例子中,
- TP,即为样本是男性,并且预测正确的,有4个;
- TN,即为样本是女性,并且预测正确的,有93个;
- FP,即为样本是女性,但预测时候,将其预测为男性,有2个;
- FN,即为样本是男性,但预测时候,将其预测为女性,有1个;
召回率 = TP/(TP+FN)= 4 /(4+1)= 4/5 = 80%
精确率 = TP/(TP+FP)=4/ (4+2)=4/6 = 66.7%
准确率 = (TP+TN)/(TP+TN+FP+FN)= (4+93)/(4+93+2+1)= 97%