您的位置:首页 > 其它

线性代数笔记4:最小二乘法

2018-03-22 20:16 489 查看
最小二乘法大家都很熟悉了,今天以向量投影的角度重新认识它。

引入

回到解方程组Ax=bAx=b。

若Ax=bAx=b 有解,则b∈C(A)b∈C(A)。

若Ax=bAx=b 有解,则b∉C(A)b∉C(A),转化为问题求:x^x^使得||Ax^−bAx^−b||最小,即minx∈Rn||Ax^−b||minx∈Rn||Ax^−b||的最小值点。

由上一讲可知,最小值其实就是e=b−Ax^e=b−Ax^,即误差向量。在空间中表示为b在C(A)b在C(A)上的投影。

因此,我们可以求得投影向量p=Ax^p=Ax^,然后根据e⊥C(A)e⊥C(A)得到法方程组:ATAx^=ATbATAx^=ATb。

法方程组有几个重要的性质:

法方程组总有解(无论A是否列满秩)。

ATAx^=ATbATAx^=ATb的解可能有无数多个,但p=Ax^p=Ax^唯一。

直线拟合

首先我们来看最常见的直线拟合。



我们想得到目标直线y^=a+bx,ei=yi−y^iy^=a+bx,ei=yi−y^i

给定数据{(x1,y1,...(xn,yn)}{(x1,y1,...(xn,yn)}。寻找直线y=C+Dxy=C+Dx,使得误差

E(C,D)=[y1−(C+Dx1)]2+....+[yn−(C+Dn)]2最小E(C,D)=[y1−(C+Dx1)]2+....+[yn−(C+Dn)]2最小

即向量⎛⎝⎜y1−(C+Dx1)...yn−(C+Dxn)⎞⎠⎟(y1−(C+Dx1)...yn−(C+Dxn))的长度最小。

令A=⎡⎣⎢1...1 x1...xn⎤⎦⎥A=[1 x1......1xn],b=⎡⎣⎢y1...yn⎤⎦⎥b=[y1...yn],x^=b=[C^D^]x^=b=[C^D^]。即求解x^使得||b−Ax^||x^使得||b−Ax^||最小。

利用之前的结论,ATAx^=ATbATAx^=ATb,带入即可得:

C^=y¯¯¯−D^x¯¯¯, D^=∑i=1n(xi−x¯¯¯)(yi−y¯¯¯)∑i=1n(xi−x¯¯¯)​C^=y¯−D^x¯, D^=∑i=1n(xi−x¯)(yi−y¯)∑i=1n(xi−x¯)​

直线y=C^+D^xy=C^+D^x称为最小二成直线。

因此,我们只需要求法方程组,即可求得直线的所有参数。

微积分

曲线拟合与直线类似,只是多了几个参数而已,在此不做介绍。

我们现在可以说明法方程组也来自微积分。

令f(x1,...,xn)=||Ax=b||2=(Ax−b)T(Ax−b)令f(x1,...,<
4000
mi>xn)=||Ax=b||2=(Ax−b)T(Ax−b)

则∂f∂X=⎛⎝⎜⎜⎜∂f∂x1...∂f∂xn⎞⎠⎟⎟⎟=2ATAX−2ATb∂f∂X=(∂f∂x1...∂f∂xn)=2ATAX−2ATb。

若x^满足minx∈Rn||Ax^−b||x^满足minx∈Rn||Ax^−b||,则∂f∂X∂f∂X一定是极值点。因此可得:ATAx^=ATbATAx^=ATb。

欢迎关注我的个人博客
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息