数据的真实结果和预测结果如以下二联表所示,行为真实值,列为预测值。

真实阳性 真实阴性
预测阳性 TP FP
预测阴性 FN TN

F score

  • Fscore是precision和recall的调和平均数,当precision和recall都大时,Fscore才会大,其中:
    精确率: P r e c i s i o n = T P T P + F P Precision=\frac{TP}{TP+FP} Precision=TP+FPTP​
    召回率: R e c a l l = T P T P + F N Recall=\frac{TP}{TP+FN} Recall=TP+FNTP​
    recall等价于sensitivity(灵敏性),为真阳性率(true positive rate,TPR)。F socre的计算公式为:
    F s c o r e = ( P r e c i s i o n − 1 + R e c a l l − 1 2 ) − 1 = ( 2 + F P T P + F N T P 2 ) − 1 Fscore={(\frac{Precision^{-1}+Recall^{-1}}{2})}^{-1}={(\frac{2+\frac{FP}{TP}+\frac{FN}{TP}}{2})}^{-1} Fscore=(2Precision−1+Recall−1​)−1=(22+TPFP​+TPFN​​)−1
    因此,Fscore只与FP/TP和FN/TP有关。当TP大,FP和FN都小的时候Fscore才会比较大。Fscore(precision-recall)受到群体中真阳性比例的影响,若真阳性比例较少则会使得TP与FP相差不大,从而导致Fscore较小。此时Fscore用于评价模型性能则不适用(如早筛)。

ROC (Receiver Operating Characteristic)

FPR(fale positive rate,FPR)假阳率,又称误报率、误检率:
F P R = F P F P + T N FPR=\frac{FP}{FP+TN} FPR=FP+TNFP​
其与特异性的和为1。
Specificity,特异性:
S p e c i f i c i t y = T N T N + F P Specificity=\frac{TN}{TN+FP} Specificity=TN+FPTN​

  • ROC曲线:一般选取一个特定阀值(threshold),预测为正样本的概率大于等于该阀值判定为正样本,小于该阀值判定为负样本。根据召回率TPR和误报率FPR,在平面上描述对应的坐标点和值,就得到ROC曲线,其中TPR为纵轴,FPR为横轴。ROC曲线中左下角(0,0)阈值最大,此时所有样本均为阴性,因而有FPR=0,TPR=0;ROC曲线中右上角(1,1)阈值最小,此时所有样本均为阳性,因而有FPR=1,TPR=1。ROC曲线在左下角到右上角移动过程中,随着阀值的逐渐减小,越来越多的正样本会被判定为阳性,但也伴随着阴性样本被判定为阳性样本。所以TPR和FPR都会增大。当然最佳的阀值是越接近左上角,此时TPR=1,FPR=0
  • AUC值为ROC曲线向下覆盖的面积,取值范围为[0,1],值越大,性能越好。
  • 另一种AUC计算法方法:
    A U C = Σ i ∈ p o s i t i v e I ( P p , P n ) M × N AUC=\frac{\Sigma_{i\in positive I(P_p,P_n)}}{M\times N} AUC=M×NΣi∈positiveI(Pp​,Pn​)​​
    其中, P p P_p Pp​和 P n P_n Pn​分别为预测阳性样本和阴性样本的概率, I ( P p , P n ) I(P_p,P_n) I(Pp​,Pn​)为:
    I ( P p , P n ) = { 1 = i f P p > P n 0.5 = i f P p = P n 0 = i f P p < P n I(P_p,P_n)=\left\{ \begin{aligned} 1 & = & if P_p>P_n \\ 0.5 & = & if P_p=P_n \\ 0 & = & if P_p<P_n \end{aligned} \right. I(Pp​,Pn​)=⎩ ⎨ ⎧​10.50​===​ifPp​>Pn​ifPp​=Pn​ifPp​<Pn​​
    AUC同时考虑了模型对于阳性样本和阴性样本的分类能力。因此,即使训练样本存在不平衡,AUC指标依然可以对模型作出合理的评价,在群体中真阳性比例较少时依然适用(如早筛)。

阳性和阴性预测值

除了以上指标之外,阳性预测值和阴性预测值也常作为评价模型好坏的指标,在肿瘤早筛中应用较多。阳性预测值(PositivePredictive Value, PPV)是指早筛产品判断为阳性(患癌)的受检者中,真正患癌的比例,是衡量早筛产品避免“误诊”能力的指标。PPV=真阳性人群/检测阳性人群。理想的早筛产品的PPV为 100%,不存在假阳性人群。计算公式为: P P V = T P T P + F P PPV=\frac{TP}{TP+FP} PPV=TP+FPTP​
阴性预测值(Negative Predictive Value, NPV)是指早筛产品判断为阴性(健康)的受检者中,真正未患癌的比例,是衡量早筛产品“漏检”能力、排阴能力的指标。计算公式: N P V = T N T N + F N NPV=\frac{TN}{TN+FN} NPV=TN+FNTN​

F score和ROC相关推荐

  1. 分类模型性能评价指标:混淆矩阵、F Score、ROC曲线与AUC面积、PR曲线

    以二分类模型为例:二分类模型最终需要判断样本的结果是1还是0,或者说是positive还是negative. 评价分类模型性能的场景: 采集一个称之为测试集的数据集: 测试集的每一个样本由特征数据及其 ...

  2. 机器学习常用性能度量中的Accuracy、Precision、Recall、ROC、F score等都是些什么东西?...

    一篇文章就搞懂啦,这个必须收藏! 我们以图片分类来举例,当然换成文本.语音等也是一样的. Positive 正样本.比如你要识别一组图片是不是猫,那么你预测某张图片是猫,这张图片就被预测成了正样本. ...

  3. 机器学习中的precision, recall, accuracy, F值,ROC曲线

    参考: 假设用机器学习方法解决某个二元分类问题,在分析比较不同模型时常看到这些指标. 四个概念:TP,FP,TN,FN TP(True Positive):在判定为positive的样本中,判断正确的 ...

  4. 二分类指标Precision、Recall、Accuracy、F score、TPR、FPR、MCC

    Ture Positive Rate (TPR):TPTP+FN\frac{TP}{TP+FN}TP+FNTP​,考察分类器在GT为阳性的样本中预测正确的比例. False Positive Rate ...

  5. 分类指标:准确率、精确率、召回率、F1 score以及ROC、AUC、宏平均、加权平均

    本文将介绍: 混淆矩阵(Confusion Matrix) 准确率(accuracy) 召回率(recall) 精确率(precision) F1score ROC和AUC 宏平均(macro avg ...

  6. 02_混淆矩阵、准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F值(F-Measure) +Roc曲线和PR曲线+sklearn中分类模型评估API+ 自己补充整理

    此博文参考: 关于ROC绘制参考博文: https://blog.csdn.net/u011630575/article/details/80250177 Python+ROC相关的博文: https ...

  7. 精度 召回率 F score

    在所有我们预测的阳性结果中,有多少是正确的? 精度 = 真阳性 / (真阳性 + 假阳性) 对于宇宙飞船,我们不允许出现任何故障零件,可以检查本身能正常运转的零件.因此,这是一个高召回率模型,因此 β ...

  8. f score matlab,机器学习中如何用F-score进行特征选择

    <本文同步发布于"脑之说"微信公众号,欢迎搜索关注~~> 目前,机器学习在脑科学领域的应用可谓广泛而深入,不论你是做EEG/ERP研究,还是做MRI研究,都会看到机器学 ...

  9. 二分类问题的micro-F1 score(f值)和Accuracy(准确度)

    直接上结论: 二分类的micro-F1 score和Accuracy的值相等 时隔一年多看到了完整细致的文章,同样说明了micro-F1和accuracy和recall和precision相等,同时还 ...

最新文章

  1. 向Hadoop集群添加一个新的节点
  2. JavaScript 中的事件设计
  3. 干货 | 十年经验PM手机里都装了哪些app?
  4. tp5.1的安装与运行流程
  5. linux php自动执行_linux下实现定时执行php脚本
  6. 移动端拖拽排序 html,移动端拖拽排序
  7. AC自动机 - 关于Fail指针
  8. ionic4创建页面
  9. 分形图案c语言源程序,Mandlbrot集图形的一个C语言实现
  10. 不在gopath目录下能使用godoc吗_一文搞懂 Go Modules 前世今生及入门使用
  11. 20164317《网络对抗技术》Exp3 免杀原理与实践
  12. 10人勾结苹果外包公司员工窃个人信息 涉案900万
  13. scrapy 快速入门
  14. 连续+离散变量的联合分布求解
  15. 【ADRC】自抗扰控制
  16. 前端 HTML5+CSS3基础知识一
  17. 如何解决SQL2008r2 登录不上的问题
  18. swf 格式Flash 动画播放器在Android上的实现
  19. 改进YOLOv5系列:2.PicoDet结构的修改
  20. 输入圆柱的高和半径,求圆柱体积,volume=π×r 2 ×h 。要求定义和调用函数cylinder (r, h )计算圆柱体的体积。

热门文章

  1. 面经|小米-未来星-数据科学家|一面|70min
  2. android实现资源分包分类存放以便查找
  3. QQ第三方登录的详细教程
  4. 计算机科技学术讲座心得体会,学术报告心得体会
  5. for循环、do……while循环和一些循环练习
  6. 【视觉-摄像机1】opencv 调用工业摄像机(USB接口和GigE接口)
  7. 学习数据结构的一些预备知识
  8. Android-MVP模式详解,一篇文章帮你解答
  9. GridView一般换行与强制换行
  10. 腾讯云函数SCF初探