深度学习中ROC曲线和PR曲线 来自互联网

申明:资料来源参考文献

参考文献: 
小白也能看懂的 ROC 曲线详解! (qq.com)

ROC曲线 AUC (Area Under Curve) - 知乎 (zhihu.com)

Precision-Recall (PR) 曲线-在信息检索重要性 - 知乎 (zhihu.com)

接受者操作特征曲线_百度百科 (baidu.com)

深度学习,误检率,漏检率计算_漏检率和误检率公式-CSDN博客

1.什么是ROC

接受者操作特性曲线(receiver operating characteristic curve,简称ROC曲线),又称为感受性曲线(sensitivity curve)。得此名的原因在于曲线上各点反映着相同的感受性,它们都是对同一信号(等同于本文第二章的阈值)刺激的反应,只不过是在几种不同的判定标准下所得的结果而已。接受者操作特性曲线就是以虚惊概率为横轴,击中概率为纵轴所组成的坐标图,和被试在特定刺激条件下由于采用不同的判断标准得出的不同结果画出的曲线 [1]。

例如有500张画,里面有真画有假画,将所有画分为5组,每一组有100张,并给出100张有真画的比例,该比例叫做先定概率。(比如100张有10张真,那么先定概率为0.1)然后主试者分别设置5组的先定概率为0.1,0.3,0.5,0.7,0.9。主试者首先将真画呈现给被试者完毕之后,与此组假画混合,然后随机地逐张呈现给被试者。这时,每呈现一张画,即要求被试判断此画是”真”还是”假”,并要求被试把结果记录在实验纸上 

五种先定概率得到的实验结果,就可计算击中概率和虚惊概率。最后,根据不同先定概率下的击中概率和虚惊概率,就可在图上确定各点的位置,把五点联接起来就绘成一条 ROC曲线。

击中率:就是真阳率 (召回率) 本来为正样本预测为正样本 所占所有正样本的比例,所有正样本=TP+FN

虚惊率:就是假阳率  本来为负样本预测为正样本 所占所有负样本的比例,所有负样本=FP+TN

如下图

79a0593661284fa68cbad3e34784166f.png

36c0ec8bc611426fa577f3792707ff16.webp

2. 理解ROC曲线画图原理:

roc手画:

id真实标签预测分数id真实标签预测分数
11.9111.4
21.8120.39
30.7131.38
41.6140.37
51.55150.36
61.54160.35
70.53171.34
80.52180.33
91.51191.30
100.505200.1

当设定阈值为 0.9 时,只有第一个点预测为 1,其余都为 0,故 FP=0、TP=1,计算出 FPR=0/10=0,TPR=1/10=0.1,画出点 (0,0.1)

当设定阈值为 0.8 时,只有前两个点预测为 1,其余都为 0,故 FP=0、TP=2,计算出 FPR=0/10=0,TPR=2/10=0.2,画出点 (0,0.2)

当设定阈值为 0.7 时,只有前三个点预测为 1,其余都为 0,故 FP=1、TP=2,计算出 FPR=1/10=0.1,TPR=2/10=0.2,画出点 (0.1,0.2)。

以此类推,画出的 ROC 曲线如下:

6de2c8f9cecbb1ca90d505c476e9b23e.png

因此,在画 ROC 曲线前,需要将预测分数从大到小排序,然后将预测分数依次设定为阈值

3. AUC是啥

ROC曲线下的面积,介于0.1和1之间,作为数值可以直观的评价分类器的好坏,值越大越好。

format,png

4. PR曲线

PR曲线是精确度和召回率的点连成的线。在P-R曲线中,Precision为横坐标,Recall为纵坐标。在ROC曲线中曲线越凸向左上角约好,在P-R曲线中,曲线越凸向右上角越好。

9586f5c380aa49d0bced969f6609b2fc.png1a4a183f89f241acba6d45360dce54f9.png

假设:
一组样本,个数为,正例有P个,负例有N个,

算法结果:
判断为正例的正例有TP个,判断为负例的正例有FN个(假的负例)P=TP+FN
判断为负例的负例为TN个,判断为正例的负例有FP个(假的正例)N=TN+FP

指标计算:
精确度(Precision)P=所有判断为正例的例子中,真正为正例的所占的比例=TP/(TP+FP)


召回率(Recall)R=所有正例中,被判断为正例的比例=TP/P

准确率(Accuracy)A=判断正确的例子的比例=(TP+TN)/(P+N)

还有一种指标的解释,两者等同

具体运用:

下面是两个场景:
1. 地震的预测
对于地震的预测,我们希望的是RECALL非常高,也就是说每次地震我们都希望预测出来。这个时候我们可以牺牲PRECISION。预警发出1000次警报,把所有的10次地震都预测正确了,此时的精度为预测正样本符合实际的数量占预测的正样本的比例:10/1000=1%,但此时的召回率为预测为正样本符合实际的数量占实际正样本的比例:10/10=100%;也不要预测100次对了8次漏了两次。此时的精度为:8/100=8%,召回率:8/10=80%.

2. 嫌疑人定罪基于不错怪一个好人的原则,对于嫌疑人的定罪我们希望是非常准确的。及时有时候放过了一些罪犯(recall低),但也是值得的。有100个犯罪,我们愿意预测10个,其中10个都对了,此时精度:10/10=100%,召回率:10/100=10%.也不要预测100次,其中60个对,此时精度:60/100=60%,召回率:60/100=60%

  • 28
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
ROC曲线(Receiver Operating Characteristic Curve)和PR曲线Precision-Recall Curve)是在二分类问题常用的评估模型性能的工具,它们有一些区别和特点。 1. 目标不同: - ROC曲线关注的是真正例率(True Positive Rate,即召回率)与假正例率(False Positive Rate)之间的权衡。ROC曲线展示了在不同阈值下,分类器的敏感性和特异性之间的关系。 - PR曲线则关注的是精确率(Precision)与召回率(Recall)之间的权衡。PR曲线展示了在不同阈值下,分类器的预测准确性和查全率之间的关系。 2. 数据分布不平衡时的表现: - ROC曲线对于数据分布不平衡的情况下相对稳定,因为它使用了假正例率作为横轴,而假正例率不受真实负例数量的影响。 - PR曲线在数据分布不平衡时更能准确地反映分类器的性能,因为它使用了精确率作为纵轴,能够展示在正例的正确预测比例。 3. 敏感性不同: - ROC曲线能够展示分类器在整个概率范围内的性能,对于不同的阈值都可以进行评估。 - PR曲线则更关注分类器在高概率(高置信度)区域的性能,对于低概率的预测结果较为敏感。 总而言之,ROC曲线主要用于评估分类器的整体性能,特别是在样本不平衡的情况下,而PR曲线则更适用于评估分类器在正例预测方面的性能。根据具体问题和需求,选择合适的曲线进行模型性能评估。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奋斗的蜗牛小猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值