【问题标题】:Scikit-learn: Strong imbalance between false-positives and false-negativesScikit-learn:假阳性和假阴性之间的严重不平衡
【发布时间】:2017-03-20 16:35:17
【问题描述】:

在大约 5000 万个样本的平衡训练数据上使用 scikit-learn(50% 一类,50% 另一类,区间 (0,1) 中的 8 个连续特征),到目前为止我能够尝试的所有分类器(Linear/LogisticRegression, LinearSVC, RandomForestClassifier, ...) 表现出奇怪的行为:

在训练数据上进行测试时,假阳性的百分比远低于假阴性的百分比 (fnr)。当手动校正截距以提高误报率 (fpr) 时,准确率实际上会大大提高。

为什么分类算法找不到接近最优的截距(我猜或多或少会在 fpr=fnr)?

【问题讨论】:

  • 我也有类似的问题,没有足够的 fnr 或 tnr。

标签: optimization scikit-learn classification evaluation false-positive


【解决方案1】:

我想这个想法是“最佳”没有单一的定义;对于某些应用程序,您将比假阴性更能容忍假阳性(即检测您不想错过阳性的欺诈或疾病),而对于其他应用程序,假阳性更糟(预测设备故障、犯罪或其他事情)否则采取行动的成本很高)。默认情况下,predict 只是选择0.5 作为阈值,这通常不是您想要的,您需要考虑您的应用程序,然后查看 ROC 曲线和增益/提升图表来决定您要设置的位置预测阈值。

【讨论】:

    猜你喜欢
    • 2015-09-28
    • 2021-11-15
    • 2016-02-03
    • 1970-01-01
    • 1970-01-01
    • 2021-09-10
    • 2017-01-25
    • 1970-01-01
    相关资源
    最近更新 更多