2024-06-16 10:41:43 发布
网友
特异性=1-FPR 我修改了代码如下:
plt.plot(1-fpr, tpr, 'b', label = 'AUC = %0.2f' % roc_auc)
但这个数字似乎是错的。
这是我在报纸上看到的。
你对ROC曲线的理解有误。ROC曲线描绘了不同阈值下的真阳性率(敏感性)tpr = tp / (tp + fn),而假阳性率(1-特异性)1 - (tn / (tn + fp)。现在,我看到你的标题表明你想要一个“敏感性和特异性的ROC”,但实际上这样的东西并不存在。解决敏感性和特异性的方法是通过ROC曲线。在
tpr = tp / (tp + fn)
1 - (tn / (tn + fp)
为了获得ROC曲线,将曲线图改为:
plt.plot(fpr, tpr, 'b', label = 'AUC = %0.2f' % roc_auc)
从上面的解释可以看出如何计算假阳性率和真阳性率。在
然后,在解释ROC曲线时,您希望您的分类器尽可能靠近左上角,表示低假阳性率(高特异性)和高真阳性率(高灵敏度)。也就是说,假阳性率并不代表特异性,而是特异性的阴性。这就是为什么你希望它是最小的。在
最后但并非最不重要的是,当涉及到ROC曲线时,通常会使人们感到困惑的是,X轴上没有1 - specificity,而是specificity。当发生这种情况时,值的方向将反转(如图中所示),因此它从1变为0,而不是从0到1。在
1 - specificity
specificity
你对ROC曲线的理解有误。ROC曲线描绘了不同阈值下的真阳性率(敏感性)
tpr = tp / (tp + fn)
,而假阳性率(1-特异性)1 - (tn / (tn + fp)
。现在,我看到你的标题表明你想要一个“敏感性和特异性的ROC”,但实际上这样的东西并不存在。解决敏感性和特异性的方法是通过ROC曲线。在为了获得ROC曲线,将曲线图改为:
plt.plot(fpr, tpr, 'b', label = 'AUC = %0.2f' % roc_auc)
从上面的解释可以看出如何计算假阳性率和真阳性率。在
然后,在解释ROC曲线时,您希望您的分类器尽可能靠近左上角,表示低假阳性率(高特异性)和高真阳性率(高灵敏度)。也就是说,假阳性率并不代表特异性,而是特异性的阴性。这就是为什么你希望它是最小的。在
最后但并非最不重要的是,当涉及到ROC曲线时,通常会使人们感到困惑的是,X轴上没有
1 - specificity
,而是specificity
。当发生这种情况时,值的方向将反转(如图中所示),因此它从1变为0,而不是从0到1。在相关问题 更多 >
编程相关推荐