准确率、精确率(查准率)、召回率(查全率)、查准率和查全率的关系、F-Score

版权声明:站在巨人的肩膀上学习。 https://blog.csdn.net/zgcr654321/article/details/83387341

我们将算法预测的结果分成四种情况: 

正确肯定(真正例,True Positive,TP):预测为真,实际为真; 

正确否定(真反例,True Negative,TN):预测为假,实际为假;

错误肯定(假正例,False Positive,FP):预测为真,实际为假 ;

错误否定(假反例,False Negative,FN):预测为假,实际为真 。

显然样例总数为:TP+FP+TN+FN。

准确率(Accuracy):

被正确检索的样本数(包括真样本和假样本)与样本总数之比。即:(TP+TN)/(TP+FP+TN+FN)。

精确率(也叫查准率,Precision):

被正确检索的真样本数与检索时认为是真样本的数量之比。即:TP/(TP+FP)(正确性,标识为真的结果中有多少是真正的真结果)

召回率(也叫查全率,Recall) :

被正确检索的真样本数与应当被检索成真样本的数量之比。即:TP/(TP+FN)(有效性,一堆真正的真结果中有多少被正确标识为“真”)

举例说明:

一个班有50人,在某场考试中有40人及格,10人不及格。某一模型预测39人及格,其中37人确实及格了,剩下2人实际上不及格。

模型正确分类了45人(及格37人 + 不及格8人),Accuracy=45/50=90%。

本例中,不及格为正例,正确检索到了37人不及格,总共检索到39人,应当检索到40人不及格,故Precision=37/39=94.9%,Recall=37/40=92.5%。

查准率和查全率的关系:

查准率和查全率是一对矛盾的度量。一般来说,查准率高时,查全率往往偏低;而查全率高时,查准率往往偏低,可以通过Precision-Recall曲线来取两者的平衡值。

"平衡点"是"查准率=查全率"时的取值。

如:

若一个学习器P-R曲线被另一个学习器的曲线完全"包住",则可断言后者的性能优于前者。

如上图中学习器A的性能优于学习器C; 如果两个学习器的P-R曲线发生了交叉,如图中的A与B,则难以一般性地断言两者孰优孰劣,只能在具体的查准率或查全率条件下进行比较。然而,在很多情形下,人们往往仍希望把学习器A与B比出个高低。这时一个比较合理的判据是比较P-R 曲线节面积的大小,面积大者性能更优

应用场景:

「宁愿漏掉,不可错杀」

在识别垃圾邮件的场景中可能偏向这一种思路,因为我们不希望很多的正常邮件被误杀,这样会造成严重的困扰。
因此,Precision 将是一个被侧重关心的指标。

「宁愿错杀,不可漏掉」

在金融风控领域大多偏向这种思路,我们希望系统能够筛选出所有有风险的行为或用户,然后交给人工鉴别,漏掉一个可能造成灾难性后果。
因此,Recall 将是一个被侧重关心的指标。

F-Score:

F-Score用来综合考虑Precision与Recall。

当β=1时,称为F1-score,此时,精确率和召回率都很重要,权重相同。有些情况下,我们认为精确率更重要些,那就调整β的值小于1;如果我们认为召回率更重要些,那就调整β的值大于1。

猜你喜欢

转载自blog.csdn.net/zgcr654321/article/details/83387341