首页 > 编程知识 正文

pr曲线和roc曲线区别,roc曲线约登指数

时间:2023-05-06 08:03:39 阅读:22430 作者:3001

你在小看很多宣传曲线、ROC曲线、AUC、AP吗? 学习结束后会忘记又学习吗? 我希望这篇文章能整理你的混乱。

1、重新理解混淆矩阵AUC、PR曲线、ROC曲线时,第一步是在纸上画这个混淆矩阵,方便后手的步进。

预测/真相1(1(Postive(0)postive ) TP (true postive 3360 kdy ) FP (false postive 3360假阳)0) negativefn

含义:如果将TP除以第一列,则预期1实际为1的样本占所有真正的一个类别的百分比。

假阳性率: FPR=fpp TN=fpn FPR=frac { FP } { fptn }=frac { FP } { n } FPR=FPT NFP=NFP

含义: FP除以第二列,预计1实际为0的样本占所有真0个类别的百分比。

ROC曲线:模型预测时,我们输出的预测结果是很多[ 0,1 ]之间的数值。 怎么把数值分成两类? 设定阈值。 大于此阈值的值被分类为1,小于此阈值的值被分类为0。 ROC曲线是从[ 0,1 ]设定很多阈值,每个阈值得到一个(TPR,FPR )对,纵轴为TPR,横轴为FPR,连接所有) TPR,FPR对得到ROC曲线

AUC(areaunderthecurve () )1)计算方法AUC即ROC曲线下的面积。 曲线越接近左上角,TPRFPR意味着整个模型的性能也越好。 因此可以断言,ROC曲线下的面积越大,模型的效果越好。

在最坏情况下,TPR=FPR,这表明对于不考虑真类别是1还是0的样本,分类器预测为1的概率相等,如下图所示。 也就是说,分类器没有区分犹豫不决的豌豆和反例的能力。 如果AUC小于0.5,则反转预测类别以得到AUC大于0.5的分类器。

)2)计算方法AUC可以任意取正负样本对,也可以解释为正样本预测值大于负样本预测值的概率。

显然,要计算AUC伪代码,应该如下所示:

1 .统计所有正样本数p、负样本数n;

2 .检查所有正负样本对,统计正样本预测值大于负样本预测值的样本总数number

3. A

U C = n u m b e r P ∗ N AUC = frac{number }{P * N} AUC=P∗Nnumber​
一些计算细节是当正负样本预测值刚好相等时,该样本记为0.5个。
PS: 在实际代码实现过程中其实可以和第一种方法一样进一步优化,可以先对正负样本排序,利用dp的思想迭代计算个数,可以将复杂度从O(N^2)降低为O(NlogN)。
具体参考:https://blog.csdn.net/weixin_43264415/article/details/99072092

3、PR曲线 & AP Recall召回率(查全率):

R e c a l l = T P T P + F N Recall=frac{TP}{TP+FN} Recall=TP+FNTP​
含义:TP除以第一列,即预测为1实际为1的样本在所有真实为1类别中的占比。等价于kdy率。

Presession精准率(查准率):

P r e s e s s i o n = T P T P + F P Presession=frac{TP}{TP+FP} Presession=TP+FPTP​
含义:FP除以第一行,即预测为1实际为1的样本在所有预测为1类别中的占比。

PR曲线:

同理ROC曲线。在模型预测的时候,我们输出的预测结果是一堆[0,1]之间的数值,怎么把数值变成二分类?设置一个阈值,大于这个阈值的值分类为1,小于这个阈值的值分类为0。ROC曲线就是我们从[0,1]设置一堆阈值,每个阈值得到一个(Presession,Recall)对,纵轴为Presession,横轴为Recall,把所有的(Presession,Recall)对对连起来就得到了PR曲线。

AP(PR曲线下的面积):

跟TPR和FPR不一样的是,在PR关系中,是一个此消彼长的关系,但往往我们希望二者都是越高越好,所以PR曲线是右上凸效果越好(也有例外,有比如在风险场景当预测为1实际为0时需要赔付时,大致会要求Recall接近100%,可以损失Precision)。所以除了特殊情况,通常情况都会使用Precision-recall曲线,来寻找分类器在Precision与Recall之间的权衡。

AP就是Precision-recall 曲线下面的面积,通常来说一个越好的分类器,AP值越高。
mAP是多个类别AP的平均值。这个mean的意思是对每个类的AP再求平均,得到的就是mAP的值,mAP的大小一定在[0,1]区间,越大越好。该指标是目标检测算法中最重要的一个。

4、ROC曲线、PR曲线优缺点 ROC曲线: (1)优点

A.兼顾正例和负例的权衡。因为TPR聚焦犹豫的豌豆例,FPR聚焦于与负例,使其成为一个比较均衡的评估方法。适用于评估分类器的整体性能。
B.ROC曲线的两个指标, TPR的分母是所有正例,FPR的分母是所有负例,故都不依赖于具体的类别分布。

(2)缺点

在类别不平衡的背景下,当负例N的数量远超正例P时,FP的大幅增长只能换来FPR的增长不明显,导致ROC曲线呈现一个过分乐观的效果估计。
如果主要关心正例的预测准确性的话,这就不太可接受了。

PR曲线: (1)优点

PR曲线的两个指标都聚焦犹豫的豌豆例。类别不平衡问题中由于主要关心正例,所以在此情况下PR曲线被广泛认为优于ROC曲线。

(2)缺点

只关注正例,不关注负例

ROC&PR曲线使用场景

(1)如果想兼顾正例与负例,则选用ROC曲线;如果在类别不平衡中,或者更看重正例的场景中比如推荐信息检索,则选用PR曲线
(2)如果有多份数据且存在不同的类别分布,比如信用卡欺诈问题中每个月正例和负例的比例可能都不相同,这时候如果只想单纯地比较分类器的性能且剔除类别分布改变的影响,则ROC曲线比较适合,因为类别分布改变可能使得PR曲线发生变化时好时坏,这种时候难以进行模型比较;反之,如果想测试不同类别分布下对分类器的性能的影响,则PR曲线比较适合。

【Reference】

周志华西瓜书
https://www.zhihu.com/question/39840928/answer/241440370
https://zhuanlan.zhihu.com/p/34655990
https://blog.csdn.net/weixin_43264415/article/details/99072092

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。