正则化

4/14/2021 正则化

# 请解释正则化的含义。

https://www.zhihu.com/question/20924039

# 正则化与数据的先验分布有什么关系?

正则化参数等价于对参数引入先验分布,使得 模型复杂度 变小(缩小解空间),对于噪声以及 outliers 的鲁棒性增强(泛化能力)。整个最优化问题从贝叶斯观点来看是一种贝叶斯最大后验估计,其中 正则化项 对应后验估计中的 先验信息,损失函数对应后验估计中的似然函数,两者的乘积即对应贝叶斯最大后验估计的形式。

1、Linear Regression

先看下最原始的Linear Regression:

由最大似然估计(MLE):

这就导出了我们原始的 least-squares 损失函数,但这是在我们对参数 w 没有加入任何先验分布的情况下。在数据维度很高的情况下,我们的模型参数很多,模型复杂度高,容易发生过拟合。

此时,我们可以对参数 w 引入先验分布,降低模型复杂度。

2、Ridge Regression

我们对参数 w 引入协方差为的零均值高斯先验。

可以看到,对参数引入 高斯先验 等价于L2正则化

3、LASSO

我们对参数 w 引入拉普拉斯分布。

拉普拉斯分布如下所示:

重复之前的推导过程我们很容易得到:

该问题通常被称为 LASSO (least absolute shrinkage and selection operator) 。LASSO 仍然是一个 convex optimization 问题,不具有解析解。它的优良性质是能产生稀疏性,导致 w 中许多项变成零。

可以看到对参数引入 拉普拉斯先验 等价于 L1正则化。

https://www.zhihu.com/question/23536142

# L1 相比于 L2 为什么容易获得稀疏解?

https://www.zhihu.com/question/37096933

  • 函数角度的解释:

我们知道,函数极值的判断定理如下:

定理1:当该点导数存在,且该导数等于零时,则该点为极值点 定理2: 当该点导数不存在,左导数和右导数的符号相异时,则该点为极值点

假设不加正则项的损失函数为

一、加L2正则项

求导,得时,有 即加了L2正则项的损失函数点处的导数是等于不加正则项的原损失函数在的导数才为0。

二、加L1正则项

该函数在点处是不可导的,其在处的左右导数为

根据定理二,令

,即当,该点为的极值点 解得,即只要满足参数大于原损失函数在处的导数的绝对值,那么就能在处取得极值。

综上,满足处取得极值的条件比简单得多,所以相比更容易获得稀疏解。

  • 用图像来呈现

假设损失函数 L 与某个参数 x 的关系如图所示:

则最优的 x 在绿点处,x 非零。 现在施加 L2 regularization,新的费用函数()如图中蓝线所示:

最优的 x 在黄点处,x 的绝对值减小了,但依然非零。

而如果施加 L1 regularization,则新的费用函数()如图中粉线所示:

最优的 x 就变成了 0。这里利用的就是绝对值函数的尖峰。

两种 regularization 能不能把最优的 x 变成 0,取决于原先的损失函数在 0 点处的导数。如果本来导数不为 0,那么施加 L2 regularization 后导数依然不为 0,最优的 x 也不会变成 0。而施加 L1 regularization 时,只要 regularization 项的系数 C 大于原先费用函数在 0 点处的导数的绝对值,x = 0 就会变成一个极小值点。

上面只分析了一个参数 x。事实上 L1 regularization 会使得许多参数的最优值变成 0,这样模型就稀疏了。

  • 从优化问题视角来看

优化问题,从上图来看就是,把的解限制在黄色区域内,同时使得经验损失尽可能地小。

但这里有一个优化问题的转化,原本我们要优化的是这个问题

,该问题其实是等价于

即对一个特定的总存在一个使得这两个问题是等价的。

图中损失函数对应的一圈圈等高线, 损失函数的最优解就在圆心处. 而L1范式对应的图形就是下面那个四边形. 当同时满足这两个条件时, 交点在轴上, 此时. 即所以联系到高维空间中, 多个值为0, 也就是得到一个稀疏解.

而L2范式画出来的是一个圆(), 损失函数最优解依旧在等高线中心处. 当同时满足损失函数和正则化的最优解落在两个图形的交点处, 此时都不为0. 所以L2范式得到的不是稀疏解.

  • 从概率分布角度看

正则化项相当于为加入了一个拉普拉斯先验分布,正则化项相当于为加入高斯先验分布。

在紫色区域中,高斯分布值大的更少,即相比,值大的更少,因此更加平滑一些。

在红色区域,高斯分布值很小的和值为概率较为接近,而拉普拉斯分布中,值很小的的概率小于值为,这说明拉普拉斯分布要求更多为0,而高斯分布要求小就行了,不一定要为0,因此更稀疏。

  • 从梯度视角来看

不一样的地方在于会减倍的会减倍的,当时,获得比更快的减小速率。当时,获得更快的减小速率,并且当越小时,更容易减小接近于0,而更不容易变化,因此会获得更多的接近于0的,即更容易获得稀疏解。

# L1正则为什么能让系数变为0?L1正则怎么处理0点不可导的情形?

https://www.zhihu.com/question/38426074

# 深度学习怎么防止过拟合?

# 目标函数中同时使用多个L1和L2正则化项的情况,应该怎么求解?

https://www.zhihu.com/question/48474480