本篇首先 review 了矩阵的秩和子空间的概念。重点介绍了 Ax = b 无解的情形,较为自然地引入投影的概念,并从投影的角度去理解最小二乘法。
谁也不能随随便便成功,它来自彻底的自我管理和毅力。
为了后续讨论的方便,先深入理解矩阵的秩。
之前提到过矩阵的秩 (rank)。将主元的个数,称为矩阵的秩(rank)(定义1)。现在从“向量空间”的角度深入理解矩阵的秩 (rank)。
向量空间 S 可以用矩阵表示。比如:上篇提到过的矩阵的零空间 N(A)。N(A) 可以表示成 Nullspace Matrix N 的各列的线性组合。
再比如:矩阵的列空间 C(A) 可以表示为 A 的各列向量线性组合。
既然向量空间可以表示为矩阵各列向量的线性组合,自然想到能否用最少的列来表示 (生成) 这个向量空间 S。
向量空间 S 的 (其中)一组基 (basis) (其实就是选择代表性的向量) 需满足以下两个条件:
1. 基之间线性无关(脑补:线性相关/线性无关)。
2. 向量空间中的任意向量均可表示为基的线性组合(简称:基可以生成 S)。
自然要问:向量空间 S 的基大小是否固定?答案是肯定的。可以这样理解:
向量空间的 (其中) 一组基:向量空间极大线性无关向量组 (maximal linearly independent system)。
维度:向量空间 S 的一组基的大小,记为 dim(S)。
类比 (等价关系):
1. 向量空间 S ⇔ 矩阵 A(列空间)
2. 向量空间的 basis ⇔ 矩阵的一组主元列
3. 向量空间的 dim ⇔ 矩阵的 rank
相关结论:m x n
1. rank(A) = 主元个数 = dim(C(A)) (列空间维度)
2. dim(N(A)) = 自由元素个数 = n - rank(A) = n - dim(C(A))
3. dim(C(A)) = 主元个数 = dim(R(A)) = dim(C(A^T))= rank(A)
4. dim(C(A)) + dim(N(A)) = n
5. dim(R(A)) + dim(N(A^T)) = m
上篇的例子:m x n = 2 x 4
rank(A) = dim(C(A)) = 2。
dim(N(A)) = n - dim(C(A)) = 4 - 2 = 2。
注意:
1. 很多书采用先定义矩阵的行秩和列秩,然后得出行秩=列秩,从而引出矩阵的秩。
2. 我们的思路:先定义矩阵的秩,然后证明 rank(A) = rank(A^T) (转置不改变矩阵的秩) 。
综合前面的结论, 不难得出:
之前说是“子”空间是因为 R(A) 和 N(A) 是 R^n 的子空间;C(A) 和 N(A^T) 是 R^m 的子空间。
说是“四个”子空间,其实可以分为两组讨论。R(A) 和 N(A) 一组;C(A) 和 N(A^T) 可以看成 A^T 的行空间和零空间。这两组的交叉在于 dimN(A) = dimC(A)=r。所以,只需要讨论 R(A) 和 N(A) 即可。
1. 正交向量:
等价定义:
2. 正交空间
3. 正交补 (orthogonal complement)
显然,正交补比正交空间条件更强,把一个大空间划分成两个正交的子空间。
回到线性方程组的原始形式:
展开得到:
最终得到 (本系列以列向量为正统):
可以看出,R (A) 和 N (A) 正交补;同理,C (A) 和 N (A^T) 正交补。
Ax = b 充要条件
上篇说过 Ax = b 的充要条件:b 属于 A 的列空间。进一步说,b 可以表示为 A 列向量的 (某个) 线性组合。严格来说,若指定 A 的一组基, b 可表示为基的唯一线性组合。
Ax = b 无解 CASE
上篇分析过 Ax = b 是否有解,分为如下四种 CASES。
对于列满秩 (含行列满秩) 的矩阵 A,可能无解。
直观上也很容易理解,这种矩阵属于瘦高型矩阵,表示约束条件 (方程组数) 越多,很可能不能满足所有的条件 (即无解)。
Ax = b 无解怎么办 - 投影
既然 b 无法表示出 A 列向量的线性组合。那么就去求解最“接近”的那一个。
可以将 b 分为两部分: 投影 + 误差。
一些结论与思考:
A^T A 可逆的一个充分条件:A 的各列线性无关。
投影矩阵
投影矩阵都是关联某个向量空间,即在某个向量空间上的投影。从表达式也可以看出,投影矩阵只和矩阵有关,与 b 无关。
投影矩阵 有两个非常重要的性质:
物理意义
不难看出,两个极端的例子:
直观的理解:Ax 肯定属于 span of A (C(A)), 对比图中红色的分解可知,投影后的误差 e, ||e|| 是最小的。
最小二乘法可以从各个角度去理解,投影提供了一种自然的方式。
最小二乘法 (Least Squres) 最早是有高斯提出。最小二乘法是为了寻找距离指定点偏差最小的直线 (平面),常常用于曲线拟合。
下面是 直线 和 二维平面 的情形:
例子:寻找距离点 ( 1 , 1 ) , ( 2 , 2 ) , ( 3 , 2 ) 偏差最小的直线: y=C+Dt。
根据条件罗列方程组:
矩阵形式:
显然这个方程组无解。只需要计算:
具体解法:
被称为:正规方程组(normal equations)。
本文转载自我师弟的公众号,在此谢过!