1、概念

金标准(标准集)

预测算法(预测集)

验证存在(T)

验证不存在(F)

合计

预测存在(P)

预测为正,真实为正(TP)

预测为正,真实为负(FP)

P(预测为正样本)

预测不存在(N)

预测为负,真实为正(FN)

预测为负,真实为负(TN)

N(预测为负样本)

合计

T(验证为正样本)

F(验证为负样本)

所有样本数(P+N或者T+F)

简化后:

标准集

测试集

正样本

负样本

合计

预测正样本

TP

FP

P

预测负样本

FN

TN

N

合计

T

F

P+N或者T+F

准确率(Accuracy):Acc = ( TP + TN ) / ( P +N )

精确率( precision )/(查准率):TP / ( TP+FP ) = TP / P

敏感性(Sensitivity)/召回率(recall)/(查全率):TP / (TP + FN ) = TP / T

真阳性率(True positive rate):TPR = TP / ( TP+FN ) = TP / T  (敏感性 sensitivity)

真阴性率(TNR:true negative rate):TNR= TN / (TN+FP) = TN/F(特异性:specificity),描述识别出的负例占所有负例的比例

假阳性率(False positive rate):FPR = FP / ( FP + TN ) = FP / F

假阴性率 (False Negative Rate):FNR = FN /(TP + FN)= FN / T

F-measure:2*recall*precision / ( recall + precision )

ROC曲线:FPR为横坐标,TPR为纵坐标

PR曲线:recall为横坐标,precision 为纵坐标

=====概念解释=============

敏感性 Sensitivity
敏感性又称真阳性率,就是发病之后,你的诊断方法对疾病的敏感程度(识别能力)。

敏感性越高,漏诊概率越低。

特异性 Specificity
特异性又称真阴性率,不发病(我们这里称之为健康)的特征是有别于发病的特征的,我们利用这些差异避免误诊,那么诊断标准对于这些差异利用的如何就用特异性来表示。

特异性越高,确诊概率越高。
========================

从这个表格中可以引出一些其它的评价指标: 
- ACC:classification accuracy,描述分类器的分类准确率 
计算公式为:ACC=(TP+TN)/(TP+FP+FN+TN) 
- BER:balanced error rate 
计算公式为:BER=1/2*(FPR+FN/(FN+TP)) 
- TPR:true positive rate,描述识别出的所有正例占所有正例的比例 
计算公式为:TPR=TP/ (TP+ FN) 
- FPR:false positive rate,描述将负例识别为正例的情况占所有负例的比例 
计算公式为:FPR= FP / (FP + TN) 
- TNR:true negative rate,描述识别出的负例占所有负例的比例 
计算公式为:TNR= TN / (FP + TN) 
- PPV:Positive predictive value 
计算公式为:PPV=TP / (TP + FP) 
- NPV:Negative predictive value 
计算公式:NPV=TN / (FN + TN) 
其中TPR即为敏感度(sensitivity),TNR即为特异度(specificity)。

2、测试例子

十次十折后计算的预测标签

计算例子,比如第10次计算,通过excel筛选器,

筛选预测pda=1,label =1,共TP = 53个病例.

筛选预测pda=1,label =0共FP = 4个病例.

筛选预测pda=0,label =1,共FN = 11个病例.

筛选预测pda=0,label =0,共TN = 44个病例.

金标准(标准集)

预测算法(预测集)

验证存在(T)

验证不存在(F)

合计

预测存在(P)

预测为正,真实为正(TP=53)

预测为正,真实为负(FP=4)

P=57(预测为正样本)

预测不存在(N)

预测为负,真实为正(FN=11)

预测为负,真实为负(TN=44)

N=55(预测为负样本)

合计

T=64(验证为正样本)

F=48(验证为负样本)

所有样本数(P+N或者T+F=112)

敏感性 (sensitivity) TPR = TP / ( TP+FN ) = TP / T  =0.828125

特异性(specificity) TNR= TN / (FP + TN) = 44/48 = 0.9166666666666667

准确率(Accuracy):Acc = ( TP + TN ) / ( P +N ) = (53+44 )/112 = 0.8660714285714286

ROC 曲线TPR,FPR计算例子:

1、ROC曲线是如何计算得到的? - 知乎

2、目标检测Object Detection下的P-R曲线,AP,mAP,AUC,ROC曲线详解_喵喵扫描仪的博客-CSDN博客_目标检测roc曲线

3、P-R曲线及与ROC曲线区别 - 光彩照人 - 博客园

4、ROC曲线、P-R曲线以及mAP_Mr_health的博客-CSDN博客_roc曲线使用场景

5、P-R曲线深入理解_keep_forward的博客-CSDN博客_p-r曲线

6、计算P-R曲线的代码:

sklearn.metrics.precision_recall_curve(y_true, probas_pred, pos_label=None, sample_weight=None)

sklearn.metrics.average_precision_score则计算预测值的平均准确率(AP: average precision)

python画PR曲线(precision-recall曲线)_Mr.Jcak的博客-CSDN博客_precision_recall_curve

7、用sklearn库自动计算tp,fp,tn,fn,计算acc,sen,spe,f1-score,precision指标。

参考文章:

1)sklearn中混淆矩阵(confusion_matrix函数)的理解与使用_秃头崽崽的博客-CSDN博客_sklearn 混淆矩阵

2)Python sklearn.metrics.confusion_matrix实例讲解 - 码农教程

3)机器学习笔记--classification_report&精确度/召回率/F1值_阿卡蒂奥的博客-CSDN博客_classification report

具体代码如下:

# aip指标fpr_aip, tpr_aip, thresholds = metrics.roc_curve(roc_aip_gt_labels, roc_aip_pre_scores, drop_intermediate=False)auc = metrics.auc(fpr_aip, tpr_aip)all_indicators_aip["auc"].append(auc)y_pred = np.where(np.array(roc_aip_pre_scores) > 0.5, 1, 0)tn, fp, fn, tp = metrics.confusion_matrix(roc_aip_gt_labels, y_pred, labels=[0, 1]).ravel()print(metrics.classification_report(roc_aip_gt_labels, y_pred, target_names=['BG', 'AIP'],digits=4))  # target_names和上面的labels对上sen = tp / (tp + fn)all_indicators_aip["sen"].append(sen)spe = tn / (tn + fp)all_indicators_aip["spe"].append(spe)precision = tp / (tp + fp)all_indicators_aip["precision"].append(precision)acc = (tp + tn) / (tp + fp + tn + fn)all_indicators_aip["acc"].append(acc)f1_score = 2 * precision * sen / (precision + sen)all_indicators_aip["f1_score"].append(f1_score)

(精确度,召回率,真阳性,假阳性)ACC、敏感性、特异性等 ROC指标相关推荐

  1. 精确度/召回率/F1值/Micro-F1和Macro-F1的理解

    如下图所示,假设有若干张图片,其中12张是狗的图片其余是猫的图片.现在利用程序去识别狗的图片,结果在识别出的8张图片中有5张是狗的图片,3张是猫的图片(属于误报). 图中,实心小圆代表狗的图片,虚心小 ...

  2. 全面梳理:准确率,精确率,召回率,查准率,查全率,假阳性,真阳性,PRC,ROC,AUC,F1

    二分类问题的结果有四种: 逻辑在于,你的预测是positive-1和negative-0,true和false描述你本次预测的对错 true positive-TP:预测为1,预测正确即实际1 fal ...

  3. 真阳性假阳性假阴性分割可视化

    1.分割掩码二值化 分割掩码转化为图像格式时会在分割边界处有很多灰度像素点,这将导致后续利用分割掩码和预测分割掩码进行处理时会在边界处出现很多噪声点,因此利用阈值将分割掩码转换为二值图,消除边界上的灰 ...

  4. 一文详尽混淆矩阵、准确率、精确率、召回率、F1值、P-R 曲线、ROC 曲线、AUC 值、Micro-F1 和 Macro-F1

    文章目录 二分类的评价指标 一.混淆矩阵与 TP.TN.FP.FN 二.准确率.精确率.召回率.F1值 三.P-R 曲线 四.ROC 曲线.AUC 值 五.P-R曲线和ROC曲线有什么区别,如何选择? ...

  5. 【机器学习-西瓜书】二、性能度量:召回率;P-R曲线;F1值;ROC;AUC

    关键词:准确率(查准率,precision):召回率(查全率,recall):P-R曲线,平衡点(Break-Even Point, BEP):F1值,F值:ROC(Receiver Operatin ...

  6. 准确率、精确率、召回率、F1-score、TPR、FPR、ROC曲线、AUC

    1.分类评估方法 1.1精确率与召回率 1.3.分类评估报告api sklearn.metrics.classification_report(y_true, y_pred, labels=[], t ...

  7. 评价指标——精确度,召回率,真阳率,假阳率,P-R曲线,ROC曲线,AUC

    1.定义 精确度(precision)/查准率:TP/(TP+FP)=TP/P    预测为真中,实际为正样本的概率 召回率(recall)/查全率:TP/(TP+FN)  正样本中,被识别为真的概率 ...

  8. 精度 召回率 F score

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

  9. Recall(召回率) Precision(准确率) F-Measure E值 sensitivity(灵敏性) specificity(特异性)漏诊率 误诊率 ROC AUC

    Berkeley Computer Vision page Performance Evaluation 机器学习之分类性能度量指标 : ROC曲线.AUC值.正确率.召回率 True Positiv ...

最新文章

  1. Python 函数学习
  2. 2019年春季学期第三周作业
  3. java怎么统计字符串中各个字母的个数,人生转折!
  4. HDU 3699 DFS
  5. node开启子线程_多进程 amp; Node.js web 实现
  6. java list按照某个字段排序_java相关:List对象去重和按照某个字段排序的实现方法...
  7. JEPaas代码_((列表)输入字段值而计算
  8. Quartz 定时器任务调度
  9. python 线程超时设置_python 条件变量Condition(36)
  10. maven spring 使用memcached方法
  11. 常用Linux 服务器命令--各种性能指标命令
  12. 在hisi上QT交叉编译过程(带webengine)
  13. 优先队列重载(理解)
  14. 第6-5课:五子棋游戏的相关算法
  15. 计算机2级vb查询,计算机2级VB
  16. autocad+服务器未响应,CAD图纸打开未响应解决的方法
  17. 智能路由器自建服务器,路由器怎么设置服务器_路由器搭建服务器
  18. Pytorch optimizer.step() 和loss.backward()和scheduler.step()的关系与区别
  19. 华为面试应该怎么准备?
  20. 大学物理:CH3-振动

热门文章

  1. grub2下常见系统初始化错误的分析和解决
  2. AWE2021:加速拥抱数字化 开启智慧生活新纪元
  3. 零和博弈(Zero-Sum Games)与非零和博弈(Non-Zero-Sum Games)
  4. 解决 Invalid component name: “404“. Component names should conform to valid custom element name ...
  5. CommandLineRunner和ApplicationRunner区别
  6. 网络安全 顶级进行鱼叉式钓鱼攻击?手把手教学
  7. linux上安装Weblogic11g 详解
  8. matlab仿真培训班,Matlab/Simulink进行微网系统仿真建模培训
  9. 如何 使用 apache 访问 本地目录及本地文件
  10. python保存图片格式_python 存储网页图片格式