自实现-Lasso回归、岭回归

【原理】岭回归-模型原理

作者 : 老饼 发表日期 : 2022-11-23 04:17:15 更新日期 : 2025-04-18 18:19:03
本站原创文章,转载请说明来自《老饼讲解-机器学习》www.bbbdata.com



岭回归属于线性回归模型的改进,它在线性回归的MSE损失函数中加入了L2正则项

本文展示岭回归的模型公式与损失函数,以及它的求解公式的详细推导过程

通过本文,可以了解岭回归模型是什么,它与线性回归的区别,以及模型的求解公式





     01. 岭回归-模型介绍      




本节介绍岭回归模型是什么,包括它的表达式与损失函数




      岭回归-模型介绍     


岭回归模型(Ridge Regression)是线性回归的一种改进,主要是线性回归求得的系数可能会过大
因此,岭回归在线性回归模型的MSE损失函数中加入二范正则项,以惩罚过大的系数
岭回归的模型表达式

岭回归模型表达式的矩阵形式如下: 
 
y=WX\text{y}=WX
岭回归的损失函数

 
岭回归损失函数的矩阵形式如下: 
 
L(W)=(YXW)T(YXW)+αWTW\text{L}( W) = (Y-XW)^T(Y-XW)+\alpha W^TW 
其中 α\alpha是正则项的惩罚系数,代表参数W的惩罚力度
 值得注意的是,原始的岭回归模型是没有阈值的,这是因为阈值b并不需要惩罚






      岭回归-如何拓展阈值     


岭回归可采用数据中心化的方法,来拓展为带阈值的线性模型
它先将数中心移到原点,此时,中心化后的数据适用于无阈值模型
即可先算出中心化数据的无阈值岭回归模型的W,再反推出未中心化时的数据的阈值b
 具体如下:
1. 先将数据作中心化转换:                                                             
  x=xxˉx'=x-\bar{x}                                                         
 y=yyˉ\text{y}'=\text{y}-\bar{\text{y}}                                                        
 此时, x,yx',\text{y}'都是以(0,0)为中心的数据              
2. 用x,yx',\text{y}'训练岭回归模型, 得到  w1,w2...,wkw_1 , w_2 ..., w_k                               
3. 训练后再计算阈值b:   b=yˉw1xˉ1w2xˉ2+...+wkxˉkb=\bar{\text{y}}-w_1\bar{x}_1-w_2\bar{x}_2+...+w_k\bar{x}_k      
即可得到 w1,w2...,wk,bw_1 , w_2​ ..., w_k​ , b                                                      
公式推导详细可参考:《线性模型的样本中心化》







     02. 岭回归-模型求解      




本节展示岭回归模型的求解公式和推导过程




   岭回归模型求解公式   


  岭回归模型求解公式
 岭回归的模型求解公式如下:
 W=(XTX+αI)1XTYW = (X^TX+\alpha I)^{-1}X^TY 
它与线性回归的求解公式相似,只是XTX\small X^TX部分需要在对角元素上加上α\alpha
岭回归求解公式推导过程
只要令岭回归的损失函数L对W的各个偏导数为0,然后对其求解就可求得令L最小化的W
 
岭回归求解公式推导过程如下:
 一、L(W) 对 W求导                                                                  
 
        
L(W)=((YXW)T(YXW)+λWTW)=2XT(YXW)+2αW\begin{aligned} \text{L}'(W) = &\left ( (Y-XW)^T(Y-XW)+\lambda W^TW \right ) ' \\ = & -2X^T*(Y-XW)*+2\alpha W \end{aligned}
二、令导为0 ,即可解得 W                                                      

                  
2XT(YXW)+2αW=02αW=2XT(YXW)αW=XTYXTXW(XTX+αI)W=XTYW=(XTX+αI)1XTY\begin{aligned} -2X^T*(Y-XW)*+2\alpha W &= 0 \\ 2\alpha W &= 2X^T*(Y-XW) \\ \alpha W & = X^TY-X^TXW \\ (X^TX+\alpha I)W &= X^TY \\ W &= (X^TX+\alpha I)^{-1}X^TY \end{aligned} 






     关于sklearn岭回归求解的核心源码       


 我们不妨看下sklearn中岭回归求解的核心实现代码:
 岭回归求解代码解读 
从源码可以看到,W的求解就是计算公式W=(XTX+αI)1XTY\small W = (X^TX+\alpha I)^{-1}X^TY 







好了,以上就是岭回归模型的基本原理与求解方法了~









 End 





图标 评论
添加评论