您的位置:首页 > 其它

多元线性回归推导 — Multi-Variable Linear Regression Derivation

2017-11-30 11:21 465 查看
多元线性回归通式定义如下:

⎧⎩⎨⎪⎪ŷ i=f(x)=θ0+∑j=1nθjxjiyi=ŷ i+ϵi

其中θ0​为偏置项,xji​为第i​条数据的第j​项特征值,θj​为第j​项特征的权重,ŷ i​为第i​条数据xi​的预测值,yi​为第i​条数据xi​对应的实际值,ϵi​为预测值ŷ i​与实际值yi​之间的残差。

令 x0i=1,ŷ i=θ0+∑j=1nθjxji可被改写成ŷ i=θTxi。

假设每条数据xi相互独立且同分布,残差项ϵi符合标准正态分布。残差项的概率密度函数如下:

p(ϵi)=12π‾‾‾√σexp(−ϵ2i2σ2)=12π‾‾‾√σexp(−(yi−θTxi)22σ2)



我们的目的是最小化|ϵi|,而p(ϵi)在ϵi值趋近μ=0时取得最大值,如上图。因此,已知xi和yi,我们可以使用最大似然估计来得到θ:

L(θ)=∏i=1mp(yi|xi;θ)=∏i=1m12π‾‾‾√σexp(−(yi−θTxi)22σ2)

将L(θ)取对数,得到logL(θ),连乘变成了累加,消掉了指数幂,减少了函数的复杂度。并且,L(θ)与logL(θ)具有相同的变化趋势。因此,求L(θ)取得最大值时θ的取值等同于求logL(θ)取得最大值时θ的取值。

logL(θ)=∑i=1mlog(12π‾‾‾√σexp(−(yi−θTxi)22σ2))=∑i=1m(log12π‾‾‾√σ−(yi−θTxi)22σ2)=∑i=1mlog12π‾‾‾√σ−∑i=1m(yi−θTxi)22σ2

由于∑i=1mlog12π√σ和2σ2是常量, ∑i=1m(yi−θTxi)2取得最小值时,logL(θ)取得最大值。

于是,我们得到了最小二乘法函数

J(θ)=∑i=1m(yi−θTxi)2

J(θ)在其偏微分取值为零时取得最小值。因此,我们对J(θ)偏微分,求其取值为零时θ的值。

Jθ=∂J∂θ=[∂J∂θ0∂J∂θ1…∂J∂θn]T=0

我们以∂J∂θ0为例:

∂J∂θ0=∂∂θ0∑i=1m(yi−θTxi)2=∂∂θ0[(y1−θTx1)2+(y2−θTx2)2+⋯+(ym−θTxm)2]=∂∂θ0[(y1−∑j=1nθjxj1)2+(y2−∑j=1nθjxj2)2+⋯+(ym−∑j=1nθjxjm)2]=2(y1−∑j=1nθjxj1)(−x01)+2(y2−∑j=1nθjxj2)(−x02)+⋯+2(ym−∑j=1nθjxjm)(−x0m)=−2[y1−∑j=1nθjxj1y2−∑j=1nθjxj2…ym−∑j=1nθjxjm][x01x02…x0m]T=−2[y1−θTx1y2−θTx2…ym−θTxm][x01x02…x0m]T

同理,我们可以求得∂J∂θ1​至∂J∂θn​的偏微分:

∂J∂θ0=−2[y1−θTx1y2−θTx2…ym−θTxm][x01x02…x0m]T∂J∂θ1=−2[y1−θTx1y2−θTx2…ym−θTxm][x11x12…x1m]T⋮∂J∂θn=−2[y1−θTx1y2−θTx2…ym−θTxm][xn1xn2…xnm]T

将其改写成矩阵的形式:

Jθ=∂J∂θ=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢∂J∂θ0∂J∂θ1⋮∂J∂θn⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥=−2[yi−θTx1y2−θTx2…ym−θTxm]⎡⎣⎢⎢⎢⎢⎢x01x02⋮x0mx11x12x1m………xn1xn2xnm⎤⎦⎥⎥⎥⎥⎥=−2([y1y2…ym]−[θTx1θTx2…θTxm])X=−2(YT−θT[x1x2…xm])X=−2(YT−θTXT)X

令Jθ=−2(YT−θTXT)X=0​,得到:

YTX=θTXTXθT=YTX(XTX)−1=YTXX−1(XT)−1=YT(XT)−1=YT(X−1)Tθ=(θT)T=X−1Y

因此,当θ=X−1Y时,ŷ i=θTxi能最好地描述X与Y之间的线形相关性。

然而,现实中的数据并非都能通过求偏导来求极值。例如:z=y2−x2。如下图,当∂z∂y=0;∂z∂x=0时,y=0;x=0(鞍点)却非极值点。因此,实际中多采用梯度下降法或牛顿法来求得目标函数极值的近似解。通过线性回归得到回归参数后,可以通过计算判定系数R2来评估回归函数的拟合优度。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: