线性代数与矩阵之逆矩阵

线性代数与矩阵之逆矩阵

逆矩阵,是线性代数和矩阵分析中非常常见也是非常关键的一个问题。本笔记将根据自己常遇到的逆矩阵相关问题,整理有关逆矩阵定义、常用求法、存在条件以及常用性质等相关内容,并对广义逆做简单介绍。

逆矩阵

逆矩阵(inverse matrix),又称乘法反方阵、反矩阵。在线性代数中,给定一个\(n\)阶方阵\(\mathbf {A}\),若存在一\(n\)阶方阵\(\mathbf{B}\),使得\(\mathbf{AB}=\mathbf{BA}=\mathbf{I}_n\),其中\(\mathbf{I}_n\)\(n\)阶单位矩阵,则称\(\mathbf{A}\)是可逆的,且\(\mathbf{B}\)\(\mathbf{A}\)逆矩阵,记作\(\mathbf {A} ^{-1}\)

注意:我们在谈论一般的逆矩阵时只针对方阵,非方阵不存在逆矩阵,但是可以有广义逆矩阵。

可逆矩阵:如果\(A\)有逆矩阵,我们称为可逆矩阵,或非奇异矩阵。不可逆的矩阵也叫做奇异矩阵。

补充了解:广义逆

广义逆(Generalized inverse),是线性代数中针对矩阵的一种运算。一个矩阵\(A\)的广义逆叫做\(A\)的广义逆阵,是指具有部分逆矩阵的特性,但是不一定具有逆矩阵的所有特性的另一矩阵。假设一矩阵\(A\in \mathbb {R} ^{n\times m}\)及另一矩阵\(A^{\mathrm {g} }\in \mathbb {R} ^{m\times n}\),若\(A^{\mathrm {g} }\)满足\(AA^{\mathrm {g} }A=A\),则\(A^{\mathrm {g} }\)即为\(A\)的广义逆阵。

广义逆也称为伪逆(pseudoinverse),有些时候,伪逆特指摩尔-彭若斯广义逆。此外,还有针对非方阵的单边逆矩阵,如左逆矩阵、右逆矩阵等。

逆矩阵存在条件

矩阵\(A_{n\times n}\)可逆的核心是不能降维,即\(A_{n\times n}\)必须\(n\)维空间的一个表示。其等效表述有:

  • \(\det(A)\neq 0\)。行列式不为0,表明\(n\)维体积不等于0,若有一个维度消失,那么其高维体积必是0。
  • \(\mathrm{Rank}(A)=n\)。这个好理解,矩阵的秩就是可描述空间的维度。
  • 存在初等变换矩阵\(P\),使得\(PA=I\)。我们知道初等变换不会增加维度,而单位矩阵\(I\)的维度是\(n\),这也意味着矩阵\(A,I\)秩相等。
  • \(A\)的所有特征值都不为0。特征值等效于该矩阵\(n\)维特征基的尺度变换,如果其中某个特征值为0,必然使得该特征向量所在维度坍缩,从而降维。
  • 齐次线性方程组\(Ax=0\)仅有零解或非齐次线性方程组\(Ax=b\)有唯一解。零空间维0维,等效于列空间为\(n\)维。
  • \(A\)的行(列)向量组线性无关。最大线性无关组中的向量个数即为空间维数。
  • 任一\(n\)维向量可由\(A\)的行(列)向量组线性表示。这表明\(A\)的最大线性无关组至少为\(n\)
  • \(A\)可表示成有限个初等矩阵的乘积。

我们在这一小结,开头说了可逆的核心是不能降维,这又是什么理由呢?从变换的角度可逆矩阵是将\(n\)维空间中点从一个位置,一一对应的变换到另一个位置。其中不能有多个点变换到同一个点上(通常是降维),也不能有一个点变换到多个点情况(这个一般不会)。当多个点变换到同一个点上时,我们无法从变换后的点(像)精确、唯一的找到到底原来时哪一个点(原)变过来的,也就意味着无法找到一个变换方法把像点变回去,这就是不可逆的变换,即为不可逆矩阵。

逆矩阵的求法

除了使用定义求矩阵的逆外,常见的逆矩阵的直接求法包含初等变换法伴随矩阵法。此外,矩阵分解对矩阵求逆也有很大的帮助。

求逆矩阵一直是矩阵研究中的一个重点问题,也是计算量非常大的一个问题。因此,也有很多逆矩阵的技巧,例如分块矩阵求逆,利用性质求逆等等,我们在本文中不再详述。

初等变换法

求逆矩阵最基本的方法是初等变换法。如果要求方阵\(A\)的逆矩阵,用初等变换法是:

将矩阵\(A\)与单位矩阵\(I\)排成一个新的矩阵\((A \quad I)\),称为增广矩阵,将此增广矩阵\((A\quad I)\)做初等行变换,将它化成\((I\quad B)\)的形式,则 \[B=A^{-1}\]

举个例子。

例1:求矩阵\(A\)的逆矩阵。 \[A= \begin{bmatrix} 1&0&-2\\ -3&1&4\\ 2&-3&4\end{bmatrix} \] 这是一个三阶的矩阵,最简便有效的方法是初等变换法。我们将矩阵与单位矩阵排在一起,然后做初等变换。 \[\begin{aligned}(A\quad I)&=\begin{bmatrix} 1&0&-2&\vdots&1&0&0\\ -3&1&4 &\vdots& 0&1&0\\ 2&-3&4 &\vdots& 0&0&1\end{bmatrix}\sim \begin{bmatrix} 1&0&-2&\vdots&1&0&0\\ 0&1&-2 &\vdots& 3&1&0\\ 0&-3&8 &\vdots& -2&0&1\end{bmatrix}\\ &\sim \begin{bmatrix} 1&0&-2&\vdots&1&0&0\\ 0&1&-2 &\vdots& 3&1&0\\ 0&0&2 &\vdots& 7&3&1\end{bmatrix}\sim \begin{bmatrix} 1&0&0&\vdots&8&3&1\\ 0&1&0 &\vdots& 10&4&1\\ 0&0&2 &\vdots& 7&3&1\end{bmatrix}\\&\sim \begin{bmatrix} 1&0&0&\vdots&8&3&1\\ 0&1&0 &\vdots& 10&4&1\\ 0&0&1 &\vdots& \frac{7}{2}&\frac{3}{2}&\frac{1}{2}\end{bmatrix} \end{aligned}\]

所以我们得到

\[A^{-1}= \begin{bmatrix} 8&3&1\\ 10&4&1\\\frac{7}{2}&\frac{3}{2}&\frac{1}{2}\end{bmatrix} \]

我们再来看一个四阶矩阵的逆矩阵。

例2:求矩阵\(A\)的逆矩阵。 \[A=\begin{bmatrix}1&2&3&4\\ 2&3&1&2\\ 1&1&1&-1\\ 1&0&-2&-6\end{bmatrix}\] 我们将下述矩阵做初等变换

\[ \begin{aligned} (A\quad I)&= \begin{bmatrix}1&2&3&4 &\vdots &1&0&0&0\\ 2&3&1&2 &\vdots &0&1&0&0\\ 1&1&1&-1 &\vdots &0&0&1&0\\ 1&0&-2&-6 &\vdots &0&0&0&1\end{bmatrix}\sim \begin{bmatrix} 1&0&-2&-6 &\vdots &0&0&0&1\\ 2&3&1&2 &\vdots &0&1&0&0\\ 1&1&1&-1 &\vdots &0&0&1&0\\ 1&2&3&4 &\vdots &1&0&0&0 \end{bmatrix} \\& \sim \begin{bmatrix} 1&0&-2&-6 &\vdots &0&0&0&1\\ 0&3&5&14 &\vdots &0&1&0&-2\\ 0&1&3&5 &\vdots &0&0&1&-1\\ 0&2&5&10 &\vdots &1&0&0&-1 \end{bmatrix}\sim \begin{bmatrix} 1&0&-2&-6 &\vdots &0&0&0&1\\ 0&1&3&5 &\vdots &0&0&1&-1 \\ 0&3&5&14 &\vdots &0&1&0&-2 \\ 0&2&5&10 &\vdots &1&0&0&-1 \end{bmatrix}\\&\sim \begin{bmatrix} 1&0&-2&-6 &\vdots &0&0&0&1\\ 0&1&3&5 &\vdots &0&0&1&-1 \\ 0&0&-4&-1 &\vdots &0&1&-3&1 \\ 0&0&-1&0 &\vdots &1&0&-2&1 \end{bmatrix}\sim \begin{bmatrix} 1&0&-2&-6 &\vdots &0&0&0&1\\ 0&1&3&5 &\vdots &0&0&1&-1 \\ 0&0&-1&0 &\vdots &1&0&-2&1 \\ 0&0&-4&-1 &\vdots &0&1&-3&1 \end{bmatrix}\\&\sim \begin{bmatrix} 1&0&-2&-6 &\vdots &0&0&0&1\\ 0&1&3&5 &\vdots &0&0&1&-1 \\ 0&0&-1&0 &\vdots &1&0&-2&1 \\ 0&0&0&-1 &\vdots &-4&1&5&-3 \end{bmatrix}\sim \begin{bmatrix} 1&0&-2&0 &\vdots &24&-6&-30&19\\ 0&1&3&0 &\vdots &-20&5&26&-16 \\ 0&0&-1&0 &\vdots &1&0&-2&1 \\ 0&0&0&-1 &\vdots &-4&1&5&-3 \end{bmatrix} \\ &\sim \begin{bmatrix} 1&0&0&0 &\vdots &22&-6&-26&17\\ 0&1&0&0 &\vdots &-17&5&20&-13 \\ 0&0&-1&0 &\vdots &1&0&-2&1 \\ 0&0&0&-1 &\vdots &-4&1&5&-3 \end{bmatrix}\sim \begin{bmatrix} 1&0&0&0 &\vdots &22&-6&-26&17\\ 0&1&0&0 &\vdots &-17&5&20&-13 \\ 0&0&1&0 &\vdots &-1&0&2&-1 \\ 0&0&0&1 &\vdots &4&-1&-5&3 \end{bmatrix} \end{aligned}\]

所以,我们得到 \[A^{-1}= \begin{bmatrix} 22&-6&-26&17\\ -17&5&20&-13 \\ -1&0&2&-1 \\ 4&-1&-5&3 \end{bmatrix} \]

伴随矩阵求逆矩阵

用伴随矩阵求逆的公式很简单: \[A^{-1}=\frac{1}{\det(A)}A^\ast=\frac{1}{\det(A)}C^T\] 其中,\(\det(A)\)表示矩阵\(A\)的行列式,\(A^\ast\)表示伴随矩阵,\(C\)表示余子矩阵。显然\(C^T=A^\ast\)

矩阵的行列式我们都知道,那么余子矩阵和伴随矩阵又是什么呢?我们接下来介绍相关内容。首先,从代数余子式开始。

元素\(a_{ij}\)代数余子式:在矩阵\(A_{n\times n}\)所对应的\(n\)阶行列式中,划去元素\(a_{ij}\)所在的第\(i\)行与第\(j\)列的元素,剩下的元素不改变原来的顺序所构成的n-1阶行列式称为元素\(a_{ij}\)的余子式。数学表示上计作\(M_{ij}\)\(a_{ij}\)代数余子式\(c_{ij}= (-1)^{i+j} M_{ij}\)

余子式和代数余子式都是\(n-1\)维行列式,也是一个简简单单的数字。区别就在于有没有乘以\((-1)^{i+j}\)

例如对矩阵 \[\begin{bmatrix}\,\,\,1&4&7\\\,\,\,3&0&5\\-1&9&\!11\\\end{bmatrix}\] 要计算代数余子式\(c_{23}\)。首先计算余子式\(M_{23}\),也就是原矩阵去掉第2行和第3列后的子矩阵的行列式: \[\begin{vmatrix}\,\,1&4&\Box \,\\\,\Box &\Box &\Box \,\\-1&9&\Box \,\\\end{vmatrix},即\begin{vmatrix}\,\,\,1&4\,\\-1&9\,\\\end{vmatrix}=9-(-4)=13\] 因此,\(c_{23}\)等于\((-1)^{2+3}M_{23}=-13\)

\(A\)的余子矩阵是指将\(A\)\((i, j)\)项代数余子式\(c_{ij}\)摆在第i行第j列所得到的矩阵,记为\(C\)\[C=\begin{bmatrix}\,\,c_{11}&\dotsb&c_{1n} \,\\\,\vdots &\vdots &\vdots \,\\c_{n1}&\dotsb&c_{nn} \,\\\end{bmatrix}\] 其中,\(c_{ij}\)是元素\(a_{ij}\)的代数余子式

余子矩阵\(C\)转置矩阵称为\(A\)的伴随矩阵\(A^\ast\)\[ A^\ast=C^T \] 伴随矩阵与逆矩阵联系密切,并且当A可逆时可以用来计算它的逆矩阵。 \[A^{-1}=\frac{1}{\det(A)}A^\ast=\frac{1}{\det(A)}C^T\]

例3:设\(A=A=\begin{pmatrix}2&3&4\\ 2&1&1\\ -1&1&2\end{pmatrix}\),求\(A^{-1}\)

我们先求行列式: \[ |A|=\begin{vmatrix}2&3&4\\ 2&1&1\\ -1&1&2\end{vmatrix}=\begin{vmatrix}0&5&8\\ 0&3&5\\ -1&1&2\end{vmatrix}=(-1)(-1)^{3+1}\begin{vmatrix}5&8\\ 3&5\end{vmatrix}=-1 \] 所以矩阵可逆。现在我们来求伴随矩阵。 \[ c_{11}=\begin{vmatrix}1&1\\1&2\end{vmatrix}=1,\quad c_{12}=(-1)^{1+2}\begin{vmatrix}2&1\\ -1&2\end{vmatrix}=-5,\quad c_{13}=\begin{vmatrix}2&1\\-1&1\end{vmatrix}=3\\ c_{21}=(-1)^{2+1}\begin{vmatrix}3&4\\1&2\end{vmatrix}=-2,\quad c_{22}=\begin{vmatrix}2&4\\ -1&2\end{vmatrix}=8,\quad c_{23}=(-1)^{2+3}=\begin{vmatrix}2&2\\-1&1\end{vmatrix}=-5\\ c_{31}=\begin{vmatrix}3&4\\1&1\end{vmatrix}=-1,\quad c_{32}=(-1)^{3+2}\begin{vmatrix}2&4\\ 2&1\end{vmatrix}=6,\quad c_{33}=\begin{vmatrix}2&3\\2&1\end{vmatrix}=-4\\ C=\begin{pmatrix}1&-5&3\\ -2&8&-5\\ -1&6&-4\end{pmatrix} \] 所以 \[ A^\ast=C^T=\begin{pmatrix}1&-2&-1\\ -5&8&6\\ 3&-5&-4\end{pmatrix}\\ A^{-1}=\frac{1}{|A|}A^*=-1\begin{pmatrix}1&-2&-1\\ -5&8&6\\ 3&-5&-4\end{pmatrix}=\begin{pmatrix}-1&2&1\\ 5&-8&-6\\ -3&5&4\end{pmatrix} \]

矩阵分解法

矩阵分解是矩阵求逆非常有效的方式,可以根据不同的分解方式衍生出不同的求逆公式。我们下面列出几种矩阵分解的求逆公式。

  • LU分解求逆:\(A=LU, A^{-1}=U^{-1}L^{-1}\),由于三角矩阵逆容易求,由此简化了求逆计算。
  • QR分解求逆:\(A=QR, A^{-1}=R^{-1}Q^{T}\),其中两个矩阵分别为正交矩阵\(Q\)和上三角矩阵\(R\)。正交矩阵的逆等于转置。
  • SVD分解求逆:\(A=UDV^T, A^{-1}=VD^{-1}U^T\),其中\(U,V\)为正交矩阵、\(D\)为对角矩阵。正交矩阵的逆等于转置。对角矩阵逆为各个元素倒数。

当然,矩阵分解的具体步骤超出了本文的叙述范围,需要了解的读者可以自行查找矩阵分解的相关内容。

特殊矩阵的逆

我们知道矩阵的初等变换有三种,

  1. 换行(列)变换:交换两行(列)。
  2. 倍法变换:将行列式的某一行(列)的所有元素同乘以数k。
  3. 消法变换:把行列式的某一行(列)的所有元素乘以一个数k并加到另一行(列)的对应元素上。

而这三种变换分别对应了三种矩阵,即对角矩阵、置换矩阵和消元矩阵。巧的是,这三种矩阵的逆矩阵都有十分简便的求法。以下分别说明。

对角矩阵的逆

对角矩阵的逆矩阵是最容易、直观的,即对角元素取倒数即可。 \[ \Lambda=\begin{bmatrix} a_{11}&0&\dotsb&0\\0&a_{22}&\dotsb&0\\\vdots&\vdots&\ddots&\vdots\\0&0&\dotsb&a_{nn} \end{bmatrix}\Rightarrow \Lambda^{-1}=\begin{bmatrix} \frac{1}{a_{11}}&0&\dotsb&0\\0&\frac{1}{a_{22}}&\dotsb&0\\\vdots&\vdots&\ddots&\vdots\\0&0&\dotsb&\frac{1}{a_{nn}} \end{bmatrix} \] 因为对角矩阵对应线性变换中的缩放变换,右乘对应相应列的缩放,左乘对应相应行的缩放。其逆矩阵就相当于把缩放的倍数变回来,即缩放大小的倒数。

正交矩阵的逆

由于正交矩阵定义为\(QQ^T=I\),所以显然有: \[ Q^{-1}=Q^T \] 利用正交矩阵的逆可以快速计算置换矩阵(permutation matrix)的逆矩阵。

置换矩阵:是一种系数只由0和1组成的方块矩阵。置换矩阵的每一行和每一列都恰好有一个1,其余元素都是0。

在线性代数中,每个n阶的置换矩阵都代表了一个对n个元素(n维空间的基)的置换。当一个矩阵乘上一个置换矩阵时,所得到的是原来矩阵的横行(置换矩阵在左)或纵列(置换矩阵在右)经过置换后得到的矩阵。一个置换矩阵\(P_π\)必然是正交矩阵(即满足\(P_{{\pi }}P_{{\pi }}^{{T}}=I\)),并且它的逆也是置换矩阵: \[P_{{\pi }}^{{-1}}=P_{{\pi ^{{-1}}}}=P_{{\pi }}^{{T}}\]

分块矩阵的逆

分块矩阵逆的两种常用情形如下,分别是上三角分块矩阵和下三角分块矩阵。其他分块模式需要考虑各分块是否可逆,具体可参见维基百科:分块矩阵求逆\[ U=\begin{bmatrix}A&C\\0&B\end{bmatrix}\Rightarrow U^{-1}=\begin{bmatrix}A^{-1}&-A^{-1}CB^{-1}\\0&B^{-1}\end{bmatrix}\\ L=\begin{bmatrix}A&0\\C&B\end{bmatrix}\Rightarrow L^{-1}=\begin{bmatrix}A^{-1}&0\\-B^{-1}CA^{-1}&B^{-1}\end{bmatrix}\\ \] 在初等变换中的消法变换(只考虑一次消去一个行或列)在消去特定行(列)其他元素时,如果按照从上到下的顺序消元,那么每一个消元矩阵都是一个下三角矩阵。虽然消元矩阵不完全符合上面给出的两个分块矩阵求逆公式,但是可以根据维基百科中的其他公式求出:消元矩阵\(C\)的逆为对角线元素不变,其他元素取反

从线性方程组消元的角度可以很快理解这个逆的,消去的元素需要取反再加回来,即能恢复原样。

逆矩阵的性质

  • 若矩阵\(A\)存在逆矩阵\(A^{-1}\),则\(A^{-1}\)唯一。反证法可得。
  • \((A^{-1})^{-1}=A\),显然。
  • \((kA)^{-1}=k^{-1}A^{-1}\),其中\(k\)是常数。显然。
  • \(\det(A^{-1})=(\det(A))^{-1}\)。行列式可以看做是有向面积或体积的概念在一般的欧几里得空间中的推广。或者说,在欧几里得空间中,行列式描述的是一个线性变换对“体积”所造成的影响。因此,\(A^{-1}\)相当于是将体积变换回去,导致其行列式为原来的倒数。
  • \((A_1A_2\dotsb A_k)^{-1}=A_k^{-1}\dotsb A_2^{-1}A_1^{-1}\),矩阵乘法结合律+逆矩阵唯一性可证。特别地,若矩阵\(A_1=A_2=\dotsb=A_n\),有\((A^n)^{-1}=(A^{-1})^n\)
  • 矩阵转置的逆矩阵。\((A^T)^{-1}=(A^{-1})^T\)。注意,转置和求逆可交换不像是指数的相互交换。其可交换性是一种美妙的巧合。

证明:矩阵求逆、转置的可交换性。 \[ AA^{-1}=I\\ (AA^{-1})^T=I^T=I\\ \Rightarrow (A^{-1})^TA^T=I\\ \Rightarrow (A^T)^{-1}=(A^{-1})^T \]