您的位置:首页 > 其它

最小二乘 岭回归 lasso回归

2017-04-21 15:29 260 查看
线性回归适用于数值型数据,目的是对数据进行预测。线性回归的一般模型可以表示为:

y=θ0+∑i=1mθixi

令x=(1,x1,…,xn)T,θ=(θ0,θ1,…,θn)T,则上式可以重写为

y=θTx=xTθ

在线性回归中,损失函数是平方损失 L(y,f(x))=(y−f(x))2

假设给定数据集 T={(x1,y1),(x2,y2),…,(xm,ym)},

假设xi=(1,x1i,…,xni)T,y=(y1,y2,…,ym)T,X=(xT1,…,xTm)T, 则线性回归的矩阵形式为

y=Xθ

经验风险为

R=∑i=1m(yi−xTiθ)2=(y−Xθ)T(y−Xθ)

对 θ 求导数

∂R∂θ=−2XT(y−Xθ)=0

得到 θ^=(XTX)−1XTy

值得注意的是,上述公式中包含(XTX)−1,因此这个方程只有个逆矩阵存在时才有用。该方法称为 普通最小二乘法(ordinary least squares)。

线性回归的一个问题是有可能出现欠拟合现象,因为它求的是具有最小均方差的无偏估计量。如果模型欠拟合,则不能取得很好的效果。所以有些方法允许在估计中引入一些偏差,从而降低均方误差。其中一个方差就是局部加权线性回归(Locally weighted Linear regression)。

在该算法中,我们给带预测点附近的每个点赋予一定的权重,然后以加权的平方误差为目标函数,求解参数向量。

在普通最小二乘法中,目标函数为

R=∑i=1m(yi−xTiθ)2

而在LWLR中,目标函数为

R=∑i=1mwi(yi−xTiθ)2

其中,wi 是指样本xi相对于待预测变量x的权重。

LWLR使用 “核”来对附近的点赋予更高的权重,最常用的是高斯核,高斯核对应的权重如下:

W(i,i)=exp(|xi−x|−2k2)

这样就构建了一个只含对角元素的权重矩阵W.

假设V是一个对角矩阵,且V∗V=W, 即Vii=Wii−−−√,且有VT=V,那么LWLR的损失函数可以用矩阵表示为

R=(V(y−Xθ))T(V(y−Xθ)),

对θ求导得到

∂R∂θ=−2XTVTV(y−Xθ)=0

得到

θ^=(XTWX)−1XTWy

上面讨论到,如果XTX的逆矩阵不存在,则普通最小二乘法就会失效。比如,属性比样本多,则逆矩阵不存在。解决的办法是引入正则化项。下面,我们分别讨论岭回归(Ridge Regression)和lasso回归(lasso Regression)。

岭回归是在目标函数中加入了L2正则化项,改进后的目标函数为

R=∑i=1m(yi−xTiθ)2+λ∑j=1nθ2j

或者可以写为:

min∑i=1m(yi−xTiθ)2s.t.∑j=1nθ2j≤t

目标函数的矩阵形式可以写为:

R=(y−Xθ)T(y−Xθ)+λθTθ

求导后得到:

∂R∂θ=−2XT(y−Xθ)+2λθ=0

结果为

θ^=(XTX+λI)−1XTy

其中,I为单位矩阵。

岭回归相当于在矩阵XTX上加上一个λI从而使得矩阵非奇异,进而能对其求逆.

如果在目标函数中加入L1正则化项,则得到了Lasso (Least Absolute Shrinkage and Selection Operator)回归。lasso回归的目标函数可以写为:

R=∑i=1m(yi−θTxi)2+λ∑j=1n|θj|

或者可以写为:

min∑i=1m(yi−xTiθ)2s.t.∑j=1n|θj|≤t

因为L1正则化不可导,所以我们不在继续讨论。具如果有兴趣,可以参看该文档

参考文档:

《机器学习实战》

《The Elements of Statistical Learning 》

《斯坦福机器学习讲义(全)Stanford_Machine_Leaning》
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐