规范神经网络的一种方法是“早期停止”,这意味着我不会让权重达到其最佳值(基于根据训练数据计算的成本函数),而是在它们之前停止梯度下降过程。我理解为什么在使用批量梯度下降时它是正确的,因为我只是在 10 次迭代而不是 50 次之后停止所有样本的优化过程。我不明白的是,使用在线梯度下降时它怎么可能是真的?这意味着我在使用所有样本之前停止该过程。这似乎是一个悖论,当想要正则化以解决高方差问题时,我在使用所有样本之前停止学习过程,而为了解决高方差问题,我实际上想要使用尽可能多的样本。
神经网络中的正则化
机器算法验证
神经网络
正则化
2022-03-19 01:12:56
1个回答
只是一个猜测,但是使用像 SGD 之类的东西(可以被认为是一种在线学习,从某种意义上说,它一次只能看到一小部分数据)的训练看起来像目标函数。
也就是说,目标的“轨迹”正在下降,但它是随机反弹的。提前停止意味着您在该轨迹中较早地选择一个点,参数“次优”,因为通过进一步训练和微调参数估计,可以在训练数据上获得较低的熵。
稍后在您的问题中,您写道您希望更多样本可以避免过度拟合。更多的训练样本可以提供更精确的参数估计,但不能单独防止过拟合。尤其是在神经网络的情况下,NN 可以学习一个非常复杂的函数(在存在几乎任何数量的数据的情况下),但该函数可能无法很好地泛化到看不见的数据。
考虑从欠拟合模型到最优模型再到过拟合模型的连续统。更多的训练数据可以让你从欠拟合到最优,但是从最优到过拟合可能会因为没有正则化而发生;在早停范式中,这意味着使用所有可用数据。
请注意,有一些替代策略可以解决神经网络中的过度拟合问题。一种方法是在参数上放置一个先验,使值远离 0。这通常表示为在目标函数是权重向量,即 0 均值的高斯先验,方差通过控制。交叉验证用于选择最优的。
其它你可能感兴趣的问题