# 参数范数惩罚

许多正则化方法通过对目标函数 $$J$$ 添加一个参数范数惩罚 $$\Omega(\theta)$$，限制模型的学习能力。我们将正则化后的目标函数记为 $$\tilde{J}$$ ：

&#x20;                                                       $$\tilde{J}(\theta;X,y)=J(\theta;X,y)+\alpha\Omega(\theta)$$&#x20;

其中 $$\alpha\in\[0,\infty)$$ 是权衡范数惩罚项 $$\Omega$$ 和标准目标函数 $$J(X;\theta)$$ 相对贡献的超参数。将 $$\alpha$$ 设为 $$0$$ 表示没有正则化。 $$\alpha$$ 越大，对应正则化惩罚越大。

## $$L^2$$ 正则化

这个正则化策略通过向目标函数添加一个正则项 $$\Omega(\theta)=\frac{1}{2}||w||^2\_2$$ ，使权重更加接近原点。在其他学术圈， $$L^2$$ 也被称为岭回归或Tikhonov正则。DNN的 $$L^2$$ 正则化通常的做法是只针对与线性系数矩阵 $$w$$ ,而不针对偏倚系数 $$b$$ 。我们很容易可以写出DNN的 $$L^2$$ 正则化的损失函数：

&#x20;                            $$\tilde{J}(w;X,y)=J(w;X,y)+\frac{\alpha}{2}||w||^2\_2=J(w;X,y)+\frac{\alpha}{2}w^Tw$$&#x20;

与之对应的梯度为

&#x20;                                               $$\nabla\_w\tilde{J}(w;X,y)=\nabla \_wJ(w;X,y)+\alpha w$$&#x20;

使用单步梯度下降更新权重，即执行以下更新

&#x20;                                                   $$w\gets w-\epsilon(\alpha w+\nabla\_wJ(w;X,y))$$&#x20;

&#x20;                                              $$= w\gets (1-\epsilon \alpha)w-\epsilon\nabla\_wJ(w;X,y)$$&#x20;

通过上式我们可以看出，加入权重衰减后会引起学习规则的修改。即在每步执行通常的梯度更新之前先收缩权重向量( $$(1-\epsilon \alpha)w$$ 将权重向量乘以一个常数因子)。 由于 $$\epsilon$$ 和 $$\alpha$$ 都是大于 $$0$$ 的数，因此相对于不加正则化的模型而言，正则化之后的模型权重在每步更新之后的值都要更小。

### 特征影响程度筛选

假设 $$J$$ 是一个二次优化问题（比如采用平方损失函数）时，模型参数可以进一步表示为 $$\overline{w}=\frac{\lambda\_i}{\lambda\_i+\alpha}w\_i$$，即相当于在原来的参数上添加了一个控制因子，其中 $$\lambda$$ 是参数Hessian矩阵的特征值。由此可见

* 当 $$\lambda\_i\gg \alpha$$ 时，惩罚因子作用比较小。
* 当 $$\lambda\_i\ll \alpha$$ 时，对应的参数会缩减至 $$0$$ 。

![](https://686859917-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LK1Q5wVABDXPa7Mueaw%2F-LTMLMR0R3ehIqAk5gaO%2F-LTMU0exi4xw8KYWwUet%2Fa9d3fd1f4134970acecd8edc99cad1c8a6865d83.jpg?alt=media\&token=f8347a4b-a51c-40d7-b20c-bd73cebcbe9b)

如上图，实线椭圆表没有正则化目标的等值线。虚线圆圈表示 $$L^2$$ 正则化项的等值线。在 $$\tilde{w}$$ 点，这两个竞争目标达到平衡。横轴$$w\_1$$表示特征1的权重，纵轴$$w\_2$$表示特征2的权重。

可以看到虚线圆圈很扁，所以当 $$w\_1$$ 变化很大时才能进到实线圆圈的内圈，而 $$w\_2$$ 变化一点就可以进到实线圆圈的内圈。（方便理解可以看纵轴往右平移很大一块才能碰到内一个实线圆圈；假设横轴在实线最外面圈正下方中点，向上平移一点就碰到内一个实线圆圈。或者是想象 $$w^\*$$ 带着实线圆圈水平或直移动）从一个实圈到另一个实圈，相当于目标函数值变化。

只有在显著减小目标函数方向上的参数会保留的相对完好。在无助于目标函数减小的方向上改变参数不会显著增加梯度，这种不重要方向对应的分量会在训练过程中因正则化而衰减掉。沿横轴变化时，目标函数变化不大，所以正则化项对该轴具有强烈的影响，正则化项将 $$w\_1$$ 拉向零。而目标函数对沿着纵轴的移动非常敏感，对应的特征值较大，表示高曲率，因此，正则化对 $$w\_2$$ 位置影响相对较小。

### 特征离散程度影响

目前为止，我们讨论了权重衰减对优化一个抽象通用的二次代价函数的影响。这些影响具体是怎么和机器学习关联的呢？我们可以研究线性回归，它的真实代价函数是二次的，因此我们可以使用相同的方法分析。再次应用分析，我们会在这种情况下得到相同的结果，但这次我们使用训练数据的术语表述。线性回归的代价函数时平方误差之和：

&#x20;                                                                  $$(Xw-y)^T(Xw-y)$$&#x20;

我们添加 $$L^2$$ 正则项后，目标函数变为

&#x20;                                                          $$(Xw-y)^T(Xw-y)+\frac{1}{2}\alpha w^Tw$$&#x20;

这将方程的解从

&#x20;                                                                    $$w = (X^TX)^{-1}X^Ty$$&#x20;

变成

&#x20;                                                                 $$w = (X^TX+\alpha I)^{-1}X^Ty$$&#x20;

不加正则项时的解中的矩阵 $$X^TX$$ 与协方差矩阵 $$\frac{1}{m}X^TX$$ 成正比。 $$L^2$$ 正则项将这个矩阵替换为上式中的 $$X^TX+\alpha I$$，这个新矩阵与原来的是一样的，不同的仅仅是在对角加了 $$\alpha$$ 。这个矩阵的对角项对应每个输入特征的方差。我们可以看到，$$L^2$$ 正则化能让学习算法“感知”到具有较高方差的输入 $$x$$ ，因此与输出目标的协方差较小（相对增加方差）的特征的权重将会收缩。即更离散的特征所占权重将会变小。

## $$L^1$$ 正则化

对模型参数 $$w$$ 的 $$L^1$$ 正则化被定义为

&#x20;                                                               $$\Omega(\theta) = ||w||\_1=\sum\limits\_i|w\_i|$$&#x20;

即各个参数的绝对值之和。正则化的目标函数 $$\tilde{J}(w;X,y)$$ 如下所示

&#x20;                                                         $$\tilde{J}(w;X,y)=J(w;X,y)+\alpha||w||\_1$$&#x20;

对应的梯度（实际上是次梯度）：

&#x20;                                                $$\nabla\_w\tilde{J}(w;X,y)=\nabla\_w J(w;X,y)+\alpha \ sign(w)$$&#x20;

其中 $$sign(w)$$ 只是简单地取 $$w$$ 各个元素的正负号。

我们可以看到正则化对梯度的影响不再是线性地缩放每个 $$w\_i$$ ，而是添加了一项与 $$sign(w\_i)$$ 同号的常数。使用这种形式的梯度之后，我们不一定能到的 $$J(X,y;w)$$ 二次近似的直接算数解（$$L^2$$正则化可以）

### 函数解稀疏性影响

![](https://686859917-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LK1Q5wVABDXPa7Mueaw%2F-LTV1Je4iBqyUdDjkFmi%2F-LTV6DE85cx1f9qH9IcJ%2F359b033b5bb5c9ea238f2f6cdd39b6003bf3b3c4.jpg?alt=media\&token=75d5d53c-28c8-41ef-a9de-87b1dd90b0a7)

相比 $$L^2$$ 正则化， $$L^1$$ 正则化会产生更稀疏的解。此处稀疏性指的是最优值中的一些参数为 $$0$$ 。如上图所示，正则项等值线与没有正则化目标的等值线在 $$L^1$$ 时更容易在轴上有交点（这两个竞争目标达到平衡），即有特征的系数为 $$0$$ （上图中是 $$w\_1=0$$ ）。

### 特征影响程度选择

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

## $$L^2$$ 与 $$L^1$$ 区别

$$L^1$$ 相对于$$L^2$$ 能够产生更加稀疏的模型，即当 $$L^1$$ 正则在参数 $$w$$ 比较小的情况下，能够直接缩减至0。因此可以起到特征选择的作用，该技术也称之为 LASSO。&#x20;

如果从概率角度进行分析，很多范数约束相当于对参数添加先验分布，其中$$L^2$$ 范数相当于参数服从高斯先验分布； $$L^1$$ 范数相当于拉普拉斯分布。
