【花书阅读笔记】第七章:深度学习中的正则化 Part I
参数范数惩罚
许多正则方法是对目标函数JJJ添加了一个惩罚范数Ω(θ)\Omega(\theta)Ω(θ)
J~(θ;X,y)=J(θ;X,y)+αΩ(θ) \tilde{J}(\boldsymbol{\theta} ; \boldsymbol{X}, \boldsymbol{y})=J(\boldsymbol{\theta} ; \boldsymbol{X}, \boldsymbol{y})+\alpha \Omega(\boldsymbol{\theta}) J~(θ;X,y)=J(θ;X,y)+αΩ(θ)
其中 α∈[0,∞)\alpha \in[0, \infty)α∈[0,∞) 是权衡范数惩罚项 Ω\OmegaΩ 和标准目标函数 J(X;θ)J(X ; \theta)J(X;θ) 相对贡献的超参数。 将 \alpha 设为 0 表示没有正则化。 α\alphaα 越大,对应正则化惩罚越大。
在探究不同范数的正则化表现之前,我们需要说明一下,在神经网络中,参数包括每一层仿射变换的权重和偏置,我们通常只对权重做惩罚而不对偏置做正则惩罚。
L2L^{2}L2 参数正则化
**权重衰减(weight decay)**的 L 2 参数范数惩罚:
通过向目标函数添加一个正则项Ω(θ)=12∥w∥22\Omega(\boldsymbol{\theta})=\frac{1}{2}\|\boldsymbol{w}\|_{2}^{2}Ω(θ)=21∥w∥22,使权重更加接近原点。
这样一个模型具有以下总的目标函数:
J~(w;X,y)=α2w⊤w+J(w;X,y) \tilde{J}(\boldsymbol{w} ; \boldsymbol{X}, \boldsymbol{y})=\frac{\alpha}{2} \boldsymbol{w}^{\top} \boldsymbol{w}+J(\boldsymbol{w} ; \boldsymbol{X}, \boldsymbol{y}) J~(w;X,y)=2αw⊤w+J(w;X,y)
与之对应的梯度为
∇wJ~(w;X,y)=αw+∇wJ(w;X,y) \nabla_{w} \tilde{J}(\boldsymbol{w} ; \boldsymbol{X}, \boldsymbol{y})=\alpha \boldsymbol{w}+\nabla_{w} J(\boldsymbol{w} ; \boldsymbol{X}, \boldsymbol{y}) ∇wJ~(w;X,y)=αw+∇wJ(w;X,y)
使用单步梯度下降更新权重,即执行以下更新:
w←w−ϵ(αw+∇wJ(w;X,y)) \boldsymbol{w} \leftarrow \boldsymbol{w}-\epsilon\left(\alpha \boldsymbol{w}+\nabla_{w} J(\boldsymbol{w} ; \boldsymbol{X}, \boldsymbol{y})\right) w←w−ϵ(αw+∇wJ(w;X,y))
每步执行通常的梯度更新之前先收缩权重向量(将权重向量乘以一个常数因子)
另 w∗=argminwJ(w)\boldsymbol{w}^{*}=\arg \min _{\boldsymbol{w}} J(\boldsymbol{w})w∗=argminwJ(w)
则假设目标函数是二次的,比如以均方误差作为拟合的线性回归情况,近似的 J^(θ)\hat{J}(\theta)J^(θ)
J^(θ)=J(w∗)+12(w−w∗)⊤H(w−w∗) \hat{J}(\boldsymbol{\theta})=J\left(\boldsymbol{w}^{*}\right)+\frac{1}{2}\left(\boldsymbol{w}-\boldsymbol{w}^{*}\right)^{\top} \boldsymbol{H}\left(\boldsymbol{w}-\boldsymbol{w}^{*}\right) J^(θ)=J(w∗)+