【问题标题】:ROC curves cross validationROC 曲线交叉验证
【发布时间】:2012-09-11 16:19:30
【问题描述】:

如何为交叉验证生成 ROC 曲线?

对于单个测试,我认为我应该对 SVM 的分类分数进行阈值化以生成 ROC 曲线。

但我不清楚如何为交叉验证生成它?

【问题讨论】:

    标签: image-processing machine-learning computer-vision pattern-recognition


    【解决方案1】:

    经过一轮完整的交叉验证后,所有观测值都已分类一次(尽管通过不同的模型),并已给出属于感兴趣类别的估计概率或类似统计数据。这些概率可用于生成 ROC 曲线,其方式与在外部测试集上获得的概率完全相同。当您将分类阈值从 0 更改为 1 时,只需计算分类错误率即可。

    但是,通常您希望执行多轮交叉验证,因为性能会因折叠的划分方式而异。如何计算所有回合的平均 ROC 曲线对我来说并不明显。我建议将它们全部绘制并计算平均 AUC。

    【讨论】:

      【解决方案2】:

      作为 Backlin 的后续行动:

      k-fold 或 leave-n-out 交叉验证的不同运行结果的变化表明模型的不稳定性。这是有价值的信息。

      • 当然,您可以合并结果并生成一个 ROC。
      • 但您也可以绘制曲线集
        参见例如R包ROCR
      • 或计算例如不同阈值的中位数和 IQR,并构建一个描述这些变化的带。
        这是一个示例:阴影区域是在 8 倍交叉验证的 125 次迭代中观察到的四分位间距。细黑色区域包含一个特定阈值的一半观察到的特异性-敏感性对,中位数用 x 标记(忽略 + 标记)。

      【讨论】:

        猜你喜欢
        • 2018-01-15
        • 2021-05-08
        • 2020-01-02
        • 1970-01-01
        • 2021-01-30
        • 2019-08-15
        • 2023-03-05
        • 2018-01-20
        • 2019-01-25
        相关资源
        最近更新 更多