3.6 Left and Right Inverses; Pseudoinverse 閱讀筆記
左逆, 右逆, 偽逆
reference的內容為唯一教程, 接下來的內容僅為本人的課後感悟, 對他人或無法起到任何指導作用.
Reference
- Course website: Left and Right Inverses; Pseudoinverse | Linear Algebra | Mathematics | MIT OpenCourseWare
- Course video: 【完整版-麻省理工-線性代數】全34講 配套教材_嗶哩嗶哩_bilibili
-
Course summary: Lecture 33: Left and right inverses; pseudoinverse (mit.edu)
- Extra reading: MIT—線性代數筆記 33 左右逆和偽逆 - 知乎 (zhihu.com)
最後一部分是左逆, 右逆, 和偽逆. 書上沒找到, Lecture 講的也很快, 很粗糙. 到最後淪為掉包.
2-Sided Inverse
對 \(r = m = n\) 的矩陣 \(A\), 有:
\[A A^{-1} = I = A^{-1} A \]Left Inverse
對 \(r = n\) 的矩陣 \(A\), 有 \(\text{rank}(A^{\mathrm{T}}A)=n\), 為 n 階可逆方陣. 於是有 $(A{\mathrm{T}}A){-1}(A^{\mathrm{T}}A) = I \Rightarrow A_{\text{left}}^{-1}A=I $. 於是定義左逆:
此時還有:
\[A A_{\text{left}}^{-1} = A (A^{\mathrm{T}}A)^{-1}A^{\mathrm{T}} = P_{m \times m} \]將 \(\mathbb{R}^{m}\) 投影到 \(C(A)\). 而且 \(A_{\text{left}}^{-1}\) 是距離 \(AM=I\) 最近的解.
Right Inverse
對 \(r = m\) 的矩陣 \(A\), 有 \(\text{rank}(AA^{\mathrm{T}})=m\)
此時還有:
\[A_{\text{right}}^{-1}A = A^{\mathrm{T}}(AA^{\mathrm{T}})^{-1}A = P_{n \times n} \]將 \(\mathbb{R}^{n}\) 投影到 \(C(A)\). 而且 \(A_{\text{right}}^{-1}\) 是距離 \(MA=I\) 最近的解.
Pseudoinverse
How It Works?
再次扒下來別人畫的一個圖:
觀察此圖, 行空間的向量經過 \(A \bm{x}\) 來到列空間, 而列空間的向量經過 \(A^{-1}\bm{y}\) 回到行空間. 行空間和列空間的秩都為 \(r\), 滿足一一對映, 互不重疊. 如果線性變換限制在行空間和列空間之間, \(A\) 一定是可逆的, 把"逆"矩陣記作 \(A^+\).
但是很不幸, 有零空間的存在, 從零空間一個對映 \(A \bm{x} = 0\), 再返回去, 難道有向量左乘零向量能回到 \(\bm{x}\) 嗎? 不能, 因此不可逆. 反方向也一樣. 正因為零空間的存在, 導致不可逆.
因此偽逆就是找行空間與列空間之間的一一對映, 至於零空間就不管了, 愛咋咋地. 不過現在有個問題需要證明, 為啥行空間與列空間一一對映呢?
Bijection Proof
複習一下離散的知識. 設函式 \(f:A->B\)
- 證明單射:證明當 \(x≠y\) 時,\(f(x)≠f(y)\)
- 證明滿射:證明對於所有的 \(b∈B\),存在 \(a∈A\),使得 \(f(a)=b\)
- 證明雙射:證明單射和滿射
1. 先證明滿射:
任意一個列空間的向量 \(\bm{b}\), 都是列向量的線性組合, 線性組合等價於矩陣乘法, 也就是說任何一個列空間的向量都在 \(A \bm{x}\) 張成的空間內, 因此 \(A \bm{x} = \bm{b}\) 必有解.
2. 再證明雙射:
即如果 \(\bm{x}, \bm{y} \in C(A^{\mathrm{T}})\), \(x \neq y\). 則 \(A \bm{x} \neq A \bm{y}\).
反證法, 假設有 \(A \bm{x} = A \bm{y}\), 則 \(A (\bm{x}-\bm{y}) = \boldsymbol{0}\). 而 \(\bm{x}-\bm{y} \in C(A^{\mathrm{T}})\) (運算封閉性), \(\bm{x}-\bm{y}\) 還是一個零解所以在 \(N(A)\) 內. 零空間和行空間的交集只有零向量, 於是 \(\bm{x}-\bm{y}=\boldsymbol{0}\), 即 \(\bm{x}=\bm{y}\), 矛盾. 因此原假設成立, 雙射成立.
於是一一對映的證明完成!
Calculation
求偽逆矩陣 \(A^+\) 的一個方法是利用奇異值分解 \(A=U\Sigma V^{\mathrm{T}}\), 其中對角陣 \(\Sigma\) 是由矩陣奇異值排列在對角線上構成的 \(m \times n\) 矩陣, 其秩為 \(r\). 則偽逆矩陣 \(A^+\) 為 \(n \times m\) 矩陣, 矩陣的秩也為 \(r\).
\(U\) 和 \(V\) 都是可逆的, 而 \(\Sigma\) 不可逆, 問題轉變為求 \(\Sigma\) 的偽逆.
這裡面 \(\Sigma=\left[\begin{array}{c c c|c}\sigma_1&&&\\&\ddots&&\\&&\sigma_r&\\\hline&&&\begin{bmatrix}0\end{bmatrix}\end{array}\right]\), 對角線非零的部分來自\(A^{\mathrm{T}}A,\ AA^{\mathrm{T}}\)比較好的部分, 剩下的來自(左)零空間.
而 \(\Sigma\) 矩陣的偽逆 \(\Sigma^+=\left[\begin{array}{c c c|c}\frac{1}{\sigma_1}&&&\\&\ddots&&\\&&\frac{1}{\sigma_r}&\\\hline&&&\begin{bmatrix}0\end{bmatrix}\end{array}\right]\). 這裡的逆和偽逆 左上角. 右上角, 左下角 三個部分必須是對角陣和兩個零陣, 這樣方可保證行空間與列空間之間一一對映. 右下角 代表零空間們, 可以任取, 但是通常也是零陣. 偽逆矩陣和 \(A^+\) 維度一樣, 是一個 \(n\times m\) 矩陣.
\[\Sigma\Sigma^+=\left[\begin{array}{c c c|c}1&&&\\&\ddots&&\\&&1&\\\hline&&&\begin{bmatrix}0\end{bmatrix}\end{array}\right]_{m\times m}, \Sigma^+\Sigma=\left[\begin{array}{c c c|c}1&&&\\&\ddots&&\\&&1&\\\hline&&&\begin{bmatrix}0\end{bmatrix}\end{array}\right]_{n\times n} \]觀察 \(\Sigma\Sigma^+\) 和 \(\Sigma^+\Sigma\) 不難發現, \(\Sigma\Sigma^+\) 是將向量投影到列空間上的投影矩陣, 而 \(\Sigma^+\Sigma\) 是將向量投影到行空間上的投影矩陣. 我們不論是左乘還是右乘偽逆, 得到的不是單位矩陣, 而是投影矩陣, 該投影將向量帶入比較好的空間 (行空間和列空間, 而不是(左)零空間).
\(A\) 的偽逆則為:
\[A^+=V\Sigma^+U^{\mathrm{T}} \]