正则化的作用
正规方程最终得到的$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 正则的区别
- L1正则假设参数的先验分布是Laplace分布,可以保证模型的稀疏性,也就是某些参数等于0;
- L2正则假设参数的先验分布是Gaussian分布,可以保证模型的稳定性,也就是参数的值不会太大或太小
- 在实际使用中,如果特征是高维稀疏的,则使用L1正则;如果特征是低维稠密的,则使用L2正则。
L1和L2都是规则化的方式,我们将权值参数以L1或者L2的方式放到代价函数里面去。然后模型就会尝试去最小化这些权值参数。而这个最小化就像一个下坡的过程,L1和L2的差别就在于这个“坡”不同,如下图:L1就是按绝对值函数的“坡”下降的,而L2是按二次函数的“坡”下降。所以实际上在0附近,L1的下降速度比L2的下降速度要快。所以会非常快得降到0。因此L1偏向稀疏特征(可筛选出重要特征),L2主要用于防止过拟合(要求参数越小时,说明模型越简单)。