1. 程式人生 > >連載 | 理解線性代數03 Ax = b 無解情形

連載 | 理解線性代數03 Ax = b 無解情形

?wx_fmt=png&wxfrom=5&wx_lazy=1

640.png?wxfrom=5&wx_lazy=1

本篇首先 review 了矩陣的秩和子空間的概念。重點介紹了 Ax = b 無解的情形,較為自然地引入投影的概念,並從投影的角度去理解最小二乘法。

誰也不能隨隨便便成功,它來自徹底的自我管理和毅力。

?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

秩 rank

為了後續討論的方便,先深入理解矩陣的秩。

之前提到過矩陣的秩 (rank)。將主元的個數,稱為矩陣的秩(rank)(定義1)。現在從“向量空間”的角度深入理解矩陣的秩 (rank)。

向量空間 可以用矩陣表示。比如:上篇提到過的矩陣的零空間 N(A)。N(A) 可以表示成 Nullspace Matrix N 的各列的線性組合。

        ?wx_fmt=png

再比如:矩陣的列空間 C(A) 可以表示為 A

 的各列向量線性組合。

既然向量空間可以表示為矩陣各列向量的線性組合,自然想到能否用最少的列來表示 (生成) 這個向量空間 S

向量空間的基 (basis)

向量空間  的 (其中)一組 (basis) (其實就是選擇代表性的向量) 需滿足以下兩個條件:

    1. 基之間線性無關(腦補:線性相關/線性無關)。

    2. 向量空間中的任意向量均可表示為基的線性組合(簡稱:基可以生成 S)。

自然要問:向量空間  S 的基大小是否固定?答案是肯定的。可以這樣理解:

向量空間的 (其中) 一組基:向量空間極大線性無關向量組 (maximal linearly independent system)。

維度:向量空間 的一組基的大小,記為 dim(S)。

類比 (等價關係):

    1. 向量空間  S ⇔ 矩陣 A(列空間)

    2. 向量空間的 basis  ⇔ 矩陣的一組主元列

    3. 向量空間的 dim  ⇔ 矩陣的 rank

相關結論: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

上篇的例子:x n = 2 x 4

        ?wx_fmt=png

rank(A) = dim(C(A)) = 2。

dim(N(A)) = n - dim(C(A)) = 4 - 2 = 2。

注意:

    1. 很多書採用先定義矩陣的行秩和列秩,然後得出行秩=列秩,從而引出矩陣的秩。

    2. 我們的思路:先定義矩陣的秩,然後證明 rank(A) = rank(A^T) (轉置不改變矩陣的秩) 。


矩陣的四個子空間 (續)

綜合前面的結論, 不難得出:

?wx_fmt=png

之前說是“”空間是因為 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. 正交向量:

?wx_fmt=png

等價定義:

?wx_fmt=png

2. 正交空間

?wx_fmt=png

3. 正交補 (orthogonal complement)

?wx_fmt=png

顯然,正交補比正交空間條件更強,把一個大空間劃分成兩個正交的子空間

回到線性方程組的原始形式:

        ?wx_fmt=png

展開得到:

        ?wx_fmt=png

最終得到 (本系列以列向量為正統):

        ?wx_fmt=png

可以看出,(A) 和 (A) 正交補;同理,(A) 和 (A^T) 正交補

Ax = b 無解 CASE

Ax = b 充要條件

上篇說過 Ax = b 的充要條件:b 屬於 A 的列空間。進一步說,b 可以表示為 A 列向量的 (某個) 線性組合。嚴格來說,若指定 的一組基, b 可表示為基的唯一線性組合。

Ax = b 無解 CASE

上篇分析過 Ax = b 是否有解,分為如下四種 CASES。

?wx_fmt=png

對於列滿秩 (含行列滿秩) 的矩陣 A,可能無解。

直觀上也很容易理解,這種矩陣屬於瘦高型矩陣,表示約束條件 (方程組數) 越多,很可能不能滿足所有的條件 (即無解)。

Ax = b 無解怎麼辦 - 投影

既然 b 無法表示出 列向量的線性組合。那麼就去求解最“接近”的那一個。

        ?wx_fmt=png

可以將 b 分為兩部分:  投影 + 誤差。

        ?wx_fmt=png

一些結論與思考:

        ?wx_fmt=png

A^T A 可逆的一個充分條件:A 的各列線性無關。

投影矩陣

投影矩陣都是關聯某個向量空間,即在某個向量空間上的投影。從表示式也可以看出,投影矩陣只和矩陣有關,與 b 無關。

投影矩陣 ?wx_fmt=png 有兩個非常重要的性質:

?wx_fmt=png

物理意義

不難看出,兩個極端的例子:    

        ?wx_fmt=png

        ?wx_fmt=png

?wx_fmt=png

直觀的理解:Ax 肯定屬於 span of A (C(A)), 對比圖中紅色的分解可知,投影后的誤差 e, ||e|| 是最小的。

最小二乘法

最小二乘法可以從各個角度去理解,投影提供了一種自然的方式。

最小二乘法 (Least Squres) 最早是有高斯提出。最小二乘法是為了尋找距離指定點偏差最小的直線 (平面),常常用於曲線擬合。

下面是 直線 和 二維平面 的情形:

        ?wx_fmt=png

例子:尋找距離點(1,1),(2,2),(3,2)偏差最小的直線:y=C+Dt

根據條件羅列方程組:

        ?wx_fmt=png

矩陣形式:

        ?wx_fmt=png

顯然這個方程組無解。只需要計算:

        ?wx_fmt=png

具體解法:

        ?wx_fmt=png

?wx_fmt=png 被稱為:正規方程組(normal equations)。

本文轉載自我師弟的公眾號,在此謝過!

?wx_fmt=png