多元线性回归通式定义如下:
⎧⎩⎨⎪⎪ŷ 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
来评估回归函数的拟合优度。