0

假设我有 fold1、fold2、fold3。

我用modelA训练了fold1、fold2、fold3。

A)模型A(折叠1)->模型A(折叠2)->模型A(折叠3)

B) modelA(fold1) -> 保存的权重 modelA(fold1) -> modelA(fold2)-> 保存的权重 modelA(fold2) -> modelA(fold3)-> 保存的权重 modelA(fold3) -> 集成 3 权重

哪种方法是进行 k 折交叉验证的正确方法,为什么?

4

1 回答 1

0

这取决于你的最终目标是什么。K-Fold CV 用于查找模型超参数。

在此阶段之后,您可以更改验证数据集并使用它训练您的模型。

如果您想利用尽可能多的数据(执行预测),那么在不同的折叠上训练N模型并整合它们的预测可能是一个好主意。N这个类似于 boostrap,总而言之,你的集成看到了所有数据,但它并没有过度拟合。不过,这种方法的N计算量要大几倍,所以它仍然取决于您的目标。

最后,您应该通过将不同的模型拟合到您的折叠而不是单个模型来获得更好的结果,但这需要为每个算法提供单独的超参数空间。

于 2019-06-30T14:28:51.877 回答