二矩陣和的逆矩陣

本文的閱讀等級:中級

大家都曉得若 AB 是同樣尺寸的可逆矩陣,則乘積 AB 的逆矩陣為 (AB)^{-1}=B^{-1}A^{-1}。然而二矩陣和的逆矩陣並不存在一般公式,雖然如此,一些具特殊形式的矩陣和仍具有簡單的逆矩陣公式。若 Am\times m 階,Bn\times n 階,Um\times n 階,Vn\times m階,A+UBV 的逆矩陣公式如下:

(A+UBV)^{-1}=A^{-1}-A^{-1}U(I+BVA^{-1}U)^{-1}BVA^{-1}

上式成立的前提是 AI+BVA^{-1}U 皆為可逆矩陣。若 D=-B^{-1},則有下式:

(A-UD^{-1}V)^{-1}=A^{-1}+A^{-1}U(D-VA^{-1}U)^{-1}VA^{-1}

稱為 Woodbury 矩陣恆等式。再看其他變形,若 A 可逆,A+b\mathbf{u}\mathbf{v}^T 的逆矩陣為

(A+b\mathbf{u}\mathbf{v}^{T})^{-1}=A^{-1}-b(1+b\mathbf{v}^{T}A^{-1}\mathbf{u})^{-1}A^{-1}\mathbf{u}\mathbf{v}^{T}A^{-1}

其中 \mathbf{u}\mathbf{v}^T 為秩─1 (rank-1) 矩陣。

 
究竟這些奇怪的公式當初是怎麼導出來的?它們全部與分塊矩陣 \begin{bmatrix} A&U\\ V&D \end{bmatrix} 的逆矩陣表達式有關,我將推演過程切割成以下幾個子問題 (見“每週問題 March 23, 2009”)。

 
(1) 若 A 可逆,求 WXYZ 使得

\left[\!\! \begin{array}{cc} W & 0 \\ X & I_n\end{array} \!\!\right]\! \left[\!\! \begin{array}{cc} A & U \\ V & D\end{array} \!\!\right]= \left[\!\! \begin{array}{cc} I_m & Y \\ 0 & Z\end{array} \!\!\right]

給出的矩陣方程式其用意在於將分塊矩陣轉換為上三角矩陣,因此不難解出其中的未知分塊。以分塊矩陣乘法展開,得到以下四式:

\begin{aligned} WA&=I_m\\ XA+I_nV&=0\\ WU&=Y\\ XU+I_nD&=Z. \end{aligned}

已知 A 是可逆矩陣,可依序解出

\begin{aligned} W&=A^{-1}\\ X&=-VA^{-1}\\ Y&=A^{-1}U\\ Z&=D-VA^{-1}U. \end{aligned}

 
(2) 若 Z 可逆,求 \left[\!\! \begin{array}{cc} I_m & Y \\ 0 & Z\end{array} \!\!\right] 的逆矩陣。

類似一般矩陣性質,分塊上三角矩陣的逆矩陣仍為分塊上三角矩陣,故考慮

\left[\! \begin{array}{cc} I_m & Y \\ 0 & Z\end{array} \!\right]\! \left[\! \begin{array}{cc} I_m & P \\ 0 & Q\end{array} \!\right]= \left[\! \begin{array}{cc} I_m & 0 \\ 0 & I_n\end{array} \!\right]

展開後,由分塊矩陣的第二行取出等式:

\begin{aligned} I_mP+YQ&=0\\ ZQ&=I_n. \end{aligned}

Z 可逆,便有 Q=Z^{-1}P=-YQ=-YZ^{-1},所求的逆矩陣為

\left[\! \begin{array}{cc} I_m & Y \\ 0 & Z\end{array} \!\right]^{-1}= \left[\! \begin{array}{cc} I_m & -YZ^{-1} \\ 0 & Z^{-1}\end{array} \!\right]

 
(3) 利用 (1) 和 (2) 的結果計算 \left[\! \begin{array}{cc} A & U \\ V & D \end{array}\!\right] 的逆矩陣。為使逆矩陣存在,必須做哪些假設?

由 (1) 可知以下關係式:

\left[\! \begin{array}{cc} A^{-1} & 0 \\ -VA^{-1} & I_n\end{array} \!\right]\! \left[\! \begin{array}{cc} A & U \\ V & D\end{array} \!\right]= \left[\! \begin{array}{cc} I_m & A^{-1}U \\ 0 & D-VA^{-1}U\end{array} \!\right]

利用 (2) 求得之分塊上三角矩陣的逆矩陣公式,將上式同時左乘等號右端矩陣之逆矩陣,可得

\begin{aligned} \left[\!\begin{array}{cc} A & U \\ V & D \end{array}\!\right]^{-1}\! &=\!\left[\!\begin{array}{cc} I_m & A^{-1}U \\ 0 & D-VA^{-1}U \end{array}\!\right]^{-1} \left[\!\begin{array}{cc} A^{-1} & 0 \\ -VA^{-1} & I_n \end{array}\!\right]\\ &=\!\left[\! \begin{array}{cc} I_m & -A^{-1}U(D-VA^{-1}U)^{-1} \\ 0 & (D-VA^{-1}U)^{-1} \end{array}\!\right]\! \left[\! \begin{array}{cc} A^{-1} & 0 \\ -VA^{-1} & I_n \end{array}\!\right] \\ &=\!\left[\! \begin{array}{cc} A^{-1}+A^{-1}U(D-VA^{-1}U)^{-1}VA^{-1} & -A^{-1}U(D-VA^{-1}U)^{-1} \\ -(D-VA^{-1}U)^{-1}VA^{-1} & (D-VA^{-1}U)^{-1} \end{array} \!\right]. \end{aligned}

此式成立的條件是 AD-VA^{-1}U 都是可逆矩陣。

 
(4) 考慮另一種推導分塊矩陣的逆矩陣方法。設

\left[\! \begin{array}{cc} I_m & X^\prime \\ 0 & W^\prime\end{array} \!\right]\! \left[\! \begin{array}{cc} A & U \\ V & D\end{array} \!\right]= \left[\! \begin{array}{cc} Z^\prime & 0 \\ Y^\prime & I_n\end{array} \!\right]

重複問題 (1),(2),(3) 可導出 \left[\! \begin{array}{cc} A & U \\ V & D \end{array}\!\right] 的另一個逆矩陣公式。比較 (3) 與 (4) 得到的兩個公式的 (1,1) 元,可得 A-UD^{-1}V 的逆矩陣公式。

D 是可逆矩陣,重複前題的步驟可得另一分塊逆矩陣,如下:

\left[\!\begin{array}{cc} A & U \\ V & D \end{array}\!\right]^{-1}\!=\! \left[\!\begin{array}{cc} (A-UD^{-1}V)^{-1} & -(A-UD^{-1}V)^{-1}UD^{-1}\\ -D^{-1}V(A-UD^{-1}V)^{-1} & D^{-1}V(A-UD^{-1}V)^{-1}UD^{-1}+D^{-1} \\ \end{array}\!\right]

此式與 (3) 的逆矩陣相等,比較 (1,1) 元立得 Woodbury 矩陣恆等式:

(A-UD^{-1}V)^{-1}=A^{-1}+A^{-1}U(D-VA^{-1}U)^{-1}VA^{-1}

 
(5) 根據 Woodbury 矩陣恆等式, 推導 (A+\mbox{\bf u}\mbox{\bf v}^T)^{-1}

D=-1U=\mbox{\bf u}V=\mbox{\bf v}^T,代入 Woodbury 等式,可得

\begin{aligned} (A+\mbox{\bf u}\mbox{\bf v}^T)^{-1} &=A^{-1}+A^{-1}\mbox{\bf u}(-1-\mbox{\bf v}^TA^{-1} \mbox{\bf u})^{-1}\mbox{\bf v}^TA^{-1}\\ &=A^{-1}-\frac{A^{-1}\mbox{\bf u}\mbox{\bf v}^TA^{-1}} {1+\mbox{\bf v}^TA^{-1}\mbox{\bf u}}. \end{aligned}

上式成立的要件是純量 1+\mbox{\bf v}^TA^{-1}\mbox{\bf u} 不得為零。

 
(6) 根據 Woodbury 矩陣恆等式,證明

(A+UBV)^{-1}=A^{-1}-A^{-1}U(I+BVA^{-1}U)^{-1}BVA^{-1}

B=-D^{-1},亦即 D=-B^{-1},再代入 Woodbury 等式,便有

(A+UBV)^{-1} =A^{-1}-A^{-1}U(B^{-1}+VA^{-1}U)^{-1}VA^{-1}

由等式 B(B^{-1}+VA^{-1}U)=I+BVA^{-1}U,可得 (B^{-1}+VA^{-1}U)^{-1}=(I+BVA^{-1}U)^{-1}B,故

(A+UBV)^{-1}=A^{-1}-A^{-1}U(I+BVA^{-1}U)^{-1}BVA^{-1}

注意此公式假設 AI+BVA^{-1}U 都是可逆矩陣。

 
本文參考:
H. V. Henderson and S. R. Searle, On deriving the inverse of a sum of matrices, SIAM Review, Vol 23, No 1, 53-60, 1981.

相關閱讀:
This entry was posted in 線性方程, 線性代數專欄 and tagged , , , . Bookmark the permalink.

10 則回應給 二矩陣和的逆矩陣

  1. 劉毛毛 說:

    請問老師一個問題
    Woodbury矩陣恆等式的變型
    (A+buv’)^(-1)=A^(-1)-b(1+bv’A^(-1)u)^(-1)A^(-1)uv’A^(-1)
    其中v’為v的轉置矩陣
    (這個式子是從上面數來第四個式子)
    請問這個式子是如何推導出來的?
    或者除了
    “其中uv’為秩─1 (rank-1) 矩陣,因為 rank(uv’)=1″
    這個條件之外還有其他假設
    還是說rank(uv’)=1可以有特殊變換

    我從上面數來第三個式子似乎無法變成第四個式子
    由(I+PQ)^(-1)P=P(I+QP)^(-1)
    轉換後會變成
    (A+buv’)^(-1)=A^(-1)-b(1+bA^(-1)uv’)^(-1)A^(-1)uv’A^(-1)
    後面結果會有不一樣
    苦惱了很久
    謝謝

    • ccjou 說:

      「因為 \mathrm{rank}(uv^T)=1」是一句多餘的話(我已將它刪除)。從 A+UBV 的逆矩陣公式可得 A+b\mathbf{u}\mathbf{v}^T 的逆矩陣公式。設 U=\mathbf{u}B=bV=\mathbf{v}^T 即可,此公式同時指出 1+b\mathbf{v}^TA^{-1}\mathbf{u} 必須不等於0。我不清楚你寫的第二段所指為何。

      • 劉毛毛 說:

        老師,不好意思
        因為對網路不熟悉
        只好將圖貼到facebook上分享

        在代入並轉換後會跟從上面數來的第四式不一樣
        這個網頁中
        http://www.mcs.csueastbay.edu/~malek/TeX/Sherman.pdf
        他是說這是special case
        但我不太了解為什麼可以這樣變換
        打擾了
        謝謝

        • ccjou 說:

          恆等式 P(I+QP)^{-1}=(I+PQ)^{-1}PP 是可逆矩陣,如此等號兩邊同取逆矩陣可得 (I+QP)P^{-1}=P^{-1}(I+PQ)。所以你不可以代入 P=A^{-1}\mathbf{u}Q=\mathbf{v}^T,等號右邊是向量而非方陣。

          • 劉毛毛 說:

            老師,不好意思…
            所以從上數來第四個式子是怎麼來的?
            主要問題是這個
            ((我沒有惡意))

            • 劉毛毛 說:

              補充:
              因為由剛剛老師說的U,V,B代入後
              會出現跟第四式不一樣的式子
              所以我用了I+QP那個恆等式去轉換
              試著把他們變成相同的形式
              但轉變後不一樣

              此時老師說等號右邊是向量
              所以I+QP那個恆等式不能用

              是想問第四個式子是怎麼來的?><""sorry

  2. ccjou 說:

    (A+UBV)^{-1}=A^{-1}-A^{-1}U(I+BVA^{-1}U)^{-1}BVA^{-1},替換 U=\mathbf{u}B=bV=\mathbf{v}^T 可得
    \begin{aligned} (A+\mathbf{u}b\mathbf{v}^T)^{-1}&=A^{-1}-A^{-1}\mathbf{u}(1+b\mathbf{v}^TA^{-1}\mathbf{u})^{-1}b\mathbf{v}^TA^{-1}\\ &=A^{-1}-b(1+b\mathbf{v}^TA^{-1}\mathbf{u})^{-1}A^{-1}\mathbf{u}\mathbf{v}^TA^{-1} \end{aligned}
    因為 b1+b\mathbf{v}^TA^{-1}\mathbf{u} 是純量,可以放在前面。

    • 劉毛毛 說:


      (1+bv’A^(-1)u)^(-1)
      為什麼會變成純量?
      假如如special case中所說的
      v跟u是1*n矩陣,A為n*n矩陣
      bv’A^(-1)u
      v’為(n*1)矩陣
      A^(-1)為(n*n矩陣
      u為(1*n)矩陣
      這三個有辦法相乘嗎?
      還是說這邊的u跟v跟A會有另一種解釋?
      問題很多..不好意思
      謝謝您!

      • ccjou 說:

        前面說過 Am\times m 階,B 是 n\times n 階,Um\times n 階,Vn\times m階。當 n=1I_n+BVA^{-1}U 退化為一純量。

        • 劉毛毛 說:

          太厲害了!!!
          感謝老師!!!
          是我搞錯了,把V跟v的轉換弄錯
          所以在這邊真的是special case才可以轉換成這種類型變化式
          由衷感謝~真的是打擾了!

發表迴響

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

WordPress.com Logo

你正使用 WordPress.com 帳號留言。 登出 / 變更 )

Twitter picture

你正使用 Twitter 帳號留言。 登出 / 變更 )

Facebook照片

你正使用 Facebook 帳號留言。 登出 / 變更 )

Google+ photo

你正使用 Google+ 帳號留言。 登出 / 變更 )

連結到 %s