本讲的主要内容有:
- 投影的概念
- 为什么要进行投影操作
- 最小二乘法的介绍
投影(Projection)
首先再二维平面中直观的看一下投影的概念:

如图,两个不同向的向量 a, b,其中 b 落在 a 的方向上的向量 p 就是 b 在 a 上的投影,其实就是构成一个直角,这跟我们生活中的理解是一样的,从图中,我们有以下的定义和结论:
- 向量 p ,它是向量 a 的一部分,我们用式子 p=xa 表示
- 向量 e,可以用 b−p 表示,即:e=b−p
-
e 与 p 正交,根据上一讲的内容,可以得出:
aTe=0
根据上面 e 的解释,可以有如下过程:
aTe=0⇔aT(b−xa)=0
继续拆分,最终可以得到关于常数 x 的表达式:
x=aTaaTb
又因为 p=xa,代入,得:
p=aataaTb
如果我们将上面的式子继续写成某个矩阵乘 b 的形式,可以得到:
p=P⋅b,P=aTaaaT
至此,我们得到了本讲的一个重要的矩阵 P ,这个矩阵至少形式很有意思,实际上也有很多很好的性质:
- PT=P
- P2=P
目前我们是对二维平面中的向量得出了结论,当然这个结论是通用的,在接下来的内容中就可以到
为什么进行投影操作
在上一讲中,提到了, Ax=b 无解的时候,如何 “解” 的情况,Ax=b 没有解,也就是说 b 不在 A 的列空间里,所以,如果为了尽量减少对原本方程的影响,我们可以将 b 映射到 A 的列空间里, 这样方程就有解了,例如,以三维空间的平面为例:

其中, A 的列空间是一个二维平面,一组基向量为 a1 和 a2 ,b 显然不在平面中,这也就对应着 Ax=b 是无解的,所以我们找到 b 在平面中的投影 p ,使用 p 代替,那么方程有解,并且使得方程与原方程“近似”。
因为 p 在平面中,所以可以使用基向量表示:
p=x1^a1+x2^a2
可以简写为:(两个基向量就可以组成平面)
p=Ax^
接下来考虑到 e 是垂直于平面的,由上一讲的内容可以知道,这个向量正交于平面中的所有向量,所以可以表示为:
{a1T(b−Ax^)=0a2T(b−Ax^)=0,(e=b−Ax^)
将上面的式子写成矩阵乘的形式:
(a1Ta2T)(b−Ax^)=(00)
上面的式子等价于:(第一个矩阵其实就是矩阵A 的每个列向量转置了)
AT(b−Ax^)=0
推导出这一步,可是说很重要,这个方程跟第一块我们得出方程形式是一致的(所以第一部分的结论可以推广),如果我们进一步分析这个方程,可以有这样的结论:
-
e 是在 N(AT) 中的
- e正交于 C(A)
继续拆分上面的方程,并写到方程的两边,可以得到:
ATAx^=ATb⇒x^=(ATA)−1ATb
将上面的结论代入到 p=Ax^ 中,可以得到:
p=Ax^=A(ATA)−1Atb,,记P=A(ATA)−1At
注意这个式子有很多转置还有逆运算,看起来是可以进行化简的,实际上不可以,因为这些矩阵可能不是方阵,也就是说单个来看 A 是没有逆的,所以有必要保留这个形式。
对于:
P=A(ATA)−1At
它的形式非常熟悉,因为我们在第一部分已经推导出了形式一致的结论,并且也符合两个结论:
- PT=P
- P2=P
这个矩阵 P 以及上面的方程 ATAx^=ATb 是之后一些应用的数学依据。
这一部分的过程看起来比较繁琐,实际上只要按照方程一步一步推导,是很容易得出结论的。
最小二乘法(Least Square)
这一讲最后还降到了这个问题,最小二乘法其实就是上面我们得到的几个结论的应用,比如,在拟合一些数据点的时候:

假设有三个数据点(1,1)、(2,2)、(3,2),我们要找到一条直线尽可能地描述这三个点的位置,
设最优直线 : b=C+Dt
也就是:
⎩⎨⎧C+D=1C+2D=2C+3D=2
我们将其写成矩阵乘的形式:
⎝⎛123121⎠⎞(CD)=⎝⎛123⎠⎞
非常显然,这是没有解的,联系这一节我们讲的,也就是对于无解的 Ax=b 找到最优的的“解”
所以,根据结论,直接将原来的方程转化为:
ATAx^=ATb
这个方程是有解并且最优的。
以上~