验证由自动深度学习系统生成的模型

数据挖掘 深度学习 回归 交叉验证
2022-01-24 23:23:26

如何选择用于通过自动化系统评估训练模型的验证集,以确保每个新模型至少与以前的模型一样好,或者比以前的模型更好?

假设在这种情况下我们有一个回归问题,我们可以依赖一个单一的性能指标,比如 RMSE。

我正在开发一个程序,该程序可以自动训练、测试,如果测试通过,每 x 个新数据样本/时间部署一个新的深度学习模型。
每次训练都是在原始数据集(标记数据)和由先前模型的预测标记的新数据集上完成的。

这些是我想出的选项和一些优点/缺点。

选项 A:
创建一次验证集,始终应用此集
+ 始终拥有一致的基准
- 在数据相关性可能随时间变化的情况下,验证集可能会“过时”

选项 B:
创建初始验证集,将 X 百分比的新训练样本添加到原始集
+ 样本的一致时间分布

选项 C:
每次训练都创建一个随机验证集
+ 基准最有可能包含一组相关的样本(在数据中)
- 每次训练的测试结果可能会有所不同

选项 D:
交叉验证
+ 基准最有可能包含一组相关的样本(在数据中)
+ 每个训练会话之间可能的最小差异
- 计算成本高,对于深度学习模型更是如此

1个回答

我建议选项 E:Efron-Gong “乐观”引导。它在本质上类似于交叉验证,但需要的重复次数比 CV 少几个数量级,并且它利用了整个数据集。该过程在本参考资料的第 6 节中进行了描述。