模型性能指标
发布日期:2022-03-11 10:18:47 浏览次数:21 分类:技术文章

本文共 2901 字,大约阅读时间需要 9 分钟。

这里首先介绍几个常见的模型评价术语,现在假设我们进行二分类的任务,可将样例根据其真实类别与学习器预测类别的组合划分为真正例(true positive)、假正例(false positive)、真反例(true negative)、假反例(false negative)四种情形:

1. True positives(TP):  被正确地划分为正例的个数,即实际为正例且被分类器划分为正例的样本数;

2. False positives(FP): 被错误地划分为正例的个数,即实际为负例但被分类器划分为正例的样本数;

3. False negatives(FN):被错误地划分为反例的个数,即实际为正例但被分类器划分为反例的样本数;

4. True negatives(TN): 被正确地划分为反例的个数,即实际为负例且被分类器划分为反例的样本数。 

并且,TP+FP+TN+FN=样例总数。

比如,对猫狗图片进行分类,有15张图片,其中12张是狗的图片,3张是猫的图片,算法分类出有8张图片是狗,在这8张图片中实际上只有5张图片是狗,另外3张是猫的图片,则:

 

 

真实情况

预测结果

正例

反例

正例

TP:5

FN:7

反例

FP:3

TN:0

一、错误率、精度

错误率(Error Rate):分类错误的样本数占样本总数的比例。对样本个数为m的样本集D,分类错误率计算公式如1所示:

 

对公式(1)解释,统计分类器预测出来的结果与真实结果不相同的个数,然后除以总的样例集D的个数m。

精度(Accuracy):分类正确的样本数占样本总数的比例。对样本个数为m的样本集D,

分类精度计算公式如2所示:

 

对公式(2)的解释,统计分类正确的样本数,然后除以总的样例集D的个数。

注意:这里的分类正确的样本数指的不仅是正例分类正确的个数还有反例分类正确的个数。

 

二、查准率、查全率

1)查准率、查全率出现的原因:

情景一:

错误率和精度虽然常用,但是并不能满足所有任务需求。以西瓜问题为例,假定瓜农拉来一车西瓜,我们用训练好的模型对这些西瓜进行判别,显然,错误率衡量了有多少比例的瓜被判别错误。但是若我们关心的是“挑出的西瓜中有多少比例是好瓜”,或者“所有好瓜中有多少比例被挑了出来”,那么错误率显然就不够用了,这时需要使用其他的性能度量。

情景二:

类似的需求在信息检索、Web搜索等应用中经常出现,例如在信息检索中,我们经常会关心“检索出的信息中有多少比例是用户感兴趣的”,“用户感兴趣的信息中有多少被检索出来了”。

类似于上述情景,错误率与准确率不能很好满足需求,而“查准率”与“查全率”是更为合适于此类需求的性能度量。

2)什么是查准率和查全率

查准率(Precision),又叫准确率,缩写表示用P。查准率是针对预测结果而言的,表示的是预测为正的样例中真正为正样例的比例。定义公式如3所示:

 

注意:精度(Accuracy)和准确率(Precision)表示的是不同的概念,计算方法也不同。所以,大家在看paper的时候,要特别注意这些细节。

精度(Accuracy),缩写表示用A。精确则是分类正确的样本数占样本总数的比例。Accuracy反应了分类器对整个样本的判定能力(即能将正的判定为正的,负的判定为负的)。定义公式如4所示:

 

查全率(Recall),又叫召回率,缩写表示用R。查全率是针对我们原来的样本而言的,它表示的是样本中的正例有多少被预测正确。定义公式如5所示:

 

注意:大家可以比较一下查准率和查全率的计算公式。其实就是分母不同,查准率的分母是预测为正的样本数。查全率的分母是原样本的所有正样例数。

3)查准率和查全率之间的矛盾

查准率和查全率是一对矛盾的度量。一般来说,查准率高时,查全率往往偏低;而查全率高时,查准率往往偏低。

思考一个问题:为什么会有这样的情况呢?

答案:我们可以这样理解,在一个分类器中,你想要更高的查准率,那么你的阈值要设置的更高,只有这样才能有较高的把握确定我们预测是正例是真正例。一旦我们把阈值设置高了,那我们预测出正例的样本数就少了,那真正例数就更少了,查不全所有的正样例。例如,若希望将好瓜尽可能多地挑选出来,则可通过增加选瓜的数量来实现,如果将所有的西瓜都选上,那么所有的好瓜也必然都选上了,但这样查准率就会较低;若希望选出的瓜中好瓜比例尽可能高,则可只挑选最有把握的瓜,但这样就难免会漏掉不少好瓜,使得查全率较低。通常只有在一些简单任务中,才可能使查全率和查准率都很高。

三、P-R曲线、平衡点和F1度量

1)P-R曲线

在很多情形下,我们可根据学习器的预测结果对样例进行排序,排在前面的是学习器认为“最可能”是正例的样本,排在最后的是学习器认为“最不可能”是正例的样本。按此顺序设置不同的阈值,逐个把样本作为正例进行预测,则每次可以计算出当前的查准率、查全率。以查准率为纵轴、查全率为横轴作图,就得到了查准率-查全率曲线,简称“P-R曲线”,显示该曲线的图称为“P-R图”。图1给出了一个示意图:

 

图1:P-R曲线与平衡点示意图

P-R图直观地显示出学习器在样本总体上的查全率、查准率。在进行比较时,若一个学习器的P-R曲线被另一个学习器的曲线完全“包住”,则可断言后者的性能优于前者,例如图1中学习器A的性能优于学习器C;如果两个学习器的P-R曲线发生了交叉,例如图1中的A和B,则难以一般性地断言两者孰优孰劣,只能在具体的查准率或查全率条件下进行比较。然而,在很多情形下,人们往往仍然希望把学习器A与B比出个高低。这时,一个比较合理的判断依据是比较P-R曲线下面积的大小,它在一定程度上表征了学习器在查准率和查全率上取得相对“双高”的比例。但这个值不太容易估算,因此,人们设计了一些综合考虑查准率、查全率的性能度量,比如平衡点(BEP)度量、F1度量。

2)平衡点(BEP)

“平衡点”(Break-Even-Point,简称BEP)就是这样一个度量,它是“查准率=查全率”时的取值,例如图1中学习器C的BEP是0.64,而基于BEP的比较,可认为学习器A优于B。

3)F1度量

BEP曲线还是过于简化了些,更常用的是F1度量。我们先来谈谈F1度量的由来是加权调和平均,计算公式如6所示:

 

加权调和平均与算术平均和几何平均相比,调和平均更重视较小值。当β=1,即F1是基于查准率与查全率的调和平均定义的,公式如7所示:

 

我们把公式7求倒数,即得F1度量公式,即公式8所示。

 

在一些应用中,对查准率和查全率的重视程度有所不同。例如在商品推荐系统中,为了尽可能少打扰用户,更希望推荐内容确实是用户感兴趣的,此时查准率更重要;而在逃犯信息检索系统中,更希望尽可能少漏掉逃犯,此时查全率更重要。F1度量的一般形式是,能让我们表达出对查准率/查全率的不同偏好,它定义为公式9所示。

 

其中,β>0度量了查全率对查准率的相对重要性。β=1时,退化为标准的F1;β>1时查全率有更大影响;β<1时,查准率有更大影响。

Reference:《机器学习》周志华著。

 

 

 

转载地址:https://blog.csdn.net/weicao1990/article/details/100077289 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:数据预处理与Batch Normalization
下一篇:Pytorch 实现sobel算子的卷积操作

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年04月20日 08时00分53秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章