假设
n
维空间变量点为
x⃗ =(x1,x2,⋯,xn)T
, 并假设有
m
个这样的样本点 记为
x⃗ (1),x⃗ (2),⋯,x⃗ (m)
,我们希望找到一个这样的超平面,来使得尽可能的拟合这些样本点,形式化表示等价于我们希望找到这样的系数
w⃗
和
b
使得
w⃗ Tx⃗ +b≈y
,为了简化上述表达式,我们将
w⃗
和
b
放到一起简记为
(w⃗ T,b)=w⃗ T
,并令
x⃗ (i)n=1
,于是上述表达式等价于找到
w⃗ T
使得
w⃗ Tx⃗ ≈y
我们记样本点集为矩阵
X
,则有
X=⎛⎝⎜⎜⎜⎜⎜x⃗ (1)Tx⃗ (2)T⋮x⃗ (m)T⎞⎠⎟⎟⎟⎟⎟=⎛⎝⎜⎜⎜⎜⎜x(1)1x(2)1⋮x(m)1x(1)2x(2)2⋮x(m)2⋯⋯⋱⋯x(1)nx(2)n⋮x(m)n⎞⎠⎟⎟⎟⎟⎟
于是上述表述等价于找到
w⃗
使得
Xw⃗ ≈y⃗
.
考虑这样的一个特殊情形:假设所有的样本点正好在一个超平面,且样本点所张成的空间(
Span Space
)为该
n
维空间,意味着
m≥n
且
rank(X)=n
此时方程
Xw⃗ =y⃗
恰好有唯一解(即为该超平面) ,推导如下:
Xw⃗ =y⃗ ⇔XTXw⃗ =XTy⃗ ⇔w⃗ =(XTX)−1XTy⃗
(注:因为
X
为列满秩,所以
rank(XTX)=rank(X)=n
,即
XTX
为可逆方阵)
而对于一般情形,所有的样本点一般不会在同一个超平面中,所以方程
Xw⃗ =y⃗
此时是无解的,这个方程组也称之为超定方程组(
Overdetermined System
),即方程数量超过未知数个数,此时我们希望找到一个超平面使得
Xw⃗ ≈y⃗
且误差
‖Xw⃗ −y⃗ ‖
尽可能的小(这里符号
‖ ‖
为
L2
范数,利用度量欧几里得距离来衡量误差大小是比较符合常识的)。形式化表达等价于
ŵ ⃗ =argminw⃗ ‖Xw⃗ −y⃗ ‖
为了便于计算,我们不妨令
ŵ ⃗ =argminw⃗ ‖Xw⃗ −y⃗ ‖=argminw⃗ ‖Xw⃗ −y⃗ ‖2
且令
L(w1,w2,⋯,wn)=‖Xw⃗ −y⃗ ‖2
仍不妨假设此时
X
是列满秩的
上述问题转化为了求极值问题,我们很自然的想到了利用导数来寻找极值。
于是对
wi
求偏导且令其为零
∂L∂wi=2(x(1)i,x(2)i,⋯,x(m)i)(Xw⃗ −y⃗ )=0
于是
(∂L∂w1,∂L∂w2,⋯,∂L∂wn)T=0⃗ T⇔2XT(Xw⃗ −y⃗ )=0⃗ ⇔XTXw⃗ −XTy⃗ =0⃗
即推出
w⃗ =(XTX)−1XTy⃗
上述就是众所周知的线性最小二乘法的基本思想
然而,这里会有两个问题
(1) 为什么在这个情况下我们找到的是极小值?
(2) 为什么这个极小值就是我们需要的最小值?