【问题标题】:High ROC-AUC and recall, but low precision and accuracy in balanced datasetROC-AUC 和召回率高,但平衡数据集的精度和准确度低
【发布时间】:2023-02-10 18:08:53
【问题描述】:

我使用的是 titanic 数据集,所以它非常平衡(大约 60:40)并且 GaussianNB 模型(标准参数)的精度为 0.659。当我绘制 F1、精确度和召回率时,我发现了得分如此低的原因。

F1, precision and recall of GaussianNB

Confusion matrix

然后我计算了ROC-AUC,它是0.84。我花了几个小时试图了解这里发生的事情,但每个答案和博客文章主要是关于 ROC-AUC 在用于不平衡数据时的误导性。是什么让 ROC-AUC 如此之高,即使我们清楚地看到模型运行得不是很好?是因为召回率高吗?

LogisticRegression 的 ROC-AUC 分数:0.861
线性判别的ROC-AUC分数:0.859
KNeighbors 的 ROC-AUC 得分:0.855
SVC的ROC-AUC得分:0.836
GaussianProcess 的 ROC-AUC 分数:0.860
DecisionTree 的 ROC-AUC 得分:0.785
GaussianNB的ROC-AUC得分:0.840
ROC Curve for other models

【问题讨论】:

    标签: machine-learning data-science roc auc precision-recall


    【解决方案1】:

    ROC 曲线是通过绘制不同阈值下的真阳性率 (TPR) 与假阳性率 (FPR) 来创建的。这条曲线下的面积是 AUC ROC 指标。 ROC AUC 的范围是 [0.5, 1]。准确性指标需要我们选择一个阈值来计算 1 或 0 的预测。准确性指标的范围是 [0, 1]。鉴于计算这些指标的方法不同,上述情况是可能的。

    【讨论】:

      猜你喜欢
      • 2016-06-11
      • 2018-04-16
      • 2017-11-13
      • 2018-11-25
      • 2018-12-24
      • 2019-12-27
      • 2021-06-16
      • 2020-02-25
      • 2022-01-06
      相关资源
      最近更新 更多