机器学习笔记(4)-正则化
机器学习笔记(4)-正则化
机器学习中的正则化通常是用来解决过拟合问题的。这一节我们来推导并解释一下正则化为什么可以解决这个问题。首先我们现来看一下上一节关于最小二乘法的解析式:
我们知道一个矩阵乘以它的转置是一个半正定矩阵,当\(|X^TX|=0\)时,矩阵不可逆,就没有办法得到它的解析解。而出现这个情况是因为矩阵的秩小于矩阵的阶数,代入到现实例子中,就是我的数据样本少于我的数据的维度,当这种情况出现时,也就容易出现过拟合现象。
那根据这个原理,我们的解决方法也很明显:
- 增加数据样本
- 降低数据的特征:特征提取/特征选择
- 正则化
一般在业务中,数据非常珍贵,不是想增加就能增加的。而降低数据的特征,也就是降低数据的维度,去掉不重要的特征,或者把特征映射到另一空间,提取更有效的特征(如PCA等),这一节我们主要介绍下正则化中的L2正则化。
正则化模型
正则化模型中,我们一般是在损失函数中增加一个和模型参数相关的惩罚项,如下:
其中\(L(W)\)代表损失函数,\(P(W)\)代表关于参数的惩罚项,\(\lambda>0\)是超参数,控制惩罚项的惩罚力度。
从直观上也可以这么解释,比如在梯度下降的学习过程中,每个参数都根据不同的不同的梯度学习,学习的速率各不相同,非常有可能出现某些参数在训练过程中导致权重很大,这就会使得虽然模型中有很多参数,但是真正影响模型预测结果的参数只有权重高的那几个。根据模型定义我们需要对右边的损失函数取最小值,在学习过程中也会限制参数取到较大的值,如果\(\lambda\)越大,很明显惩罚力度也就越高。
而当我们采用解析解去求时,引入正则项可以使\(X^TX\)由半正定矩阵变为正定矩阵,从而可逆。
一般讲到正则化时,会有L1和L2范式两种,L1又被称为Lasso,L2被称为Ridge,中文叫做岭回归。
- L1(Lasso):\(P(W)=\left \| W \right \|_{1}\)
- L2(Ridge 岭回归):\(P(W)=\left \| W \right \|_{2}^2=W^TW\)
从频率派观察
我们结合上一节最小二乘法估计的结果,得到损失函数如下:
接下来我们求偏导得到:
可以看到当我们加入L2正则化后,原来的解析式中变为\(X^TX+\lambda I\),而一个半正定矩阵加上一个单位矩阵乘以大于0的系数,成为了一个正定矩阵,必然可逆。
从贝叶斯派观察
为了计算方便,我们假设有个噪声是服从正太分布的,即\(\epsilon \sim N(0,\sigma^2)\),这样在每一个样本上我们加上这个噪声,则可以得到:
- 假设存在噪声服从正态分布:\(\epsilon \sim N(0,\sigma^2)\)
- 每个数据点添加噪声:\(Y=W^TX+\epsilon\)
- 于是得到Y的分布:\(y_{i}\sim N(W^TX,\sigma^2)\)
- 进一步得到:\(P(Y|X;W)=\frac{1}{\sqrt{2\pi }\sigma}exp(-\frac{(y_{i}-W^TX)^2}{2\sigma^2})\)
- 假设先验概率\(P(W)\)服从正太分布:\(w_{i}\sim N(0,\sigma_{0}^2)\)
- 进一步得到:\(P(W)=\frac{1}{\sqrt{2\pi }\sigma_{0}}exp(-\frac{\left \| W \right \|^2}{2\sigma_{0}^2})\)
- 后验概率公式:\(P(W|Y)=\frac{P(Y|W)P(W)}{P(Y)}\)
于是我们根据最大后验概率估计得到:
到这里我们发现:左半部分就是最小二乘法的损失函数,右半部分当\(\lambda=\frac{\sigma^2}{\sigma_{0}^2}\)时,和之前的推到结果完全一致。
也就是说正则化的最小二乘法(LSE)等价于噪声\(\epsilon \sim N(0,\sigma^2)\),并且先验概率分布\(w_{i}\sim N(0,\sigma_{0}^2)\)的MAP。