神经网络 KFold 交叉验证的准确性

数据挖掘 神经网络 交叉验证 训练 准确性
2022-03-02 19:57:59

我有一个神经网络,我使用 10 倍交叉验证进行评估。在训练期间,折叠的验证准确度在 -+10% 范围内变化很大

因此,例如,折叠的验证准确度将在 80% 到 70% 之间。

我的问题是我应该认为哪个数字是这个折叠的准确性。

我应该只采用训练时达到的最大验证准确度,还是应该只运行一定数量的 epoch 并采用最后一个数字(第二种方法的结果取决于运气)?

谢谢

2个回答

在某些情况下,运行 K-Fold 交叉验证以计算性能估计的整个点。如果获得的值变化很大,这仅意味着您的估计不太精确(即具有较大的标准偏差)

在神经网络设置中,您的网络会不断发展,因此很明显,如果网络在最近几次迭代中学到了很多东西,那么对所有折叠进行平均可能会给您一个不太准确的估计。

通常,您总是会在训练结束时进行折叠,因为这是您目前的表现。

但是,需要注意的是,在较短的窗口内分析您的性能方差可以帮助您了解您的模型是否已经收敛,或者它是否仍在“探索”中。

您作为结果的值应该始终是您获得的最后一个值。但是,您可能需要设置一些提前停止程序,以避免过度拟合。