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

考虑一个二分类的情况,类别为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.然后根据上面的公式分别计算灵敏度和特异性

上一篇:机器学习知识总结——模型评估标准之混淆矩阵


下一篇:2019 6.30