最小二乘法和岭回归

Posted zqzhen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了最小二乘法和岭回归相关的知识,希望对你有一定的参考价值。

线性回归

下面是线性回归的公式推导,没有加上 L2 正则化因子。

假设 y^=Xwhat y = Xw,因为

L(w)=y^?y22=Xw?y22=(Xw?y)T(Xw?y)=wTXTXw?yTXw?wTXTy+yTy, egin{aligned} L(w) &= ||hat y - y||_2^2=||Xw-y||_2^2 &= (Xw-y)^T(Xw-y) &= w^TX^TXw - y^TXw - w^TX^Ty + y^Ty, end{aligned}

所以
?L(w)?w=2XTXw?XTy?XTy, frac{partial L(w)}{partial w}= 2X^TXw-X^Ty-X^Ty,
?L(w)?w=0frac{partial L(w)}{partial w}=0,得
w=(XTX)?1XTy. w=(X^TX)^{-1}X^Ty.

  • 参考:周志华《机器学习》P55 “线性回归”这一节的叙述。

岭回归

上面定义的 L(w)=y^?y22L(w) =||hat y - y||_2^2 是经验风险,在经验风险的基础上加上表示模型复杂度的正则化项(regularization)或者惩罚项(penalty term),即结构风险。所以线性回归是经验风险最小化,岭回归是结构风险最小化

  • 参考:李航《统计学习方法》(第二版)P18关于“经验风险最小化”与“结构风险最小化”一节的叙述。

岭回归其实就是在损失函数上加上了一个 L2 正则,使得每个变量的权重不会太大。当某些特征权重比较大的时候,自变化变化一点点,就会导致因变量变化很大,使得方差变大,有过拟合风险。

此时损失函数变为:

L(w)=y^?y22+λw22=Xw?y22+λwTw=(Xw?y)T(Xw?y)+λwTw=wTXTXw?yTXw?wTXTy+yTy+λwTw, egin{aligned} L(w) &= ||hat y - y||_2^2 + lambda ||w||^2_2 =||Xw-y||_2^2 + lambda w^Tw&= (Xw-y)^T(Xw-y) + lambda w^Tw&= w^TX^TXw - y^TXw - w^TX^Ty+y^Ty + lambda w^Tw, end{aligned}

所以

?L(w)?w=2XTXw?XTy?XTy+2λw, frac{partial L(w)}{partial w}= 2X^TXw-X^Ty-X^Ty + 2 lambda w,
?L(w)?w=0frac{partial L(w)}{partial w}=0,得
w=(XTX+λE)?1XTy. w=(X^TX + lambda E)^{-1}X^Ty.

这里 EE 是一个单位矩阵。

参考资料

1、岭回归原理及代码实现
https://blog.csdn.net/computerme/article/details/50486937
2、矩阵求导公式,及MathJax公式编辑
https://blog.csdn.net/lilong117194/article/details/77418269
3、MathJax基本的使用方式
https://blog.csdn.net/u010945683/article/details/46757757

以上是关于最小二乘法和岭回归的主要内容,如果未能解决你的问题,请参考以下文章

最小二乘法求线性回归方程的公式是啥?

什么是最小二乘法回归分析?

偏最小二乘法的岭回归分析

最小二乘法求线性回归方程

最小二乘法求线性回归方程

最小二乘法求线性回归方程中的系数a,b怎么求