深度学习_正则化方法原理

1. 正则化方法的原理

  • 一般进行有数据集的训练的时候,往往对于一个训练集合,如果一直采用同一个函数会产生对训练集依赖的效果,往往会增加其验证集的误差,这叫做数据的过拟合,我们需要打破这种过拟合状态,增强函数的泛化能力,其实就是使得函数不断向最优解靠拢,而不对该数据集产生依赖,产生稀疏的数据点,使得整个模型具有更好的可解释性

  • 那么如何产生这种效果呢:需要正则化相关的知识,正则化其实就是对原函数添加一个惩罚函数,即损失函数,每次为函数赋值数据集中数据点的时候,通过对原函数的相关参数加一定的惩罚函数(惩罚参数),来使得函数逐渐逼近于我们想要的最优解,并且在不同的情况可以相应改变这个惩罚参数,使得模型训练出来的数据会更加稀疏,更加合理,不会使得模型逼近于某一块区域

  • 这里面可以采用一个公式来体现这个正则化的概念:
    通过向目标函数里面添加一个惩罚参数 Ω ( θ ) \Omega(\theta) Ω(θ),来降低模型的分布集中化,使得模型的数据点尽可能的稀疏,将正则化之后的损失函数记为 J ~ \tilde{J} J~:

J ~ ( θ ; X , y ) = J ( θ ; X , y ) + α Ω ( θ ) \tilde{J}(\theta;X,y) = J(\theta;X,y) +\alpha\Omega(\theta) J~(θ;X,y)=J(θ;X,y)+αΩ(θ)
其中 α ∈ [ 0 , + ∞ ) \alpha\in[0,+\infty) α[0,+)是惩罚项的权重,越大的 α \alpha α对应越来越多的正则化程度。

2. 常见的正则化方法

2.1 L2参数正则化

  • L2参数正则化通过向目标函数中添加一个正则项 Ω ( θ ) = 1 2 ∣ w ∣ 2 \Omega ( \theta ) = \frac { 1 } { 2 } | w | ^ { 2 } Ω(θ)=21w2,这里的 w w w指的是一个矩阵,代表所有连接点之间的权重,该正则化主要针对权重加正则化,使得权重更加接近0点,又称权重衰减正则化方法,又称岭回归
  • 通过L2参数正则化之后的模型具有以下总的目标函数

J ( w ; X , y ) = α 2 w T w + J ( w ; X , y ) J ( w ; X , y ) = \frac { \alpha } { 2 } w ^ { T } w + J ( w ; X , y ) J(w;X,y)=2αwTw+J(w;X,y)
其中 α \alpha α代表正则化的权重,越大表示正则化越强,是调整每次正则化强度的控制参数

  • 与上面这个函数对应的梯度函数为:

∇ w J 1 ( w ; X , y ) = α w + ∇ w J ( w ; X , y ) \nabla _ { w } J_1 ( w ; X , y ) = \alpha w + \nabla _ { w } J ( { w }; X , y ) wJ1(w;X,y)=αw+wJ(w;X,y)

  • 使用单步梯度下降法更新权重,即执行以下的更新:

w ← w − ϵ ( α w + ∇ w J ( w ; X , y ) ) w \gets w - \epsilon ( \alpha w + \nabla _ { w } J ( w ; X , y ) ) wwϵ(αw+wJ(w;X,y))

  • 上面的式子等价于

w ← ( 1 − ϵ α ) w − ϵ ∇ w J ( w ; X , y ) ) w \gets (1 - \epsilon\alpha)w - \epsilon \nabla _ { w } J ( w ; X , y ) ) w(1ϵα)wϵwJ(w;X,y))

  • 从上式子可以看出,对于权重加入惩罚参数之后,即加入权重衰减之后会引起学习规则的改变,会导致在每次执行原来的梯度更新之前先收缩权重向量(即将权重向量每个参数乘一个常数因子)

由于 ϵ \epsilon ϵ α \alpha α都是正数,加了这个正则化因子之后,模型比之前没加的权重都要小

  • 下面对于这种正则化方法进行举例说明
  • 如果 J J J是一个二次优化的函数问题,模型参数都可以表示为 w ‾ = λ i λ i + α w i \overline{w} = \frac { \lambda _ { i } } { \lambda _ { i } + \alpha } w _ { i } w=λi+αλiwi
  • 即将原来的参数上面加一个控制因子,其中 λ i \lambda_{i} λi是参数Hessian矩阵的特征值。
  • 由上式子观察可以得出

λ i ≫ α \lambda_{i} \gg\alpha λiα时,惩罚因子 ω ‾ \overline{\omega} ω的作用比较小
λ i ≪ α \lambda_{i} \ll\alpha λiα时,惩罚因子会变成0
`

  • 通过L2正则化,可以使得参数 ω \omega ω零点附近,可以加快收敛,降低函数的优化次数,通过这种方法,采用范数控制参数,可以改变本来收敛很缓慢的函数,比如sigmod激活函数,其满足单调有界准则,根据单调有界定理,

∀ η > 0 ( 这 里 面 η 足 够 小 ) , 我 们 可 以 取 得 足 够 大 的 z 0 , 使 得 f ′ ( z ) < η ( z 0 < z ) \forall\eta >0(这里面\eta足够小),我们可以取得足够大的z_0,使得f^{\prime}(z)<\eta(z_0<z) η>0(η)z0使f(z)<η(z0<z)

  • 即对于这个单调有界的激活函数,我们可以在一个特别大的区域内 ( z 0 , + ∞ ) (z_0,+\infty) z0,+找到一个导数逼近于0的点,但是这样的改变方法会使得函数优化算法收敛变得十分缓慢,但是通过范数控制可以让参数大小控制在0附近,可以避免上面这种情况,在很大程度上加快收敛

2.2 L1参数正则化

  • 对于L2正则化,是对函数权重进行衰减,还可以采用其他的正则化方式,比如L1正则化方式,如下面这样,对模型参数W的L1正则化参数被定义为:

Ω ( θ ) = ∣ ∣ w ∣ ∣ 1 = ∑ i ∣ w i ∣ \Omega ( \theta ) = | | w | | _ { 1 } = \sum _ { i } | w _ { i } | Ω(θ)=w1=iwi

  • 即各个参数的绝对值之和,对于正则化参数的控制我们可以缩放惩罚参数 Ω \Omega Ω来实现对L1权重变化的控制,所以正则化后的目标函数为:

J ( ω ; X , y ) = α ∣ ω ∣ i + J ( ω ; X , y ) J(\omega;X,y)=\alpha|\omega|_i+J(\omega;X,y) J(ω;X,y)=αωi+J(ω;X,y)

  • 该函数的梯度为:

∇ ω J ~ ( ω ; X , y ) = α s i g n ( ω ) + ∇ ω J ( ω ; X , y ) \nabla_\omega\tilde{J}(\omega;X,y)=\alpha sign(\omega)+\nabla_\omega J(\omega;X,y) ωJ~(ω;X,y)=αsign(ω)+ωJ(ω;X,y)

  • 其中sign函数是代表各个 ω \omega ω的符号

  • 通过上面这个梯度,可以观察出正则化对于梯度的影响不再是线性的缩放每一个 ω i \omega_i ωi矩阵,而是给每一项添加了与 s i g n ( ω i ) sign(\omega_i) sign(ωi)同号的常数

  • 可以看出权重的更新规则变成,比原始的更新规则多出来了

λ n ∑ ω i s i g n ( w i ) \frac{\lambda}{n}\sum{\omega_i}sign(w_i) nλωisign(wi)这一项,

  • 其中 λ n \frac{\lambda}{n} nλ就是对正则化参数控制的变量。当 ω \omega ω正数的时候,更新之后的 ω \omega ω变小。当 ω \omega ω负数的时候,更新之后的 ω \omega ω变大,因此这个正则化的效果就是让 ω \omega ω向0靠拢,使得网络之中的权重尽可能的为0,即减少网络复杂度,防止过拟合
  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
深度学习是一种机器学习技术,它的核心原理是通过构建多层神经网络,从数据中学习并提取出高级别的特征表达,以实现分类、识别、回归等任务。以下是深度学习的详细解释: 1. 神经网络 神经网络是深度学习的核心组成部分。它由多个神经元(也称为节点)组成,每个神经元接收来自前一层神经元的输入,并输出给下一层神经元。每个神经元的输出经过一个非线性激活函数进行处理,以产生非线性的特征表示。整个神经网络通常由多个层组成,每个层都包含多个神经元。 2. 反向传播 反向传播是深度学习中的一种优化算法,它的目的是通过调整神经网络中的参数,使得网络的输出尽可能接近真实值。反向传播算法通过计算损失函数的梯度来更新网络中的参数,使得损失函数值最小化。这个过程是迭代进行的,通常需要多次迭代才能达到最优值。 3. 损失函数 损失函数是深度学习中用来衡量模型预测与真实值之间差异的函数。常见的损失函数包括均方误差、交叉熵等。深度学习的优化目标是最小化损失函数,使得模型的预测尽可能接近真实值。 4. 正则化 正则化是一种用于控制模型复杂度的技术。由于深度学习模型通常包含大量的参数,容易出现过拟合现象。正则化通过引入惩罚项来限制模型参数的大小,从而减少模型的复杂度。 5. 梯度消失 深度学习中的梯度消失问题是指,在反向传播算法中,当梯度逐层传播时,梯度值会逐渐变小,导致低层神经元的参数更新非常缓慢,甚至不更新。为了解决这个问题,研究者们提出了很多方法,如使用ReLU等激活函数、批标准化等技术。 总之,深度学习原理是通过构建多层神经网络,使用反向传播算法不断更新网络参数,使得模型可以从数据中学习高级别的特征表达,并实现各种机器学习任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值