目前为止,我们已经知道Ax=bAx=b要么有解要么无解,如果bb 不在列空间C(A)C(A) 里,那么这个系统就是矛盾的,高斯消元法就会失败。当有几个方程和一个未知量时失败完全可以确定:

2x3x4x===b1b2b3

\begin{array}{ccc} 2x&=&b_1\\3x&=&b_2\\4x&=&b_3 \end{array}

当b1,b2,b3b_1,b_2,b_3的比率是2:3:42:3:4时,上面的方程组才可解,也就是说只有bb 和列a=(2,3,4)a=(2,3,4)在一条直线上时xx才会存在。

尽管他们无解,可是他们在实际中经常出现,他们必须有解!一种可能是用系统的一部分来确定xx,其余部分忽略;如果所有的mm个方程来源一样,这种方法就不合理。我们放弃这种一些方程没误差,而有些误差大的想法,我们考虑能最小化mm个方程平均误差EE的xx值。

对平方和求平均是最方便的:

E2=(2x−b1)2+(3x−b2)2+(4x−b3)2

E^2=(2x-b_1)^2+(3x-b_2)^2+(4x-b_3)^2

如果存在准确解,那么最小误差E=0E=0。大部分情况下,bb和aa不成比例关系,E2E^2的图像将是一个抛物线,最小误差在最低点的位置处,也就是导数等于零的位置:

dE2dx=2[(2x−b1)2+(3x−b2)3+(4x−b3)4]=0

\frac{dE^2}{dx}=2[(2x-b_1)2+(3x-b_2)3+(4x-b_3)4]=0

求出xx的值,这个模型系统ax=bax=b的最小二乘解用x^\hat{x} 来表示:

x^=2b1+3b3+4b322+32+42=aTbaTa

\hat{x}=\frac{2b_1+3b_3+4b_3}{2^2+3^2+4^2}=\frac{a^Tb}{a^Ta}

相信大家立马就认出分子中的aTba^Tb和分母中的aTaa^Ta了吧(是不是像投影啊)。

推广到一般情况同样如此,求解ax=bax=b就是最小化

E2=∥ax−b∥2=(a1x−b1)2+⋯+(amx−bm)2

E^2=\Vert ax-b\Vert^2=(a_1x-b_1)^2+\cdots+(a_mx-b_m)^2

对E2E^2求导并令其等于零,求出点x^\hat{x}

(a1x^−b1)a1+⋯+(amx^−bm)am=0

(a_1\hat{x}-b_1)a_1+\cdots+(a_m\hat{x}-b_m)a_m=0

计算后得到x^=(a1b1+⋯+ambm)/(a21+⋯+a2m)\hat{x}=(a_1b_1+\cdots+a_mb_m)/(a_1^2+\cdots+a_m^2)。

11、对于ax=bax=b这样只有一个未知变量的问题,它的最小二乘解为:x^=aTbaTa\hat{x}=\frac{a^Tb}{a^Ta}

大家可能看出来了,我们一直从几何角度解释最小二乘问题—— 最小化距离。令E2E^2的导数等于零求出解,求得的结果和上篇文章的几何形式一样,连接b,pb,p 的误差向量ee一定垂直于aa:

aT(b−x^a)=aTb−aTbaTaaTa=0

a^T(b-\hat{x}a)=a^Tb-\frac{a^Tb}{a^Ta}a^Ta=0

注意退化为a=0a=0的情况,这是aa的任何倍数都是零,线仅仅就是一个点,因此p=0p=0是唯一的投影候选结果。但是x^\hat{x}的形式变成一个无意义的数0/00/0,这表明x^\hat{x}完全无法确定,所有xx值都给出相同的误差E=∥0x−b∥E=\Vert 0x-b\Vert,所以E2E^2是一条水平线而不是抛物线,伪逆给这种情况分配了一个确定的值x^=0\hat{x}=0,相比较其他值,这个是最好的选择的。

最小二乘问题

现在我们开始难一点的问题,将bb投影到一个子空间上——而不是一条线上。这个问题来自于Ax=bAx=b,其中AA是m×nm\times n矩阵,不再是一列和一个未知量xx,现在矩阵有多列,mm 的个数比未知量nn的个数要大,所以跟期望中的一样,Ax=bAx=b依然是矛盾的。不可能存在完全拟合数据bb的xx值,换句话说,向量bb不是AA列向量的组合;它在列空间的外面。

再次回到了找出x^\hat{x}来最小化误差的问题,这个最小化可以用最小二乘求解,误差是E=∥Ax−b∥E=\Vert Ax-b\Vert,这就是bb到列空间中AxAx的距离。我们要做的就是能最小化EE的最小二乘解x^\hat{x},它和p=Ax^p=A\hat{x}相等,而这个pp就是列空间中离bb最近的点。

我们可以用几何或计算来确定x^\hat{x},在nn维空间中,我们偏爱几何;pp 一定是bb在列空间上的投影。误差向量e=b−Ax^e=b-A\hat{x}一定可这个空间垂直(图1),找到x^\hat{x}和投影p=Ax^p=A\hat{x}是最基本的,下面我们用两种方法来实现它:

  1. 所有垂直于列空间的向量位于左零空间里,因此误差向量e=b−Ax^e=b-A\hat{x}一定在ATA^T的零空间里:

    AT(b−Ax^)=0orATAx^=ATb

    A^T(b-A\hat{x})=0\quad or\quad A^TA\hat{x}=A^Tb

  2. 误差向量和AA的每列a1,…,ana_1,\ldots,a_n垂直:
    aT1(b−Ax^)=0⋮aTn(b−Ax^)=0or⎡⎣⎢⎢aT1⋮aTn⎤⎦⎥⎥[b−Ax^]=0

    \begin{matrix}a_1^T(b-A\hat{x})=0\\\vdots\\a_n^{T}(b-A\hat{x})=0\end{matrix}\quad or\quad \begin{bmatrix}a_1^T\\ \vdots\\a_n^T\end{bmatrix}\begin{bmatrix} \\b-A\hat{x}\\ \end{bmatrix}=0


    图1

这两种方法殊途同归,最后都是AT(b−Ax^)=0,ATAx^=ATbA^T(b-A\hat{x})=0,A^TA\hat{x}=A^Tb,而计算方法是通过计算E2=(Ax−b)T(Ax−b)E^2=(Ax-b)^T(Ax-b)的导数,并令其等于零得2ATAx−2ATb=02A^TAx-2A^Tb=0,最快的方式是方程Ax=bAx=b两边乘以ATA^T,所有这些等价方法都得到一个二次系数矩阵ATAA^TA,它是对称的(它的转置可不是AATAA^T!)并且是接下来几篇文章中非常基础的矩阵。

方程ATAx^=ATbA^TA\hat{x}=A^Tb在统计学中叫做正规方程。

12、当Ax=bAx=b是矛盾的时候,它的最小二乘解就是最小化∥Ax−b∥2\Vert Ax-b\Vert^2:

ATAx^=ATb(1)

\begin{equation}A^TA\hat{x}=A^Tb\tag1\end{equation}当AA的列线性无关时,ATAA^TA是可逆的!因此

x^=(ATA)−1ATb(2)

\begin{equation}\hat{x}=(A^TA)^{-1}A^Tb\tag2\end{equation} bb在列空间上的投影就是最近点Ax^A\hat{x}:

p=Ax^=A(ATA)−1ATb(3)

\begin{equation}p=A\hat{x}=A(A^TA)^{-1}A^Tb \tag3\end{equation}

我们举一个例子进行说明:

A=⎡⎣⎢110230⎤⎦⎥,b=⎡⎣⎢456⎤⎦⎥,Ax=b没有解,ATAx^=ATb给出最佳解x

A=\begin{bmatrix}1&2\\1&3\\0&0\end{bmatrix},\quad b=\begin{bmatrix}4\\5\\6\end{bmatrix}, Ax=b\text{没有解},A^TA\hat{x}=A^Tb\text{给出最佳解}x

每个列最后一个元素都是零,所以C(A)C(A)是三维空间中的x−yx-y平面,b=(4,5,6)b=(4,5,6)的投影是p=(4,5,0)p=(4,5,0),x,yx,y分量保持不变,但zz分量变成零,通过求解正规方程就能证实这个结果:

ATA=[121300]⎡⎣⎢110230⎤⎦⎥=[25513]

A^TA=\begin{bmatrix}1&1&0\\2&3&0\end{bmatrix}\begin{bmatrix}1&2\\1&3\\0&0\end{bmatrix} =\begin{bmatrix}2&5\\5&13\end{bmatrix}

x^=(ATA)−1ATb=[13−5−52][121300]⎡⎣⎢456⎤⎦⎥=[21]

\hat{x}=(A^TA)^{-1}A^Tb=\begin{bmatrix}13&-5\\-5&2\end{bmatrix}\begin{bmatrix}1&1&0\\2&3&0\end{bmatrix}\begin{bmatrix}4\\5\\6\end{bmatrix} =\begin{bmatrix}2\\1\end{bmatrix}

投影:p=Ax^=⎡⎣⎢110230⎤⎦⎥[21]=⎡⎣⎢450⎤⎦⎥

\text{投影:}p=A\hat{x}=\begin{bmatrix}1&2\\1&3\\0&0\end{bmatrix}\begin{bmatrix}2\\1\end{bmatrix} =\begin{bmatrix}4\\5\\0\end{bmatrix}

在这种特殊情况,最佳方式就是求解Ax=bAx=b的前两个方程,得到x^1=1,x^2=1\hat{x}_1=1,\hat{x}_2=1,方程0x1+0x2=60x_1+0x_2=6的误差是6。

注解:假设bb在AA的列空间里,也就说存在列的组合使得b=Axb=Ax,那么bb的投影依然是bb:

p=A(ATA)−1ATAx=Ax=b

p=A(A^TA)^{-1}A^TAx=Ax=b

最近的点pp就是bb本身。

注解:考虑一个极端的情况,假设bb与每列都垂直,那么ATb=0A^Tb=0,这种情况下bb的投影就是零向量:

p=A(ATA)−1ATAx=A(ATA)−10=0

p=A(A^TA)^{-1}A^TAx=A(A^TA)^{-1}0=0

注解:当AA是方阵且可逆时,列空间就是整个空间,每个向量的投影就是自身,p=b,x^=xp=b,\hat{x}=x:

p=A(ATA)−1ATAx=AA−1(AT)−1ATb=b

p=A(A^TA)^{-1}A^TAx=AA^{-1}(A^T)^{-1}A^Tb=b

只有这一种情况我们可以将(ATA)−1(A^TA)^{-1}分离成A−1(AT)−1A^{-1}(A^T)^{-1},当AA是长方形矩阵时,就不能这么做。

注解:假设AA只有一列,也就是只包含aa,那么矩阵ATAA^TA就是常数aTaa^Ta,x^\hat{x}就是aTb/aTaa^Tb/a^Ta,回到了最初的形式。

矩阵ATAA^TA

矩阵ATAA^TA一定是对称的,因为它的转置(ATA)T=ATATT(A^TA)^T=A^TA^{TT},依然是ATAA^TA。它的第i,ji,j(j,ij,i) 个元素是AA的第ii列与第jj行的内积,重点是ATAA^TA 的可逆性,幸运的是ATAA^TA与AA有相同的零空间。如果Ax=0Ax=0,那么ATAx=0A^TAx=0,AA零空间中的向量xx也在ATAA^TA的零空间中。反过来考虑,假设ATAx=0A^TAx=0,我们将它和xx进行内积操作来表明Ax=0Ax=0:

xTATAx=0,or∥Ax∥2=0,orAx=0

x^TA^TAx=0,\quad or\quad \Vert Ax\Vert^2=0,\quad or\quad Ax=0

两个零空间是相等的。如果AA有无关列(零空间中只有x=0x=0),那么ATAA^TA同样如此:

13、如果AA有无关列,那么ATAA^TA是方阵,对称并且可逆。

随后我们还会指出ATAA^TA也是正定的(所有主元和特征值都是正的)。

到目前为止,这种情况是最常见也是最终要的,如果m>nm>n,那么mm维空间的无关性就很容易实现。

投影矩阵

我们已经说明了离bb的最近点是p=A(ATA)−1ATbp=A(A^TA)^{-1}A^Tb,这种形式用矩阵形式来表示就是构建bb到AA列空间的垂线,产生pp的矩阵是一个投影矩阵,用PP 表示:

P=A(ATA)−1AT(4)

\begin{equation} P=A(A^TA)^{-1}A^{T}\tag4 \end{equation}

这个矩阵将任何向量bb投影到AA的列空间上,换句话说,p=Pbp=Pb是bb在列空间上的分量,误差e=b−Pbe=b-Pb是正交补中的分量。(I−PI-P也是一个投影矩阵!它将bb投影到正交补上,投影是b−Pbb-Pb)

简单来说,有一种矩阵形式可以将bb分成两个互相垂直的分量,PbPb在列空间C(A)C(A)内,其他的分量(I−P)b(I-P)b在左零空间N(AT)N(A^T)内——也就是与列空间正交的空间。

这些投影矩阵可以从代数和几何两个角度理解。

14、投影矩阵P=A(ATA)−1ATP=A(A^TA)^{-1}A^T有两个性质:

- 矩阵等于自身的平方:P2=PP^2=P
- 矩阵等于它的转置:PT=PP^T=P

反过来讲,任何对称矩阵,如果P2=PP^2=P,那么它表示一种投影。

证明:很容易看出来为什么P2=PP^2=P,我们先从任意向量bb开始,那么PbPb位于投影的子空间内,当我们再次投影的话不会发生任何变化,向量PbPb已经在子空间内,P(Pb)P(Pb)依然是PbPb,换句话说P2=PP^2=P,两次或三次或五次投影得到的结果跟第一次一样:

P2=A(ATA)−1ATA(ATA)−1AT=A(ATA)−1AT=P

P^2=A(A^TA)^{-1}A^TA(A^TA)^{-1}A^T=A(A^TA)^{-1}A^T=P

为了证明PP是对称的,我们取它的转置:

PT=(AT)T((ATA)−1)TAT=A(ATA)−1AT=P

P^T=(A^T)^T\left((A^TA)^{-1}\right)^TA^T=A(A^TA)^{-1}A^T=P

反过来,我们可以从P2=P,PT=PP^2=P,P^T=P推断出PbPb是bb在PP列空间上的投影,误差向量b−Pbb-Pb与这个空间正交。对于该空间内的所有向量PcPc,内积是零:

(b−Pb)TPc=bT(I−P)TPc=bT(P−P2)c=0

(b-Pb)^TPc=b^T(I-P)^TPc=b^T(P-P^2)c=0

因此b−Pbb-Pb和空间是正交的,PbPb是列空上的投影。

例1:假设AA是可逆的,如果它是4×44\times 4矩阵,那么它的四列都是无关的,列空间就是整个R4R^4。在整个空间上的投影是什么?答案就是单位矩阵。

P=A(ATA)−1AT=AA−1(AT)−1AT=I(5)

\begin{equation} P=A(A^TA)^{-1}A^T=AA^{-1}(A^T)^{-1}A^T=I\tag5 \end{equation}

单位矩阵是对称的,并且I2=II^2=I,误差向量b−Ibb-Ib等于零。

拟合数据的最小二乘法

假设我们有一堆实验数据,并且期望输出bb是输入tt的线性函数,也就是看成直线b=C+Dtb=C+Dt,例如:

  1. 我们测量不同时刻卫星距火星的距离,我们用tt表示时间,bb表示时间,不考虑失去动力或重力突然增强的情况下,卫星几乎以恒定的速度vv移动:b=b0+vtb=b_0+vt。
  2. 我们在某个物体上放上不同的载荷,并测量它垂直方向产生的位移,我们用tt 表示载荷的重量,bb表示位移大小。除非载太重使得物体彻底变形,否则的话根据弹性理论,存在一个线性关系b=C+Dtb=C+Dt。
  3. 印制tt本书的成本似乎也是线性关系:b=C+Dtb=C+Dt,其中编辑和排版成本是CC,印刷和装订成本是DD,CC是固定的,而每印制一本书成本多DD。

如何计算C,DC,D呢?如果没有实验误差,那么两次测量的bb都会得到直线b=C+Dtb=C+Dt,但是如果有误差的话,我们就考虑平均值,求出最佳的直线。事实上,因为有两个未知量C,DC,D需要确定,于是我们需要投影到二维子空间上。而一般情况下,我们都是多次进行试验测量的:

CCC+++Dt1Dt2⋮Dtm===b1b2bm(6)

\begin{equation} \begin{array}{ccccc} C&+&Dt_1&=&b_1\\ C&+&Dt_2&=&b_2\\ &&\vdots&&\\ C&+&Dt_m&=&b_m\\ \end{array}\tag6 \end{equation}

得到的是矛盾方程组,有mm个方程却只有两个未知量,如果误差存在的话,它将不可解。我们写成矩阵形式:

⎡⎣⎢⎢⎢⎢11⋮1t1t2⋮tm⎤⎦⎥⎥⎥⎥[CD]=⎡⎣⎢⎢⎢⎢b1b2⋮bm⎤⎦⎥⎥⎥⎥,orAx=b(7)

\begin{equation} \begin{bmatrix} 1&t_1\\ 1&t_2\\ \vdots&\vdots\\ 1&t_m\\ \end{bmatrix} \begin{bmatrix} C\\D \end{bmatrix}= \begin{bmatrix} b_1\\b_2\\\vdots\\b_m \end{bmatrix},\quad or\quad Ax=b\tag7 \end{equation}

最佳解(C^,D^)(\hat{C},\hat{D})就是最小化均方误差E2E^2得到的x^\hat{x}:

E2=∥b−Ax∥2=(b1−C−Dt1)2+⋯+(bm−C−Dtm)2

E^2=\Vert b-Ax\Vert^2=(b_1-C-Dt_1)^2+\cdots+(b_m-C-Dt_m)^2

向量p=Ax^p=A\hat{x}是最接近向量bb的,在所有的直线b=C+Dtb=C+Dt中,我们选出拟合数据最好的直线(图2),在图中,误差是到直线的竖直距离b−C−Dtb-C-Dt(不是垂直距离!),它对应的是竖直距离的平方,求和和最小化。

例2:在图2a中有三个测量值b1,b2,b3b_1,b_2,b_3:

t=−1,b=1;t=1,b=1;t=2,b=3

t=-1,b=1;\quad t=1,b=1;\quad t=2,b=3

注意t=−1,1,2t=-1,1,2不要求等距离。第一步是通过三个点的方程:

Ax=bisCCC−+−DD2D===113或者⎡⎣⎢111−112⎤⎦⎥[CD]=⎡⎣⎢113⎤⎦⎥

Ax=b\quad is\quad \begin{array}{ccccc} C&-&D&=&1\\ C&+&D&=&1\\ C&-&2D&=&3 \end{array} \text{或者} \begin{bmatrix} 1&-1\\1&1\\1&2 \end{bmatrix} \begin{bmatrix} C\\D \end{bmatrix}= \begin{bmatrix} 1\\1\\3 \end{bmatrix}

如果这些方程Ax=bAx=b可解,那么表示没有误差。但是这些点不在一条直线上,所以他们不可解,因此需要用到最小二乘求解:

ATAx^=ATb得到[3226][C^D^]=[56]

A^TA\hat{x}=A^Tb\text{得到} \begin{bmatrix} 3&2\\2&6 \end{bmatrix} \begin{bmatrix} \hat{C}\\\hat{D} \end{bmatrix}= \begin{bmatrix} 5\\6 \end{bmatrix}

最佳解就是C^=97,D^=47\hat{C}=\frac{9}{7},\hat{D}=\frac{4}{7},最佳直线是97+47t\frac{9}{7}+\frac{4}{7}t。


图2

注意这两幅图之间的联系,问题是一样的但是呈现的效果不一样。在图2b中,bb不是列(1,1,1),(−1,1,2)(1,1,1),(-1,1,2)的一个组合,而在图2a中,三个点不在一条线上。最小二乘用点pp代替了不在直线上的点bb!既然无法解Ax=bAx=b,那我们就解Ax^=pA\hat{x}=p。

直线97+47t\frac{9}{7}+\frac{4}{7}t在−1,1,2-1,1,2处的高度分别为57,137,177\frac{5}{7},\frac{13}{7},\frac{17}{7},这些点都在之直线上,因此向量p=(57,137,177)p=(\frac{5}{7},\frac{13}{7},\frac{17}{7})在列空间里,而这个向量就是投影。图2b展示的是三维空间效果(如果有mm个点就是mm维)而图2a 是二维空间的效果(如果有nn 个参数就是nn维)。

从bb中减去pp得到误差e=(27,−67,47)e=(\frac{2}{7},-\frac{6}{7},\frac{4}{7}),在图2a中就是竖直向量,他们是图2b中虚线向量的元素,这个误差向量与第一列(1,1,1)(1,1,1)正交,因为−27+67+47=0-\frac{2}{7}+\frac{6}{7}+\frac{4}{7}=0,跟第二列也正交,所以它与列空间正交,属于左零空间。

问题:如果测量结果b=(27,−67,47)b=(\frac{2}{7},-\frac{6}{7},\frac{4}{7})就是误差,那么最佳直线和解x^\hat{x}是什么呢?答案是:零,也就是水平轴,x=0^\hat{x=0},投影是零。

我们总结一下拟合直线的方法,AA的第一列包含1,第二列包含tt,因此ATAA^TA包含1,t,t21,t,t^2的和:

15、给定点t1,⋯,tmt_1,\cdots,t_m处的测量值b1,⋯,bmb_1,\cdots,b_m,那么最小二乘求E2E^2得到的直线C^+D^t\hat{C}+\hat{D}t为:

ATA[D^D^]=ATb或者[mΣtiΣtiΣt2i][C^D^]=[ΣbiΣtibi]

A^TA \begin{bmatrix} \hat{D}\\ \hat{D} \end{bmatrix} =A^Tb\text{或者} \begin{bmatrix} m&\Sigma t_i\\ \Sigma t_i&\Sigma t_i^2 \end{bmatrix} \begin{bmatrix} \hat{C}\\ \hat{D} \end{bmatrix}= \begin{bmatrix} \Sigma b_i\\ \Sigma t_ib_i \end{bmatrix}

注解:最小二乘法不限于用直线拟合数据,在许多实验中关系不一定是线性的。假设我们有一些放射性材料,在不同时刻tt可以通过仪器读出放射量bb。现在我们知道这些材料是两种化学物质的混合物,还知道他们的半衰期(或衰减率),但是不知道每种的含量。如果我们用C,DC,D 表示这两个未知量,那么仪器的结果更像是两个指数之和(不是直线):

b=Ce−λt+De−μt(8)

\begin{equation} b=Ce^{-\lambda t}+De^{-\mu t}\tag8 \end{equation}

而实际测量中,仪器的结果存在误差,所以我们多测几次,分别在t1,…,tmt_1,\ldots,t_m时刻测得b1,…,bmb_1,\ldots,b_m,利用方程(8)近似满足:

Ax=b就是Ce−λt1Ce−λtm++De−μt1⋮De−μtm≈≈b1bm

Ax=b \text{就是} \begin{array}{ccccc} Ce^{-\lambda t_1}&+&De^{-\mu t_1}&\approx&b_1\\ &&\vdots&&\\ Ce^{-\lambda t_m}&+&De^{-\mu t_m}&\approx&b_m \end{array}

如果记录的次数超过两次m>2m>2,那么我们可能无法求解,但是最小二乘原则将给出最佳解C^,D^\hat{C},\hat{D}。

知道了C,DC,D后情况就完全不同了,接下来我们就能算出衰减率λ,μ\lambda,\mu。这个问题就是非线性最小二乘,比线性的难一点。而我们依然是先写出E2E^2,误差的平方和,然后最小化。但是导数为零得到的不再是线性方程。

加权最小二乘

一个简单的最小二乘问题是估计两个观测值x=b1,x=b2x=b_1,x=b_2的x^\hat{x},除非b1=b2b_1=b_2,否则我们面对的就是两个方程一个未知量的矛盾方程:

[11][x]=[b1b2]

\begin{bmatrix} 1\\1 \end{bmatrix} \begin{bmatrix} x \end{bmatrix}= \begin{bmatrix} b_1\\b_2 \end{bmatrix}

目前为止,我们认为b1,b2b_1,b_2可靠度一样,基于此我们最小化E2E^2求出x^\hat{x}的值:

dE2dx=0x^=b1+b22

\frac{dE^2}{dx}=0\quad \hat{x}=\frac{b_1+b_2}{2}

最佳解就是平均值,利用ATAx^=ATbA^TA\hat{x}=A^Tb得到同样的结果。事实上,ATAA^TA是1×11\times 1的矩阵,正规方程是2x^=b1+b22\hat{x}=b_1+b_2。

现在假设两个观测值的信任程度不一样,x=b1x=b_1的结果比x=b2x=b_2更加准确,但不管怎样,只要b2b_2包含了信息,我们不会完全依赖b1b_1,最简单的分解就是给他们分配不同的权值w21,w22w_1^2,w_2^2,最下化带权重的平方和:

E2=w21(x−b1)2+w22(x−b2)2

E^2=w_1^2(x-b_1)^2+w_2^2(x-b_2)^2

如果w1>w2w_1>w_2,那么说明b1b_1更加重要,最小化过程时会使(x−b1)2(x-b_1)^2变小的力度加大:

dE2dx=2[w21(x1−b1)+w22(x−b2)]=0,x^W=w21b1+w22b2w21+w22(9)

\begin{equation} \frac{dE^2}{dx}=2[w_1^2(x_1-b_1)+w_2^2(x-b_2)]=0,\quad \hat{x}_W=\frac{w_1^2b_1+w_2^2b_2}{w_1^2+w_2^2}\tag9 \end{equation}

结果不再是b1,b2b_1,b_2的平均值,而是数据的加权平均,这个平均相比b2b_2更加靠近b1b_1。

一般最小二乘问题将Ax=bAx=b变成新系统WAx=WbWAx=Wb,这将结果x^\hat{x}变成了x^W\hat{x}_W,矩阵WTWW^TW出现在正规方程的两边:

WAx=WbWAx=Wb的最小二乘解是x^W\hat{x}_W:

加权的正规方程(ATWTWA)x^W=ATWTWb

\text{加权的正规方程}\quad (A^TW^TWA)\hat{x}_W=A^TW^TWb

在bb投影到Ax^A\hat{x}的图像中发生了什么了?投影Ax^WA\hat{x}_W依然是列空间中最靠近bb的点,但是这里的最靠近有了新的意义,xx的加权长度等于WxWx的长度,垂直也不再是yTx=0y^Tx=0,在新的方程组中是(Wy)T(Wx)=0(Wy)^T(Wx)=0,中间出现了矩阵WTWW^TW,在这个新观念下,投影Ax^WA\hat{x}_W和误差b−Ax^Wb-A\hat{x}_W依然是垂直的。

接下里我们描述一下内积:他们来自于逆矩阵WW。他们只涉及对称组合C=WTWC=W^TW,x,yx,y的内积是yTCxy^TCx。对于正交矩阵W=QW=Q,当这个组合是C=QTQ=IC=Q^TQ=I时,这和我们之前介绍的内积是一个含义,这种情况下旋转空间不改变内积,而其他矩阵会改变长度和内积。

对任何可逆矩阵WW,这些规则定义了新的内积和长度:

(x,y)W=(Wy)T(Wx)∥x∥W=∥Wx∥(10)

\begin{equation} (x,y)_W=(Wy)^T(Wx)\quad \Vert x\Vert_W=\Vert Wx\Vert\tag{10} \end{equation}

因为WW是可逆的,所以没有任何向量会变成零(除了零向量),所有可能的内积(线性依赖于x,yx,y,并且在x=y≠0x=y\neq 0 时为正)可以从C=WTWC=W^TW 中找到。

实际中,重要的问题是CC的选择,最好的答案来自统计学,最早是出自高斯。我们知道平均误差是零,这是bb中误差的期望值(误差并非一定为零!),我们还知道误差平方的均值,也就是方差。如果bib_i的误差互相独立,且方差为σ2i\sigma_i^2,那么正确的权值是wi=1/σiw_i=1/\sigma_i,测量越精确(意味着更小的方差),权重越大。

除了不同的权重外,观测量也许是不独立的,如果误差是耦合的,那么WW将是非对角形式,最好的非偏置矩阵C=WTWC=W^TW是协方差矩阵的逆(它的i,ji,j项是bib_i误差和bjb_j误差乘积的期望),C−1C^{-1}的主对角线包含方差σ2i\sigma_i^2,也就是bib_i误差平方的平均值。

例3:假设两个牌友(已经叫牌了)在猜对方手中黑桃的个数,误差为−1,0,1-1,0,1的概率都等于13\frac{1}{3},那么期望误差是零,方差是23\frac{2}{3}:

E(e)=13(−1)+13(0)+13(1)=0

E(e)=\frac{1}{3}(-1)+\frac{1}{3}(0)+\frac{1}{3}(1)=0

E(e2)=13(−1)2+13(0)2+13(1)2=23

E(e^2)=\frac{1}{3}(-1)^2+\frac{1}{3}(0)^2+\frac{1}{3}(1)^2=\frac{2}{3}

这两个人的猜测是相关的,因为叫牌是一样的,但是却不一样,这又是因为他们手中的牌不一样。如果说他们都猜大和都猜小的几率为零,相反误差的几率是13\frac{}1{3},那么E(e1e2)=13(−1)E(e_1e_2)=\frac{1}{3}(-1),协方差矩阵的逆是WTWW^TW:

[E(e21)E(e21e2)E(e21e2)E(e22)]−1=⎡⎣⎢⎢23−13−1323⎤⎦⎥⎥−1=[2112]−1=C=WTW

\begin{bmatrix} E(e_1^2)&E(e_1^2e_2)\\ E(e_1^2e_2)&E(e_2^2) \end{bmatrix}^{-1}= \begin{bmatrix} \frac{2}{3}&-\frac{1}{3}\\ -\frac{1}{3}&\frac{2}{3} \end{bmatrix}^{-1}= \begin{bmatrix} 2&1\\ 1&2 \end{bmatrix}^{-1} =C=W^TW

这就是加权正规方程中间的矩阵。

漫步线性代数十六——投影和最小二乘相关推荐

  1. 漫步线性代数十五——余弦和投影

    满足xTy=0x^Ty=0的向量是正交的,现在我们考虑内积不为零的情况,也就是夹角不是直角.我们想把内积和角度以及转置联系起来,回顾之前讲过的转置,将矩阵翻转一下就是它的转置,有点像摊煎饼. 首先不可 ...

  2. 漫步线性代数十九——快速傅里叶变换(上)

    傅里叶级数是无限维度上的线性代数,它里面的向量实际上是函数f(x)f(x):他们分别投影到正弦和余弦上:然后乘以傅里叶系数ak,bka_k,b_k.用ak,bka_k,b_k乘以无限的正弦和余弦序列就 ...

  3. 漫步线性代数十八——正交基和格拉姆-施密特正交化(下)

    格拉姆-施密特 声明:以后博主会把文章的pdf版本陆续发布到的网上,免费供大家下载 正交基和格拉姆-施密特正交化 假设我们有是是三个无关向量a,b,ca,b,c,如果他们是正交的,那么会多问题都变得容 ...

  4. 漫步线性代数十二——网络

    上篇文章举的例子是3×43\times 4矩阵,从理论角度来说它解决了我们要求的问题:计算四个子空间以及他们的维数r,n−r,r,m−rr,n-r,r,m-r都是非零的.但是这个例子并是不是由实际应用 ...

  5. 漫步线性代数十——线性无关,基和维数

    m,nm,n没有给出线性系统实际大小的真实信息,在我们上文的例子中有三行和四列,但是第三行仅仅是前两行的组合,在消元后得到了零行,它对奇次问题Ax=0Ax=0 没有影响.第四列同样是相关的,列空间减到 ...

  6. 漫步最优化十六——优化的一般问题

    一直没有说我爱你,\textbf{一直没有说我爱你,} 一直没有拥抱你,\textbf{一直没有拥抱你,} 道路上虽然会留下伤口,\textbf{道路上虽然会留下伤口,} 可是随着时间总会愈合.\te ...

  7. 漫步数理统计十六——变换

    (X1,X2)(X_1,X_2)是随机向量,假设我们知道(X1,X2)(X_1,X_2)的联合分布而我们想求(X1,X2)(X_1,X_2)变换的分布,假设为Y=g(X1,X2)Y=g(X_1,X_2 ...

  8. 漫步数学分析十六——紧集与连集的像

    定理2\textbf{定理2} 令f:A→Rmf:A\to R^m是一个连续映射,那么 如果K⊂AK\subset A并且KK是连集,那么f(K)f(K)是连集. 如果B⊂AB\subset A并且B ...

  9. 线性代数(十六) : 矩阵的左零空间及四个基本子空间总结

    矩阵的列空间,行空间,零空间,和做零空间是矩阵的四个基本的子空间,本节总结这四个子空间. 0 本节需要复习的内容 子空间 基与维数 列空间与零空间 1 行空间 (i) 将矩阵的每一行看做一个行向量,则 ...

最新文章

  1. 关于javascript闭包中的this对象
  2. C ++ 11基于反向范围的for循环
  3. 【BZOJ】3456: 城市规划 动态规划+多项式求逆
  4. 《一个操作系统的实现》——pmtest1.asm详解
  5. python扩展包安装_python怎么安装扩展包
  6. 创建销售订单BAPI一些心得
  7. Inno_Setup使用笔记(简单完成安装包制作)
  8. 作者:周涛,电子科技大学大数据研究中心主任、教授、博士生导师。
  9. linux 开机启动项管理
  10. 2016CCPC东北地区大学生程序设计竞赛题解
  11. python标准库os中的方法startfile_如何使用Python 打开exel等各种文件或者应用,就用:os.startfile...
  12. Access2010中文版入门与实例教程(奋斗的小鸟)_PDF 电子书
  13. Python程序设计实验——1.尼姆游戏
  14. yml格式(list)
  15. 我的关于 **Mermaid** 语法
  16. steam linux安装目录在哪,如何在Mac(以及Windows / Linux)上重新安装Steam游戏
  17. Android中控件设置英文文本内容时区分大小写
  18. 在ppt中插入html,PPT页面中插入浏览器方法 PPT中插入浏览器教程-PPT家园
  19. 量化分析入门7:获取多支股票的收盘价
  20. Gitlab CI/CD中的yml遇到的错误分析含解决方法(全)

热门文章

  1. ABP源码分析三十六:ABP.Web.Api
  2. 整合mybatis3.2.2跟spring3.0.1
  3. slf4j 与log4j 日志管理
  4. Centos7 安装Docker(v2021 version 20.10.5) 并通过docker-compose运行TiDB集群
  5. 面试官系统精讲Java源码及大厂真题 - 43 ThreadLocal 源码解析
  6. 面试官系统精讲Java源码及大厂真题 - 36 从容不迫:重写锁的设计结构和细节
  7. Docker安装FireBird数据库
  8. Fedora/RedHat安装Mysql8.0
  9. 【VSCode - Vetur 插件报错】Cannot find module ‘XXX‘ or its corresponding type declarations.Vetur(2307)
  10. 安装EXSI遇到No Network Adapters的解决方案