【问题标题】:What is the best way to predict external test set? [closed]预测外部测试集的最佳方法是什么? [关闭]
【发布时间】:2019-12-21 10:56:00
【问题描述】:

我的问题是理论上的,而不是技术性的,因此我不会在此处发布我的代码,因为代码可在 sklearn 网站本身获得。

我构建了一个分类器,并使用 sklearn 进行了 5 折交叉验证。在我的代码中,我正在计算每个折叠中的各种准确度参数,如灵敏度、特异性、f1 分数等。经过 5 次交叉验证,对折叠完成后的所有准确度参数进行平均。

最后,我的脚本创建了一条 ROC 曲线以及其他精度参数的 AUC 分数和直方图,并生成了一个 HTML 报告文件。

交叉验证意味着内部测试,但是当我使用外部测试数据集时就会开始混淆。

我的问题是我应该如何预测外部数据集,这在下面的方法中是正确的。

  1. 交叉验证后,保存每个折叠的平均参数的模型,并使用该模型预测外部测试集并计算评估报告。如果是这种情况,我该怎么做?你能告诉我在 n 折交叉验证后帮助我保存模型的示例代码吗?

  2. 使用整个数据集构建模型,保存模型以预测外部测试集并计算评估报告。如果这是正确的方法,谢谢我知道代码。

  3. 还有没有遗漏的方法,请分享。

谢谢。

【问题讨论】:

    标签: machine-learning keras scikit-learn


    【解决方案1】:

    正确的做法是

    使用整个数据集构建模型,保存模型进行预测 外部测试集并计算评估报告

    原因是我们仅使用交叉验证来衡量超参数的性能。我们通过将每个折叠保留一次作为测试折叠来做到这一点,这意味着每个数据点都有公平的机会成为一次测试数据点。

    【讨论】:

    • Dhanyawaad.. 谢谢:)
    猜你喜欢
    • 2018-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    相关资源
    最近更新 更多