> 文章列表 > 神经网络过拟合的处理

神经网络过拟合的处理

神经网络过拟合的处理

神经网络过拟合的处理

文章目录

  • 神经网络过拟合的处理
    • 权值衰减
    • Dropout(暂退法)

权值衰减

对于某一个线性函数f(x)=WTXf(x)=W^TXf(x)=WTX的损失函数L(W,b)=1n∑i=1n(WTX(i)+b−y(i))2L(W,b)=\\frac{1}{n}\\sum_{i=1}^{n}(W^TX^{(i)}+b-y^{(i)})^2L(W,b)=n1i=1n(WTX(i)+by(i))2

其中x(i)x^{(i)}x(i)是样本iii的特征, y(i)y^{(i)}y(i)是样本iii的标签, (W,b)(W,b)(W,b)是权重和偏置参数。

为了使神经网络的权值最小我们在损失函数的添加一个惩罚项λ2∣∣W∣∣2\\frac{\\lambda}{2}||W||^22λ∣∣W2

所以新的损失函数为L(W,b)=1n∑i=1n(WTX(i)+b−y(i))2+λ2∣∣W∣∣2L(W,b)=\\frac{1}{n}\\sum_{i=1}^{n}(W^TX^{(i)}+b-y^{(i)})^2+\\frac{\\lambda}{2}||W||^2L(W,b)=n1i=1n(WTX(i)+by(i))2+2λ∣∣W2

对于λ=0λ=0λ=0,我们恢复了原来的损失函数。 对于λ>0λ>0λ>0,我们限制‖w‖‖w‖w的大小。 这里我们仍然除以2:当我们取一个二次函数的导数时, 2和1/2会抵消,以确保更新表达式看起来既漂亮又简单。

对于采用梯度下降的算法来更新神经网络的权值时:w←W−ησLossσWw\\leftarrow W-\\eta\\frac{\\sigma Loss}{\\sigma W}wWησWσLoss(其中η\\etaη为学习率)

Dropout(暂退法)

在训练过程中,在计算后续层之前向网络的每一层注入噪声。 因为当训练一个有多层的深层网络时,注入噪声只会在输入-输出映射上增强平滑性。这个想法被称为暂退法(dropout)。 暂退法在前向传播过程中,计算每一内部层的同时注入噪声,这已经成为训练神经网络的常用技术。 这种方法之所以被称为暂退法,因为我们从表面上看是在训练过程中丢弃(drop out)一些神经元。 在整个训练过程的每一次迭代中,标准暂退法包括在计算下一层之前将当前层中的一些节点置零。

在标准暂退法正则化中,通过按保留(未丢弃)的节点的分数进行规范化来消除每一层的偏差。 换言之,每个中间活性值hhh暂退概率ppp由随机变量h′h'h替换,h’={0,概率为ph1−p,其他情况h’= \\left\\{\\begin{matrix} 0,概率为p \\\\ \\frac{h}{1-p},其他情况 \\end{matrix}\\right.h={0,概率为p1ph,其他情况