你如何处理你的测试数据?

机器算法验证 造型 模型选择 实验设计 预测模型 验证
2022-04-05 18:02:20

假设您在数据点不多的环境中执行参数选择研究。您将可用数据划分为训练集和测试集,并计划在单独的验证集上验证未来模型。

您对训练集进行所有启发式操作,当您对所选参数感到满意时,您将获得一个模型并在测试集上对其进行测试。有时您会根据测试集结果微调您的模型,但您将这些调整保持在最低限度。

现在您已准备好发布模型并使用外部验证数据集对其进行验证。您会使用训练集和测试集的组合来重新训练模型(重新校准参数),还是坚持现有的?

1个回答

我会使用训练和测试分区重新训练模型;这样做似乎没有什么损失,最终模型的性能可能会比悲观的(因为它基于较小的训练集)性能估计略好。

如果数据集很小,更好的解决方案是结合训练集和测试集并使用引导复制。您可以使用袋外性能估计器进行任何需要进行的微调,并且您可以使用相同的引导委员会(即装袋)进行验证集预测。

对于小型数据集,bagging 非常有用,因为如果您使用单个测试/训练拆分,测试集的性能会因测试集的小规模而变化很大,因此它是真实性能的不可靠估计。袋外估计器通常具有较低的方差,并且是更好的性能指南。同样,如果在单个训练集上进行训练,则预测器本身在 bagging 中的可变性更小。