计算二分类的特异性和灵敏度

Posted ann21

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算二分类的特异性和灵敏度相关的知识,希望对你有一定的参考价值。

考虑一个二分类的情况,类别为1和0,我们将1和0分别作为正类(positive)和负类(negative),则实际分类的结果有4种,表格如下(混淆矩阵):

真实情况 预测结果
正例 反例
正例 TP(真正例) FN(假反例)
反例 FP(假正例) TN(真反例)

敏感性Sensitivity (Sen):
Sen=TP/(TP+FN)*100%

特异性 Specificity (Spe)
spe=TN/(TN+FP)*100%

https://www.baidu.com/link?url=mIaeBADUX1ozeV2ulbUyW7QeKAolzFdQFhApe1bH-GinPiFcb0b4sp-CX7iTaIHX2TjRyGtYGsQOKTu4B3keXq&wd=&eqid=db763325003c493b000000035d1763de

在癌症示例中,敏感性和特异性指:

敏感性:在患有癌症的所有人中,诊断正确的人有多少?
特异性:在未患癌症的所有人中,诊断正确的人有多少?

代码实现:

1.首先计算混淆矩阵

输入:标签数据和预测结果
输出:混淆矩阵

from sklearn.metrics import confusion_matrix

confusion_matrix(y_true, y_pred, labels=list(set(y_true)))

2.然后根据上面的公式分别计算灵敏度和特异性

以上是关于计算二分类的特异性和灵敏度的主要内容,如果未能解决你的问题,请参考以下文章

sklearn.metrics.roc_curve用法

机器学习二分类模型评价指标:准确率召回率特异度等

模型评估-2

使用混淆矩阵和插入符号统计的灵敏度和特异性的零 R 模型计算

二分类的评价指标总结

auc原理与实现