Moore-Penrose 偽逆矩陣

本文的閱讀等級:高級

A 為一個 n\times n 階矩陣,且 \hbox{rank}A=n,則 A 稱為滿秩 (full rank),此時存在唯一一個 n\times n 階矩陣 X 使得 AX=XA=I_n,我們稱 XA 的逆矩陣或反矩陣 (inverse),記為 A^{-1}。方陣的逆矩陣如何延伸推廣至 m\times n 階矩陣 A?最直接的方法是求一個 n\times m 階矩陣 X 使 AX-I_m 越接近零矩陣越好。這個概念可具體化為下列最佳化問題:

\displaystyle  \min_{X}\Vert AX-I_m\Vert_F

其中 \Vert\cdot\Vert_F 表示 Frobenius 範數 (見“矩陣範數”)。為了獲得唯一解,我們另主張 X 必須具有最小的 Frobenius 範數。將 X 以行向量 (column vector) 表示為 X=\begin{bmatrix}  \mathbf{x}_1&\cdots&\mathbf{x}_m  \end{bmatrix},則

\displaystyle  \Vert AX-I_m\Vert^2_F=\sum_{j=1}^m\Vert A\mathbf{x}_j-\mathbf{e}_j\Vert^2

其中 \mathbf{e}_j 是歐幾里得空間 \mathbb{C}^m 的第 j 個標準單位向量 (第 j 元為 1,其餘元為 0)。上述矩陣最佳化問題可拆解成 m 個獨立且型態相同的最小平方近似問題 (見“極小範數解”):

\displaystyle  \min_{\mathbf{x}_j\in\mathbb{C}^n}\Vert A\mathbf{x}_j-\mathbf{e}_j\Vert,~~~j=1,\ldots,m

解法如下:設 A 的奇異值分解為 A=U\Sigma V^\ast,其中 Um\times m 階么正 (unitary) 矩陣,U^\ast=U^{-1}Vn\times n 階么正矩陣,V^\ast=V^{-1},且 \Sigma=\hbox{diag}(\sigma_1,\ldots,\sigma_r,0,\ldots,0)m\times n 階對角矩陣,\sigma_1\ge\cdots\ge\sigma_r>0 為非零奇異值 (見“奇異值分解 (SVD)”)。具有極小長度的最小平方近似解 (或稱極小範數解) 可用奇異值分解表達如下 (推導過程見“偽逆矩陣與轉置矩陣的二三事”,Q8):

\displaystyle  \mathbf{x}_j=V\Sigma^{+}U^\ast\mathbf{e}_j,~~~j=1,\ldots,m

其中 \Sigma^+=\hbox{diag}(\sigma_1^{-1},\ldots,\sigma_r^{-1},0,\ldots,0)n\times m 階對角矩陣。合併上面 m 個式子,可得極小 Frobenius 範數的最佳解 X=V\Sigma^+U^\ast,稱為 A 的偽逆矩陣 (pseudoinverse),記為 \displaystyle  A^+=V\Sigma^{+}U^\ast。根據史料[1],偽逆矩陣最早由摩爾 (E. H. Moore) 於公元1920年引介,三十多年後潘洛斯 (Roger Penrose) 於1955年獨立提出相同的想法,後人遂稱之為 Moore-Penrose 偽逆矩陣。

 
定義

潘洛斯並未給出奇異值分解衍生的偽逆矩陣表達式,他採用公理化的定義:給定一個 m\times n 階矩陣 A,下列四個方程式存在唯一解:

  1. AXA=A
  2. XAX=X
  3. (AX)^\ast=AX
  4. (XA)^\ast=XA.

此唯一解即是 A 的偽逆矩陣 A^+。下面是潘洛斯提供的證明[2]。首先我們將上述四個方程式簡化為兩個等價方程式。式 (2) 與 (3) 等價於單一方程式,稱為式 (I):

XX^\ast A^\ast=X

將式3代入式2,X(AX)=X(X^\ast A^\ast)=X,此即式 (I)。相反的,式 (I) 左乘 AAXX^\ast A^\ast=AX,等號左邊是 Hermitian,可推論式 (3) 成立。再將式 (3) 代入式 (I),X(X^\ast A^\ast)=X(AX)=X,此即式 (2)。同樣道理,式 (1) 與 (4) 等價於單一方程式,稱為式 (II):

XAA^\ast=A^\ast

潘洛斯發現如果 X=BA^\ast 滿足式 (II),此解也滿足式 (I)。因為式 (II) 蘊含 (XA)A^\ast=(A^\ast X^\ast)A^\ast=A^\ast,左乘 B 就有 BA^\ast X^\ast A^\ast=BA^\ast,故滿足式 (I)。接下來我們要由式 (II) 解出 X=BA^\ast,也就是解出 BA^\ast AA^\ast=A^\ast。因為 \{A^\ast A,(A^\ast A)^2,(A^\ast A)^3,\ldots\} 不可能總是線性獨立集,可知存在不全為零的數組 c_1,\ldots,c_k 使得

\displaystyle  c_1A^\ast A+c_2(A^\ast A)^2+\cdots+c_k(A^\ast A)^k=0

c_p 是第一個非零係數,且

\displaystyle  B=-\frac{1}{c_p}\left(c_{p+1}I+c_{p+2}A^\ast A+\cdots+c_k(A^\ast A)^{k-p-1}\right)

所以,

\displaystyle  B(A^\ast A)^{p+1}=-\frac{1}{c_p}\left(c_{p+1}(A^\ast A)^{p+1}+c_{p+2}(A^\ast A)^{p+2}+\cdots+c_k(A^\ast A)^{k}\right)=(A^\ast A)^p

重複使用下面兩個性質 (證明見[3]):

\displaystyle\begin{aligned}  BAA^\ast=CAA^\ast~~~&\Rightarrow~~~ BA=CA\\  BA^\ast A=CA^\ast A~~~&\Rightarrow~~~ BA^\ast=CA^\ast,  \end{aligned}

可得

\displaystyle\begin{aligned}  B(A^\ast A)^pA^\ast A=(A^\ast A)^{p-1}A^\ast A~~~&\Rightarrow~~~ B(A^\ast A)^pA^\ast=(A^\ast A)^{p-1}A^\ast\\  &\Rightarrow~~~B(A^\ast A)^p=(A^\ast A)^{p-1}\\  &\vdots\\  &\Rightarrow~~~ BA^\ast AA^\ast A=A^\ast A\\  &\Rightarrow~~~ BA^\ast AA^\ast=A^\ast\end{aligned}

故證明存在一解。

 
接著我們證明僅有唯一解 X 滿足式 (I) 和 (II)。這裡我們補充一個事實:除了式 (I) 和 (II),還有其他等價的表達式。假設 Y 滿足式 (1-4)。將式 (4) 代入式 (2),可得式 (III):

\displaystyle   A^\ast Y^\ast Y=Y

將式 (3) 代入式 (1),可得式 (IV):

\displaystyle   Y^\ast A^\ast A=A

上式等號兩邊取共軛轉置,A^\ast AY=A^\ast。使用以上假設,推得

\displaystyle\begin{aligned}  X&=XX^\ast A^\ast=XX^\ast A^\ast AY=XAY\\  &=XAA^\ast Y^\ast Y=A^\ast Y^\ast Y=Y.\end{aligned}

 
恆等式

將偽逆矩陣 A^+ 代入式 (1-4) 立得下列恆等式:

\displaystyle\begin{aligned}  AA^+A&=A\\  A^+AA^+&=A^+\\  (AA^+)^\ast&=AA^+\\  (A^+A)^\ast&=A^+A  .\end{aligned}

A^+ 代入式 (I),(III),(II),(IV),可得

\displaystyle\begin{aligned}  A^+&=A^+A^{+\ast}A^\ast\\  A^+&=A^\ast A^{+\ast}A^+\\  A^\ast&=A^+AA^\ast\\  A^\ast&=A^\ast AA^+  .\end{aligned}

末兩式取共軛轉置,另得

\displaystyle\begin{aligned}  A&=AA^\ast A^{+\ast}\\  A&=A^{+\ast}A^\ast A  .\end{aligned}

 
表達式

偽逆矩陣 A^+ 有兩種常見的算式。一是前面介紹的奇異值分解 A=U\Sigma V^\ast,則有 A^+=V\Sigma^+U^\ast。另一個是秩分解 (rank decomposition) A=BC,其中 Bm\times r 階矩陣,Cr\times n 階矩陣,且 \hbox{rank}A=\hbox{rank}B=\hbox{rank}C=r (見“秩分解──目視行秩等於列秩”)。秩分解的偽逆矩陣表達式為

\displaystyle  A^+=C^\ast(B^\ast AC^\ast)^{-1}B^\ast=C^\ast(B^\ast BCC^\ast)^{-1}B^\ast=C^\ast(CC^\ast)^{-1}(B^\ast B)^{-1}B^\ast

直接代入計算可驗證奇異值分解式和秩分解式都滿足式 (1-4)。另外,若 \hbox{rank}A=nA 有線性獨立的行向量,則 A^+=(A^\ast A)^{-1}A^\astA^+A=I_n,故 A^+A 的一個左逆矩陣。若 \hbox{rank}A=mA 有線性獨立的列向量,則 A^+=A^\ast(AA^\ast)^{-1}AA^+=I_m,故 A^+A 的一個右逆矩陣 (見“SVD 於剖析線性方程的應用”)。

 
性質

使用偽逆矩陣的奇異值分解表達式、秩分解表達式以及前述恆等式可推得下列性質。這個工作就留給讀者自行完成。

  1. (A^+)^+=A
  2. A^{\ast +}=A^{+\ast}
  3. \hbox{rank}A=\hbox{rank}A^+=\hbox{rank}(A^+A)=\hbox{trace}(A^+A)
  4. A 是可逆矩陣,則 A^+=A^{-1}
  5. (cA)^+=c^+A^+,其中 c^+=c^{-1}c\neq 0c^+=0c=0
  6. (A^\ast A)^+=A^+A^{+\ast}(AA^\ast)^+=A^{+\ast}A^+
  7. A^+=(A^\ast A)^+A^\astA^+=A^\ast(AA^\ast)^+
  8. UV 是么正矩陣,則 (UAV)^+=V^\ast A^+U^\ast
  9. A 是正規矩陣,即 AA^\ast=A^\ast A,則 A^+A=AA^+(A^k)^+=(A^+)^k
  10. A^\ast A=I_nAA^\ast=I_m,則 A^+=A^\ast
  11. Am\times n 階矩陣且 Bn\times p 階矩陣。若 A^\ast A=I_nBB^\ast=I_n,或 \hbox{rank}A=\hbox{rank}B=n,則 (AB)^+=B^+A^+

 
註解
[1] 維基百科:Moore-Penrose pseudoinverse
[2] Roger Penrose 的 A generalized inverse for matrices,Proceedings of the Cambridge Philosophical Society,51期,406–413頁,1955。
[3] 假設 BAA^\ast=CAA^\ast。因為

(BAA^\ast-CAA^\ast)(B-C)^\ast=(BA-CA)(BA-CA)^\ast=0

可知 \hbox{rank}(BA-CA)=\hbox{rank}((BA-CA)(BA-CA)^\ast)=0 (見“利用 Gramian 矩陣證明行秩等於列秩”),故 BA=CA。將 AA^\ast 對調即可證明第二式。

相關閱讀:
Advertisements
本篇發表於 線性代數專欄, 二次型 並標籤為 , , , 。將永久鏈結加入書籤。

3 則回應給 Moore-Penrose 偽逆矩陣

  1. lonewar 說道:

    “另外,若 \hbox{rank}A=n,A 有線性獨立的行向量”,但是A是m*n矩阵,这里是不是应该是“A有线性独立的列向量”啊?

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s