正则化
引入¶
线性回归中,我们只考虑了自变量对因变量的作用,但是没考虑自变量之间的关系。
\(Y_i\) 的值可分解为两部分,一部分是由自变量的线性函数决定的,另一部分是不能由自变量决定的残差 \(e_i\)。
\(\beta_j\) 是 \(X_j\) (\(j=1,2,\ldots,p\)) 对 \(Y\) 的偏回归系数(partial regression coefficient),又简称为回归系数。它表示在其他自变量固定不变的情况下,\(X_j\) 每改变一个测量单位时所引起的应变量 \(Y\) 的平均改变量。
导致 \(\text{rank}(X) < p\) 的原因一般有两种:
- 样本数小于特征数量。
- 即使样本数较多,但变量(特征)之间存在线性关系。
正则化¶
一、什么是正则化¶
对损失函数(目标函数)加入一个惩罚项,使得模型由多解变为更倾向其中一个解。
二、什么是正则化项¶
在代价函数后面加上一个对参数的约束项,这个约束项被叫做正则化项。
-
加上所有参数的 绝对值之和,即L₁范数,此时叫做 Lasso回归;
由于正则项的不可微分性,更容易导致某些参数变为零,从而实现 特征选择→(把重要的挑出来) - 加上所有参数的 平方和,即L₂范数,此时叫做 岭回归。
则倾向于 保留所有 特征,但会缩小那些对模型贡献较小的特征的系数。
满秩,保证了可逆。但 \(\beta\) 不再是无偏估计。
流程¶
1.数据预处理
2.选择超参数 α(正则化强度)
超参数 α(也称为 λ)决定了正则化项在损失函数中的权重。
一般使用 K 折交叉验证来确定最优的 α 值:
通过将数据集分成 K 个子集,每次用 K-1 个子集进行训练,剩下的一个子集进行验证,循环 K 次后计算平均验证误差,选择使验证误差最小的 α 值作为最优参数。
岭回归(Ridge)¶
训练 Ridge 模型
计算回归系数
进行预测
计算误差(MSE, RMSE)
系数不会变为 0:岭回归通过缩小系数的值来降低模型的复杂度,但不会将系数缩到 0。
Lasso 回归(Lasso)¶
训练 Lasso 模型
计算回归系数
进行预测
计算误差(MSE, RMSE)
部分系数变为 0:Lasso 回归可以将一些系数缩到 0,从而实现特征选择。