0
点赞
收藏
分享

微信扫一扫

2022年平均工资揭晓!2022年IT行业平均工资超高!最赚钱的行业是......IT! 看看最赚钱的职位是什么?

分类目录:《深入理解深度学习》总目录


正则化在深度学习的出现前就已经被使用了数十年。线性模型,如线性回归和逻辑回归可以使用简单、直接、有效的正则化策略。许多正则化方法通过对目标函数 J J J添加一个参数范数惩罚 Ω ( θ ) \Omega(\theta) Ω(θ)限制模型的学习能力。我们将正则化后的目标函数记为:
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,+]是权衡范数惩罚项 Ω \Omega Ω和标准目标函数 J ( θ ; X , y ) J(\theta;X, y) J(θ;X,y)相对贡献的超参数。将 α \alpha α设为 0 0 0表示没有正则化。 α \alpha α越大,对应正则化惩罚越大。当我们的训练算法最小化正则化后的目标函数 J ~ \tilde{J} J~时,它会降低原始目标 J J J关于训练数据的误差并同时减小在某些衡量标准下参数 θ \theta θ(或参数子集)的规模。选择不同的参数范数 Ω \Omega Ω会偏好不同的解。在探究不同范数的正则化表现之前,我们需要说明一下,在神经网络中,参数包括每一层仿射变换的权重和偏置,我们通常只对权重做惩罚而不对偏置做正则惩罚。精确拟合偏置所需的数据通常比拟合权重少得多。每个权重会指定两个变量如何相互作用。我们需要在各种条件下观察这两个变量才能良好地拟合权重。而每个偏置仅控制一个单变量。这意味着,我们不对其进行正则化也不会导致太大的方差。另外,正则化偏置参数可能会导致明显的欠拟合。因此,我们使用向量 w w w表示所有应受范数惩罚影响的权重,而向量 θ \theta θ表示所有参数 (包括 w w w和无需正则化的参数)。在神经网络的情况下,有时希望对网络的每一层使用单独的惩罚,并分配不同的 α \alpha α系数。寻找合适的多个超参数的代价很大,因此为了减少搜索空间,我们会在所有层使用相同的权重衰减。

L 1 L^1 L1正则化

对模型参数 w w w L 1 L^1 L1正则化被定义为:
Ω ( θ ) = ∣ ∣ w ∣ ∣ 1 = ∑ i ∣ w i ∣ \Omega(\theta) = ||w||_1 = \sum_i|w_i| Ω(θ)=∣∣w1=iwi

因此, L 1 L^1 L1正则化的目标函数 J ~ ( w ; X , y ) \tilde{J}(w;X, y) J~(w;X,y)为:
J ~ ( w ; X , y ) = J ( w ; X , y ) + α 2 w T w \tilde{J}(w;X, y) = J(w;X, y) + \frac{\alpha}{2}w^Tw J~(w;X,y)=J(w;X,y)+2αwTw

对应的梯度:
∇ w J ~ ( w ; X , y ) = ∇ w J ( w ; X , y ) + α sign ( w ) \nabla_w\tilde{J}(w;X, y) = \nabla_wJ(w;X, y) + \alpha\text{sign}(w) wJ~(w;X,y)=wJ(w;X,y)+αsign(w)

其中 sign ( w ) \text{sign}(w) sign(w)只是简单地取 w w w各个元素的正负号。具体来说,我们可以看到正则化对梯度的影响不再是线性地缩放每个 w i w_i wi,而是添加了一项与 sign ( w ) \text{sign}(w) sign(w)同号的常数。使用这种形式的梯度之后,我们不一定能得到 J ( w ; X , y ) J(w;X, y) J(w;X,y)二次近似的直接解析解。简单线性模型具有二次代价函数,我们可以通过泰勒级数表示。或者我们可以设想,这是逼近更复杂模型的代价函数的截断泰勒级数。在这个设定下,梯度为:
∇ w J ~ ( w ; X , y ) = H ( w − w ∗ ) \nabla_w\tilde{J}(w;X, y) = H(w - w^*) wJ~(w;X,y)=H(ww)

其中, H H H J J J w ∗ w^∗ w处关于 w w w的Hessian矩阵。由于 L 1 L^1 L1惩罚项在完全一般化的Hessian的情况下,无法得到直接清晰的代数表达式,因此我们将进一步简化假设Hessian是对角的,即 H = diag ( [ H 1 , 1 , ⋯   , H n , n ] ) H = \text{diag}([H_{1,1}, \cdots, H_{n,n}]) H=diag([H1,1,,Hn,n]),其中每个 H i , i > 0 H_{i,i} > 0 Hi,i>0。如果线性回归问题中的数据已被预处理(如可以使用 PCA),去除了输入特征之间的相关性,那么这一假设成立。

我们可以将 L 1 L^1 L1正则化目标函数的二次近似分解成关于参数的求和:
J ^ ( w ; X , y ) = J ( w ∗ ; X , y ) + ∑ i [ 1 2 H i , i ( w − w ∗ ) 2 + α ∣ w i ∣ ] \hat{J}(w;X, y) = J(w^*;X, y) + \sum_i[\frac{1}{2}H_{i,i}(w - w^*)^2+\alpha|w_i|] J^(w;X,y)=J(w;X,y)+i[21Hi,i(ww)2+αwi]

如下列形式的解析解(对每一维 i i i)可以最小化这个近似代价函数:
w i = sign ( w i ∗ ) max ⁡ { ∣ w i ∗ − α H i , i , 0 ∣ } w_i = \text{sign}(w_i^*)\max\{|w^*_i - \frac{\alpha}{H_{i, i}}, 0|\} wi=sign(wi)max{wiHi,iα,0∣}

对每个 i i i,考虑 w i ∗ > 0 w^∗_i > 0 wi>0的情形,会有两种可能结果:

  • w i ∗ ≤ α H i , i w^∗_i \leq\frac{\alpha}{H_{i, i}} wiHi,iα:正则化后目标中的 w i w_i wi最优值是 w i = 0 w_i=0 wi=0。这是因为在方向 i i i J ( w ; X , y ) J(w; X, y) J(w;X,y) J ^ ( w ; X , y ) \hat{J}(w; X, y) J^(w;X,y)的贡献被抵消, L 1 L^1 L1正则化项将 w i w_i wi推至0。
  • w i ∗ > α H i , i w^∗_i >\frac{\alpha}{H_{i, i}} wi>Hi,iα:在这种情况下,正则化不会将 w i w_i wi的最优值推至0,而仅仅在那个方向上移动 α H i , i \frac{\alpha}{H_{i, i}} Hi,iα的距离。

w i ∗ < 0 w^∗_i < 0 wi<0的情况与之类似,但是 L 1 L^1 L1惩罚项使 w i w_i wi更接近0(增加 α H i , i \frac{\alpha}{H_{i, i}} Hi,iα) 或者为0。相比 L 2 L^2 L2正则化, L 1 L^1 L1正则化会产生更稀疏(Sparse)的解。此处稀疏性指的是最优值中的一些参数为0。和 L 2 L^2 L2正则化相比, L 1 L^1 L1正则化的稀疏性具有本质的不同。

L 1 L^1 L1正则化导出的稀疏性质已经被广泛地用于特征选择(Feature Selection)机制。特征选择从可用的特征子集选择出有意义的特征,化简机器学习问题。著名的LASSO (Least Absolute Shrinkage and Selection Operator)模型将 L 1 L^1 L1惩罚和线性模型结合,并使用最小二乘代价函数。 L 1 L^1 L1惩罚使部分子集的权重为零,表明相应的特征可以被安全地忽略。

L 2 L^2 L2正则化

L 2 L^2 L2正则化策略通过向
目标函数添加一个正则项:
Ω ( θ ) = 1 2 ∣ ∣ w ∣ ∣ 2 \Omega(\theta) = \frac{1}{2}||w||^2 Ω(θ)=21∣∣w2

,使权重更加接近原点。同时, L 2 L^2 L2也被称为岭回归(Ridge Regression)或Tikhonov正则(Tikhonov Regularization)。我们可以通过研究正则化后目标函数的梯度,洞察一些权重衰减的正则化表现。

为了简单起见,我们假定其中没有偏置参数,因此 θ \theta θ就是 ∣ ∣ w ∣ ∣ ||w|| ∣∣w∣∣。这样一个模型具有以下总的目标函数:
J ~ ( w ; X , y ) = J ( w ; X , y ) + α 2 w T w \tilde{J}(w;X, y) = J(w;X, y) + \frac{\alpha}{2}w^Tw J~(w;X,y)=J(w;X,y)+2αwTw

与之对应的梯度为:
∇ w J ~ ( w ; X , y ) = ∇ w J ( w ; X , y ) + α w \nabla_w\tilde{J}(w;X, y) = \nabla_wJ(w;X, y) + \alpha w wJ~(w;X,y)=wJ(w;X,y)+αw

使用单步梯度下降更新权重,即执行以下更新:
w = w − ϵ ( ∇ w J ( w ; X , y ) + α w ) = ( 1 − ϵ α ) w − ϵ ( ∇ w J ( w ; X , y ) w = w - \epsilon(\nabla_wJ(w;X, y) + \alpha w) = (1 - \epsilon\alpha)w - \epsilon(\nabla_wJ(w;X, y) w=wϵ(wJ(w;X,y)+αw)=(1ϵα)wϵ(wJ(w;X,y)

我们可以看到,加入权重衰减后会引起学习规则的修改,即在每步执行通常的梯度更新之前先收缩权重向量(将权重向量乘以一个常数因子)。这是单个步骤发生的变化。我们进一步简化分析,令 w ∗ w^∗ w为未正则化的目标函数取得最小训练误差时的权重向量,即 w ∗ = arg ⁡ min ⁡ w J ( w ) w^∗ = \arg\min_wJ(w) w=argminwJ(w),并在 w ∗ w^∗ w的邻域对目标函数做二次近似。如果目标函数确实是二次的(如以均方误差拟合线性回归模型的情况),则该近似是完美的。近似的 J ^ ( θ ) \hat{J}(\theta) J^(θ)如下:
J ^ ( θ ) = J ( w ∗ ) + 1 2 ( w − w ∗ ) + H ( w − w ∗ ) \hat{J}(\theta) = J(w^*) + \frac{1}{2}(w - w^*) + H(w - w^*) J^(θ)=J(w)+21(ww)+H(ww)

其中, H H H J J J w ∗ w^∗ w处计算的Hessian矩阵(关于 w w w)。因为 w ∗ w^∗ w被定义为最优,即梯度消失为0,所以该二次近似中没有一阶项。同样地,因为 w ∗ w^∗ w J J J的一个最优点,我们可以得出 H H H是半正定的结论。当 J ^ \hat{J} J^取得最小时,其梯度:
∇ w J ( w ) = H ( w − w ∗ ) \nabla_wJ(w) = H(w - w^*) wJ(w)=H(ww)

为 0。为了研究权重衰减带来的影响,我们在上式中添加权重衰减的梯度。现在我们探讨最小化正则化后的 J ^ \hat{J} J^。我们使用变量 w ~ \tilde{w} w~表示此时的最优点:
α w ~ + H ( w − w ∗ ) = 0 ( H + α I ) w ~ = H w ∗ w ~ = ( H + α I ) − 1 H w ∗ \begin{align*} \alpha\tilde{w} + H(w-w^*) = 0 \\ (H + \alpha I)\tilde{w} = Hw^* \\ \tilde{w} = (H + \alpha I)^{-1}Hw^* \end{align*} αw~+H(ww)=0(H+αI)w~=Hww~=(H+αI)1Hw
α \alpha α趋向于 0 0 0时,正则化的解 w ~ \tilde{w} w~会趋向 w ∗ w^∗ w。那么当 α \alpha α增加时,因为 H H H是实对称的,所以我们可以将其分解为一个对角矩阵 Λ \Lambda Λ和一组特征向量的标准正交基 Q Q Q,并且有 H = Q Λ Q T H = Q\Lambda Q^T H=QΛQT,可得: w ~ = Q ( Λ + α I ) − 1 Λ Q T w ∗ \tilde{w} = Q(\Lambda + \alpha I)^{-1}\Lambda Q^Tw^* w~=Q(Λ+αI)1ΛQTw。我们可以看到权重衰减的效果是沿着由 H H H的特征向量所定义的轴缩放 w ∗ w^∗ w。具体来说,我们会根据 λ i λ i + α \frac{\lambda_i}{\lambda_i+\alpha} λi+αλi因子缩放与 H H H i i i个特征向量对齐的 w ∗ w^∗ w的分量。沿着 H H H特征值较大的方向 (如 λ i ≫ a \lambda_i\gg a λia)正则化的影响较小。而 λ i ≪ a \lambda_i\ll a λia的分量将会收缩到几乎为零。
L2正则化对最佳 w 值的影响
只有在显著减小目标函数方向上的参数会保留得相对完好。在无助于目标函数减小的方向(对应 Hessian 矩阵较小的特征值)上改变参数不会显著增加梯度。这种不重要方向对应的分量会在训练过程中因正则化而衰减掉。

目前为止,我们讨论了权重衰减对优化一个抽象通用的二次代价函数的影响。我们可以研究线性回归,它的真实代价函数是二次的,因此我们可以使用相同的方法分析。再次应用分析,我们会在这种情况下得到相同的结果,但这次我们使用训练数据的术语表述。线性回归的代价函数是平方误差之和: Loss = ( X w − y ) T ( X w − y ) \text{Loss}=(Xw-y)^T(Xw-y) Loss=(Xwy)T(Xwy),我们添加 L 2 L^2 L2正则项后,目标函数变为: Loss = ( X w − y ) T ( X w − y ) + 1 2 α w T w \text{Loss}=(Xw-y)^T(Xw-y)+\frac{1}{2}\alpha w^Tw Loss=(Xwy)T(Xwy)+21αwTw,这将普通方程的解从 w = ( X T X ) − 1 X T y w=(X^TX)^{-1}X^Ty w=(XTX)1XTy变为 w = ( X T X + α I ) − 1 X T y w=(X^TX+\alpha I)^{-1}X^Ty w=(XTX+αI)1XTy。式中的矩阵 X T X X^TX XTX与协方差矩阵 1 m X T X \frac{1}{m}X^TX m1XTX成正比。 L 2 L^2 L2正则项将这个矩阵替换为 ( X T X + α I ) − 1 (X^TX+\alpha I)^{-1} (XTX+αI)1 。这个新矩阵与原来的是一样的,不同的仅仅是在对角加了 α \alpha α。这个矩阵的对角项对应每个输入特征的方差。我们可以看到, L 2 L^2 L2正则化能让学习算法感知到具有较高方差的输入 x x x,因此与输出目标的协方差较小(相对增加方差)的特征的权重将会收缩。

如果我们使用Hessian矩阵 H H H为对角正定矩阵的假设(与 L 1 L^1 L1正则化分析时一样),重新考虑这个等式,我们发现 w i ~ = H i , i H i , i + α w i ∗ \tilde{w_i}=\frac{H_{i, i}}{H_{i, i} + \alpha}w_i^* wi~=Hi,i+αHi,iwi 。如果 w i ∗ w_i^* wi不是零,那么 w i ~ \tilde{w_i} wi~也会保持非零。这表明 L 2 L^2 L2正则化不会使参数变得稀疏,而 L 1 L^1 L1正则化有可能通过足够大的 α \alpha α实现稀疏。

参考文献:
[1] Lecun Y, Bengio Y, Hinton G. Deep learning[J]. Nature, 2015

举报

相关推荐

2022年最赚钱的十个打码平台

0 条评论