Null space and column space
Last updated
Last updated
我們接下來可以將 matrix 和 vector 結合運算,我們表達 matrix size 為 m × n 時為
而可以跟他相乘的 vector 的 components 必須要等於 matrix 的 column size
例如: m × y matrix 只能跟 y × n 的 vector 相乘,並且會變成 m × n 的 matrix
舉個例子
我們可以把 matrix A 的兩列視為兩個 row vector ,也就是 column vector 的 Transpose
並且把矩陣相乘的結果表示為 Dot Product
我們也可以把矩陣視為一個一個的 column vector
把矩陣相乘的結果表示為每個 vector 和 xi 的乘積相加的 linear combination
假設有一個 matrix A: m × n,和 vector x 相乘皆為零向量,我們稱之為 homogeneous equation
現在我們想知道所有能夠符合這個 equation 的 x 集合,能不能構成一個 valid 的 subspace ?
答案是可以的,他符合 subspace 的三項條件
x 包含 0向量
x 符合加法封閉 (closure under addition)
x 符合乘法封閉 (closure under scalar multiplication)
我們稱這個 subspace N 為 A 的 NullSpace
我們來試著計算隨便一個 matrix A 他的 nullspace 為何
也就是解決 equation
可以利用 Reduced row echelon form 來解
再轉回 equation
最後得出一個 linear combination,其中 x3 和 x4 可以為任何實數,來拖移兩個向量在 R4 nullspace 移動
也就是這個 nullspace 是由這兩個向量來 span 而成的
其實也可以發現,要求得 N(A) 跟求得 N(rref(A)) 的 nullspace 是一樣的
當 matrix A 為 m × n 時,其 nullspace 一定為 n 個 components 的 vector
得出來的 0 矩陣會有 m 個 components
我們將上面的運算拆出來變成 linear combination 的形式
這時我們思考,若 v1 到 vn 要 linear independence ,那 x1 到 xn 必須都為 0
若 x1 到 xn 都為 0,代表這個 linear combination 只有唯一解
也就是說,A 的 nullspace 在 v1 到 vn 皆為 linear independence 下只有 0 矩陣而已
我們已經知道 m × n 代表 Matrix A 有 n 個 column vector,每個都在 Rm 空間
而 Column space 指的就是由這 n 個 column vector 所 span 的空間
我們也知道 span 出來的空間符合 subspace 的三大條件
我們可以用下面 Set 的方式來思考 Column space
Column space 就是 matrix A 和任何可以與他相乘的 vector x 所生成的所有向量集合
vector x 必須要為 n 個 components 這樣才可以相乘
可以表示成
舉個例子,若向量 b1 不在 A 的 column space 裡,那 Ax = b1 是永遠不會有解的
相反,若向量 b2 他存在於 A 的 column space 裡,那 Ax = b2 將至少會有一個解
現在要找出下面 matrix A 的 column space 和 null space
我們可以非常輕鬆求得他的 column space 等於每個 column vector span 而成的空間
但他是否為這個空間的 basis 呢 ? (要為 basis 必須要 linear independence)
要知道 matrix A 有沒有 linear independence 只要看 null space 是否只有包含 0 向量即可
要求 A 的 null space 等於求 rref(A) 的 null space
將矩陣列回 equation
並且利用 free variables 來表示 null space 空間
至此,我們可以得到 null space 為下,而且並不是只含有 0 向量
所以 A 不為 linear independence,也就是剛剛的 column space 不為 basis
要得到 basis 我們要從剛剛的 column space 刪除多餘的 vectors
透過剛剛求得的 equation,我們知道 x1 和 x2 都可以由 x3 和 x4 組成,所以 x3 和 x4 是多餘的
從上面的例子我們知道兩個 R3 vector 所 span 出來的為三維空間中的一個平面
那我們要怎麼找出平面呢 ?
先找到 normal vector (可以由 (1, 2, 3) 和 (1, 1, 4) 的 Cross product 求得!)
再從任一點向量 (x, y, z) 和 (1, 2, 3) 或 (1, 1, 4) 相減得到一條 躺在該平面上的向量
最後因為該向量跟 normval vector 會垂直,所以 dot product 為 0
以此找到 plane 的 equation
來找 normal vector n
接著代回上面式子
即可得到平面方程式
我們知道,Column space 裡的任何一個解 (vector b) 都應該在該平面上
我們又知道,要解決 Ax=b 可以轉換為 [A|b] 的矩陣來求 reduced row echelon form
要滿足 Ax=b 的 b 為 valid vector,那最後一行的 5x - y - z 必須要等於 0 才行,所以我們得到
https://youtu.be/Zn2K8UIT8r4 (詳細證明)
下面用矛盾證明 subspace 的 basis 所含的 elements 數量皆相同
若把 a1, a2 依序帶入 B set 中取代 b1, b2 ,表面上可以維持 B spans V
而且取代時不可以把原本在 A set 的元素取代掉,因為 A set 的元素之間是 linear independence 的
但是我們知道 m < n , A 又可以表示成 Bm 的延伸
我們知道 A 已經確定是 span V 的最小組合了,但卻又能用 m 個 a 元素來 span V,產生矛盾
因此,不可能有比 basis 更少的元素組合可以 span subspace
而且,basis 也不能有多餘的元素出現在裡面
綜合在一起,同一個 subspace 底下的任何 basis 都擁有一個數量的 elements
我們又將這些 basis 共同擁有的元素數量,稱作 dimension
假設我們要找出 matrix B 的 nullspace
我們知道只要將 B 轉為 reduced row echelon form
再利用 equation 就可以找出 span null space 的向量集
所以 N(B) =
而且這三個向量 linear independent,所以為 N(B) 的 basis
然後因為找到 basis 了,所以 N(B) 的 dimension 為 3,又可以稱作 nullity = 3
🤷♂️ Nullity = reduced row echelon form 的 non-pivot column 數量
我們可以將 matrix A 的 column 分為五等份,而 column space 即為這五個 column 所 span 而成
但我們並不知道他們五個是否 linear independent,即是否為 basis of column space
這邊提供一個方法找出 column space 的 basis 並且得知他的 dimension 也就是 rank
先將 A 化簡為 reduced row echelon form
找到 rref 的 pivot columns
這些 column 對應回 A ,即是 C(A) 的 basis
因為 1, 2, 4 行為 pivot column ,所以對應回 A 的 1, 2, 4 行即為 C(A) 的 basis
🤷♂️ Dimension = reduced row echelon form 的 pivot column 數量
以下解釋了為何 rref(A) 的 pivot column 會等於 C(A) 的 basis
Showing relation between basis cols and pivot cols
Showing that the candidate basis does span C(A)