申明:资料来源参考文献
参考文献:
小白也能看懂的 ROC 曲线详解! (qq.com)
ROC曲线 AUC (Area Under Curve) - 知乎 (zhihu.com)
Precision-Recall (PR) 曲线-在信息检索重要性 - 知乎 (zhihu.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
如下图
2. 理解ROC曲线画图原理:
roc手画:
id | 真实标签 | 预测分数 | id | 真实标签 | 预测分数 |
---|---|---|---|---|---|
1 | 1 | .9 | 11 | 1 | .4 |
2 | 1 | .8 | 12 | 0 | .39 |
3 | 0 | .7 | 13 | 1 | .38 |
4 | 1 | .6 | 14 | 0 | .37 |
5 | 1 | .55 | 15 | 0 | .36 |
6 | 1 | .54 | 16 | 0 | .35 |
7 | 0 | .53 | 17 | 1 | .34 |
8 | 0 | .52 | 18 | 0 | .33 |
9 | 1 | .51 | 19 | 1 | .30 |
10 | 0 | .505 | 20 | 0 | .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 曲线如下:
因此,在画 ROC 曲线前,需要将预测分数从大到小排序,然后将预测分数依次设定为阈值
3. AUC是啥
ROC曲线下的面积,介于0.1和1之间,作为数值可以直观的评价分类器的好坏,值越大越好。
4. PR曲线
PR曲线是精确度和召回率的点连成的线。在P-R曲线中,Precision为横坐标,Recall为纵坐标。在ROC曲线中曲线越凸向左上角约好,在P-R曲线中,曲线越凸向右上角越好。
假设:
一组样本,个数为,正例有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%