刻意过拟合神经网络

4

从技术角度来说,如果给定一个足够复杂的网络和充足的时间,是否总是可能将任何数据集过度拟合到训练误差为0的程度?


如果数据集中存在两个相同的样本但标签不同,则不可行。 - user2717954
1个回答

7
神经网络是“通用逼近器”,这基本上意味着,只要存在从输入到输出的确定性映射f,就会存在一组参数(对于足够大的网络),使得您的误差接近最小可能误差,但有以下注意点: - 如果数据集是无限的(它是一个分布),则最小可获得的误差(称为Bayes风险)可能大于零,而不是某个值e(这基本上是“重叠”的不同类/值的度量)。 - 如果映射f是非确定性的,则再次存在非零的Bayes风险e(这是一种数学方式来说明给定点可以具有“多个”值,具有给定概率)。 - 任意接近“不等于”最小。因此,即使最小误差为零,也并不意味着您只需要“足够大”的网络才能达到零,您可能始终会遇到非常小的epsilon(但您可以将其减小到所需精度)。例如,在分类任务上训练的具有sigmoid / softmax输出的网络永远无法获得最小的对数损失(交叉熵损失),因为您始终可以将其激活“更接近1”或“更接近0”,但您不能实现这两者。
因此,从数学角度来看,答案是否定的,从实际角度来看——在有限的训练集和确定性映射的假设下——答案是肯定的。特别是当您询问分类的“准确度”时,并且您具有每个数据点的唯一标签的有限数据集,那么很容易手工构建一个具有100%准确率的神经网络。但这并不意味着最小可能的损失(如上所述)。因此,从优化的角度来看,您并没有获得“零误差”。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接