机器学习之正则化

正则化的作用

可参考博客强烈推荐:zouxy09的专栏阿拉丁吃米粉迷雾forest

正规方程最终得到的$w^ $的参数估计为:
$$\hat{w^
} =(\mathbf{X}^T\mathbf{X})^{-1}\mathbf{X}^Ty$$
当 $\mathbf{X}^T\mathbf{X}$ 非满秩矩阵时,则$(\mathbf{X}^T\mathbf{X})^{-1}$趋近于无穷大(实际上不存在),当$\mathbf{X}^T\mathbf{X}$病态时,虽然矩阵有解,输入仅有微小变化,解便会有很大震荡。

这显然不是一个很好的解,相当于仅在输入数据中加入一点小小噪声,便得到全然不同的解。如下图过拟合,输入仅有小的变化,结果剧烈变化。

过拟合

加入正则化后,公式变为:
$$\hat{w^ * } =(\mathbf{X}^T\mathbf{X}+\lambda \mathbf{I})^{-1}\mathbf{X}^Ty$$

L1 与 L2 正则的区别

  1. L1正则假设参数的先验分布是Laplace分布,可以保证模型的稀疏性,也就是某些参数等于0;
  2. L2正则假设参数的先验分布是Gaussian分布,可以保证模型的稳定性,也就是参数的值不会太大或太小
  3. 在实际使用中,如果特征是高维稀疏的,则使用L1正则;如果特征是低维稠密的,则使用L2正则。

L1和L2都是规则化的方式,我们将权值参数以L1或者L2的方式放到代价函数里面去。然后模型就会尝试去最小化这些权值参数。而这个最小化就像一个下坡的过程,L1和L2的差别就在于这个“坡”不同,如下图:L1就是按绝对值函数的“坡”下降的,而L2是按二次函数的“坡”下降。所以实际上在0附近,L1的下降速度比L2的下降速度要快。所以会非常快得降到0。因此L1偏向稀疏特征(可筛选出重要特征),L2主要用于防止过拟合(要求参数越小时,说明模型越简单)。

本文标题:机器学习之正则化

文章作者:微石

发布时间:2018年05月29日 - 12:05

最后更新:2018年07月19日 - 17:07

原始链接:akihoo.github.io/posts/16d5eb1f.html

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。