1289 字
6 分钟
矩阵的可逆性与Sherman-Morrison
2026-04-20
无标签

定义#

对于一个 n×nn \times n 的矩阵 AA,如果存在一个矩阵 A1A^{-1} 满足:

AA1=A1A=InAA^{-1} = A^{-1}A = I_n

其中 InI_nn×nn \times n 的单位矩阵,那么我们称 A1A^{-1}AA 的逆矩阵,AA 是可逆

  • 可逆矩阵又称为非奇异矩阵(nonsingular matrix)或正则矩阵(regular matrix)。、

可逆矩阵的性质#

充要条件#

对于一个 n×nn \times n 的矩阵 AA,以下条件是等价的:

  1. AA 是可逆的。
  2. AA 的行列式 det(A)0\det(A) \neq 0
  3. AA 的秩 rank(A)=n\text{rank}(A) = n
  4. 行/列向量组线性无关。
  5. 零空间只有零向量。Ax=0A\mathbf{x} = \mathbf{0} 只有零解。nullity(A)=0\text{nullity}(A) = \mathbf{0}
  6. 线性方程组 Ax=bA\mathbf{x} = \mathbf{b} 对于任意 b\mathbf{b} 都有唯一解。
  7. AA 的所有特征值均不为零(可正可负可相同)。
  8. AA 可以表示为初等矩阵的乘积,也就是高斯消元一定能把它变成单位矩阵
  9. AA 的行/列最简形式是单位矩阵 InI_n
  10. 伴随矩阵 (A)(A^*) 存在且可逆 A1=1det(A)AA^{-1} = \frac{1}{\det(A)} A^*

充分条件#

AA 满足下面的条件就可逆,但可逆矩阵不一定满足下面的条件:

  1. AA 是正交矩阵:ATA=IA^T A = I
  2. AA 是正定矩阵:对于所有非零向量 x\mathbf{x}xTAx>0\mathbf{x}^T A \mathbf{x} > 0。这时候 AA 对称且特征值全为正数。

必要条件#

AA 可逆,则 AA 满足下面的条件:

  1. AA 对称     \iff A1A^{-1} 对称;AA 正交     \iff A1A^{-1} 正交;AA 正定     \iff A1A^{-1} 正定。
  2. AA 的幂次 AkA^k 也是可逆的,且 (Ak)1=(A1)k(A^k)^{-1} = (A^{-1})^k
  3. A1A^{-1} 的特征值是 AA 的特征值的倒数,且对应特征向量相同。

注意#

可逆和特征分解(相似对角化)之间没有必然联系。

可逆关心的是特征值有没有0,对角化关心的是特征向量有没有线性无关

如下表:

可逆?特征分解?(相似对角化)例子
可逆可对角化A=[2003]A = \begin{bmatrix}2 & 0 \\ 0 & 3\end{bmatrix}
可逆不可对角化A=[1101]A = \begin{bmatrix}1 & 1 \\ 0 & 1\end{bmatrix}
不可逆可对角化A=[0001]A = \begin{bmatrix}0 & 0 \\ 0 & 1\end{bmatrix}
不可逆不可对角化A=[0100]A = \begin{bmatrix}0 & 1 \\ 0 & 0\end{bmatrix}

可逆推不出可对角化 不可逆推不出不可对角化

但若两者同时满足,则

可逆+可对角化     \iff AA 的特征值全不为零 + 几何重数=代数重数

计算矩阵的逆#

手算1:高斯-约旦消元法#

步骤:

  1. 构造增广矩阵 [AIn][A | I_n],其中 InI_nn×nn \times n 的单位矩阵。

  2. 对增广矩阵进行初等行变换,直到左边的 AA 被化为单位矩阵 InI_n。这时,增广矩阵的右边部分就变成了 AA 的逆矩阵 A1A^{-1}

手算2:伴随矩阵法#

伴随矩阵:

adj(A)=[C11C21Cn1C12C22Cn2C1nC2nCnn]adj(A)ij=(1)i+jMij\text{adj}(A) = \begin{bmatrix}C_{11} & C_{21} & \cdots & C_{n1} \\ C_{12} & C_{22} & \cdots & C_{n2} \\ \vdots & \vdots & \ddots & \vdots \\ C_{1n} & C_{2n} & \cdots & C_{nn}\end{bmatrix}\\[1em] \text{或} \quad \text{adj}(A)_{ij} = (-1)^{i+j} M_{ij}

其中 MijM_{ij}AA 中去掉第 ii 行和第 jj 列后得到的 (n1)×(n1)(n-1) \times (n-1) 子矩阵的行列式。称为代数余子式

公式:

A1=1det(A)adj(A)A^{-1} = \frac{1}{\det(A)} \text{adj}(A)

其中 adj(A)\text{adj}(A)AA 的伴随矩阵

手算3:分块矩阵求逆#

TIP

上三角求逆依旧是上三角,下三角求逆依旧是下三角

速记:上三角分块矩阵的逆矩阵的上三角部分是 B1CD1-B^{-1}CD^{-1},下三角分块矩阵的逆矩阵的下三角部分是 D1CB1-D^{-1}CB^{-1}

常见上三角分块矩阵:

A=[BC0D]A = \begin{bmatrix}B & C \\ 0 & D\end{bmatrix}

其中 BBDD 是可逆的方阵,那么 AA 的逆矩阵为:

A1=[B1B1CD10D1]A^{-1} = \begin{bmatrix}B^{-1} & -B^{-1} C D^{-1} \\ 0 & D^{-1}\end{bmatrix}

下三角分块矩阵:

A=[B0CD]A = \begin{bmatrix}B & 0 \\ C & D\end{bmatrix}

其中 BBDD 是可逆的方阵,那么 AA 的逆矩阵为:

A1=[B10D1CB1D1]A^{-1} = \begin{bmatrix}B^{-1} & 0 \\ -D^{-1} C B^{-1} & D^{-1}\end{bmatrix}

手算4:2x2矩阵求逆(伴随矩阵的最简例子)#

A=[abcd]A = \begin{bmatrix}a & b \\ c & d\end{bmatrix}

如果 adbc0ad - bc \neq 0,则 AA 可逆,且其逆矩阵为:

A1=1adbc[dbca]A^{-1} = \frac{1}{ad - bc} \begin{bmatrix}d & -b \\ -c & a\end{bmatrix}

Sherman-Morrison 公式#

在机器学习中,常常需要把数据 DD(长方形 n×dn \times d 矩阵)求内积 DTDD^T D 得到方阵 CC,然后求逆。如果多了一个样本维度(也就是有新数据 v\mathbf{v}),D 就变成了 (n+1)×d(n+1) \times d 的矩阵,求内积得到的方阵 CC 就可以更新成 DTD+vvTD^TD+\mathbf{v}\mathbf{v}^T 能不能快速求逆呢?答案是可以的,这就是 Sherman-Morrison 公式:

Sherman-Morrison 公式是用于秩-1更新的求逆公式。它提供了一种高效的方法来计算矩阵 AA 加上一个秩-1矩阵 uvT\mathbf{u}\mathbf{v}^T 的逆矩阵。

AA 是一个可逆的 n×nn \times n 矩阵,u\mathbf{u}v\mathbf{v}nn 维列向量,那么 (A+uvT)(A + \mathbf{u}\mathbf{v}^T)是可逆的,当且仅当 1+vTA1u01 + \mathbf{v}^T A^{-1} \mathbf{u} \neq 0

(A+uvT)1=A1A1uvTA11+vTA1u(A + \mathbf{u}\mathbf{v}^T)^{-1} = A^{-1} - \frac{A^{-1} \mathbf{u} \mathbf{v}^T A^{-1}}{1 + \mathbf{v}^T A^{-1} \mathbf{u}}

记住形状,证明就是验证乘法是不是单位阵

这里面的向量 u\mathbf{u}v\mathbf{v} 可以推广到扁平矩阵 U(n×k)U(n \times k)V(k×n)V(k \times n),得到更一般的Woodbury 矩阵恒等式(Sherman-Morrison-Woodbury),针对低秩-k更新 的情况:

(A+UVT)1=A1A1U(I+VTA1U)1VTA1(A + UV^T)^{-1} = A^{-1} - A^{-1} U (I + V^T A^{-1} U)^{-1} V^T A^{-1}
TIP

证明:构造了一个线性方程组来证明 alt text

矩阵的可逆性与Sherman-Morrison
https://biscuit0613.github.io/posts/lineralgebra/reverse/
作者
Biscuit
发布于
2026-04-20
许可协议
CC BY-NC-SA 4.0