MENU

【Rethink Math】矩阵论的几何理解:广义逆矩阵

2026 年 07 月 12 日 • 文章

呃啊!好难写!

至于字母混乱,您多担待。

通过之前的论述,我们知道,一个矩阵的逆矩阵就是一个线性变换的逆变换。比如一个向量$x$,经过矩阵$A$所表示的线性变换,变成$Ax$,那么再经过$A^{-1}$,就又变回了$x$。

若方阵$A$可逆,那么$A^{-1}$表示与$A$相反的线性变换。向量$x$经过$A$变成$Ax$后,再经过$A^{-1}$,就能恢复为原向量:

$$ A^{-1}(Ax)=x. $$

同样,对任意输出向量$b$,都有

$$ A(A^{-1}b)=b. $$

在应用中,我们通常会求解$Ax=b$这种方程组,那么逆矩阵就相当于做了这样一件事,给定了一个线性变换$A$和变换后的向量$b$,我们要找到变换之前的向量$x$,那么一个矩阵如果没有逆矩阵,找到这个$x$就很难,我们需要想一些办法。

原向量有哪几种情况?

Takeaway:

没有逆矩阵,那么目标向量,要么对应无穷多个原向量,1个原向量,要么对应0个原向量。

为什么会没有逆矩阵?很显然,因为矩阵把很多方向压到了零向量,这样就相当于把一些维度的信息压没了,就导致没有办法逆过来运算。那么这个时候,对于不同的$b$,$x$有哪几种情况?其实只有两种情况——要么有无穷多个原向量,要么压根找不到一个合理的原向量。

一个$b$对应无穷多个$x$,是由压没维度导致的。例如:

$$ A= \begin{pmatrix} 1&0\\ 0&0 \end{pmatrix}. $$

那么

$$ A \begin{pmatrix} x_1\\x_2 \end{pmatrix} = \begin{pmatrix} x_1\\0 \end{pmatrix}. $$

对于

$$ b= \begin{pmatrix} 1\\0 \end{pmatrix}, $$

有无穷多个解:

$$ x= \begin{pmatrix} 1\\t \end{pmatrix}, \qquad t\in\mathbb R. $$

因为第二个方向被完全压没了,而一个方向上有无穷多个向量,那么很显然,原向量就有无穷多个。

一个$b$没有对应的$x$,还是上面的矩阵:

$$ A \begin{pmatrix} x_1\\x_2 \end{pmatrix} = \begin{pmatrix} x_1\\0 \end{pmatrix}. $$

它只能产生第二个分量为0的向量。所以,对于

$$ b= \begin{pmatrix} 1\\1 \end{pmatrix}, $$

方程

$$ Ax=b $$

根本无解。

各种广义逆就是用不同的方法处理这两个问题。

  • 1-逆:如果$b$确实来自某个$x$,那就从多个原像中选一个。
  • MP逆:若有多个解,就选长度最小的;若没有精确解,就找最接近的解。
  • Drazin逆:它把线性变换分成可逆的长期部分和最终消失的幂零部分,只反转可逆部分。

1-逆

Takeaway:

如果一个向量确实对应一个或多个原向量,1-逆就负责找出来,或者随便找一个。

如果难以处理,不妨试试把矩阵简化,然后再另行处理。

1-逆,通常记作$A^{(1)}$,要满足:

$$ AA^{(1)}A=A $$

也就是,如果

$$ b=Ax, $$

那么

$$ A A^{(1)} b=b. $$

所以 $A^{(1)}b$ 是方程

$$ Ax=b $$

的一个解。

也就是说,如果一个$b$确实对应一个或多个原向量$x$,就找出来,或者随便找一个。

「哎呀你这家伙,这哪有意思啊?那书上不是告诉你怎么算了吗?你这蠢货怎么不讲!」有读者肯定要说啦。哈哈,您别急,且听下一部分分解!

1-逆的一个计算方法是这样的,设$A\in \mathbb{R}^{m\times n}_r(r>0)$,且有$S\in \mathbb{R}^{m\times m}_m$和$n$阶置换矩阵$P$,使得:

$$ SAP=\begin{bmatrix}\mathbf{I_r} & \mathbf{K}\\ \mathbf{O} & \mathbf{O}\end{bmatrix}=M $$

其中,$K\in \mathbb{R}^{r\times (n-r)}$,则对任意$L\in \mathbb{R}^{(n-r)\times (m-r)}$,下面这个是$A$的1-逆:

$$ X=P\begin{bmatrix}\mathbf{I_r} & \mathbf{O}\\ \mathbf{O} & \mathbf{L}\end{bmatrix}S=PNS $$

这个方法就是,通过初等变换把$A$变化成一个易于处理的形式,然后再考虑构造1-逆。

首先,我们来看矩阵$M$,它其实把矩阵$A$拆成了两个部分,左上角是一个$r$阶单位阵,这是因为前$r$个方向是独立、有效的方向,后面的零行表示输出空间中有$m-r$个方向永远无法被$A$产生;$K$表示后面那些列可以由前$r$个主元列线性表示。

然后,我们为$M$构造一个1-逆,也就是$N$阵,根据分块矩阵的知识,很好验证。现在$N$是$M$的1-逆,但我们需要的是原矩阵$A$的1-逆。

$$ M=SAP $$

得到

$$ A=S^{-1}MP^{-1}. $$

定义

$$ X=PNS. $$

那么

$$ \begin{aligned} AXA &= \left(S^{-1}MP^{-1}\right) (PNS) \left(S^{-1}MP^{-1}\right)\\ &= S^{-1}MNMP^{-1}. \end{aligned} $$

因为

$$ MNM=M $$

所以

$$ AXA = S^{-1}MP^{-1} =A. $$

因此$X$就是$A$的一个1-逆。

前两个Penrose条件

Takeaway:

条件一保证“映回输出没有错”,条件二保证“选出的反向结果自身一致”。

有一类广义逆矩阵叫做Moore-Penrose逆矩阵,也可以叫做MP逆,那么一个矩阵如果是MP逆,可以记作$A^+$,就需要满足四个Penrose条件,分别是:

$$ AA^+A=A $$

$$ A^+AA^+=A^+ $$

$$ (AA^+)^T=AA^+ $$

$$ (A^+A)^T=A^+A $$

对于第一条,实际上就和1-逆满足的条件一样,其实,正因为1-逆满足Penrose条件的第一条,才叫做1-逆。那么第一条实际上说的就是,如果一个向量有与之对应的原向量,那么逆矩阵必须要能够找到一个有效的原向量。

第二条看起来就是把逆矩阵和原矩阵交换了位置,但是几何含义上略有出入,我们知道,$b$对应的一个原向量,可以用$A^+b$来表示,那么第二个式子两边同时右乘$b$:

$$ A^+AA^+b=A^+b $$

那么左边表示,我有一个原向量$A^+b$,那么在经历$A$变换和$A^+$变换之后,仍然还是原向量,直观含义就是,$A^+$选出的解必须是稳定的,不能反复“反推”之后又得到另一个解。这相当于条件一保证“映回输出没有错”,条件二保证“选出的反向结果自身一致”。

根据条件一二,实际上可以推出:

$$ (AA^+)^2=AA^+AA^+=AA^+ $$

那么实际上,$AA^+$就是一个投影矩阵。

突发新闻:投影矩阵

Takeaway:

投影矩阵要满足幂等性,输入输出空间应是一个空间。

正交投影能得到与原向量,最近的向量。

投影矩阵相当于把向量投影到某个空间上,那么通常满足幂等性,也就是$P^2=P$,幂次相当于多次投影,但是在第一次投影之后,已经在某个空间了,后面的投影就不会对向量进行改变了。考虑这样一个矩阵:

$$ P= \begin{pmatrix} 1&0\\ 0&0 \end{pmatrix}. $$

对向量

$$ x= \begin{pmatrix} 3\\ 2 \end{pmatrix}, $$

$$ Px= \begin{pmatrix} 3\\ 0 \end{pmatrix}. $$

这相当于把

$$ \begin{pmatrix} 3\\ 2 \end{pmatrix} = \begin{pmatrix} 3\\ 0 \end{pmatrix} + \begin{pmatrix} 0\\ 2 \end{pmatrix} $$

分成水平部分和竖直部分。投影保留了水平部分,删除了竖直部分。

投影一定要求,输入输出在同一个空间内,只是删除了一些方向的信息,比如一个向量$x=u+v$,投影之后可能只保持了$u$方向的信息,如果$u$和$v$正交,那么投影矩阵就叫做正交投影矩阵。我们上面的例子就是一个正交投影矩阵,删除了$y$轴方向的信息。

那么正交投影矩阵有什么性质?它能找到与原向量,最近的向量。为什么?因为点到直线的最短距离,是垂线段。

没听懂?设要把向量$b$投影到子空间$V$,投影结果记为

$$ p=Pb. $$

正交投影的定义保证:

$$ p\in V $$

并且误差

$$ r=b-p $$

垂直于整个子空间$V$:

$$ r\perp V. $$

现在从$V$中任意选择另一个向量$v$。比较谁离$b$更近。

我们有

$$ b-v=(b-p)+(p-v). $$

其中:

  • $b-p=r$垂直于$V$;
  • $p-v\in V$,因为$p,v\in V$。

所以

$$ b-p\perp p-v. $$

根据勾股定理:

$$ \|b-v\|^2 = \|b-p\|^2+\|p-v\|^2. $$

因为

$$ \|p-v\|^2\geq 0, $$

所以

$$ \boxed{\|b-v\|^2\geq\|b-p\|^2}. $$

也就是:

$$ \boxed{\|b-v\|\geq\|b-p\|}. $$

因此,$p=Pb$是子空间$V$中离$b$最近的向量。只有当

$$ v=p $$

时等号成立,所以最近点还是唯一的。

后两个Penrose条件

Takeaway:

条件三解决了目标向量没有原向量与之对应的情况,找到了一个向量,使之变换后与目标向量足够接近。

条件四解决了目标向量没有原向量与之对应的情况,找到了一个向量,范数最小。

通过前两个Penrose条件,我们已经能得到$AA^+$是一个投影矩阵,那么很明显,投影矩阵要求输入输出在同一个空间中,那么$AA^+$相当于把向量$b$投影到$A$能够产生的空间中,亦即投影到$\text{Col}(A)$空间中。因为对于一个向量$b$,它可能不在$\text{Col}(A)$中,但是$AA^+b$一定在$\text{Col}(A)$中。那么条件三要求投影矩阵是对称的——也就是说$AA^+$是一个正交投影矩阵。这解决了一个很大的问题——目标向量没有原向量与之对应的情况

如果这样,我们就对于一个无法精确产生的向量,先把它沿垂直方向投影到能够产生的空间中。

最后一个Penrose条件有点棘手,直观来看,我们只知道,$A^+A$是一个正交投影矩阵,但是这有什么用呢?那么这里我需要要求读者死记硬背下一个结论,那就是,这个矩阵将向量投影到:

$$ \operatorname{Col}(A^+) = \operatorname{Col}(A^T) = \operatorname{Row}(A) = \operatorname{ker}(A)^\perp $$

这个空间,也就是$A$的零空间的正交补空间,这个空间和零空间的方向彼此垂直。举个例子,设

$$ A=\begin{pmatrix}1&1\end{pmatrix}. $$

它把二维向量变成一个数:

$$ A\begin{pmatrix}x_1\\x_2\end{pmatrix}=x_1+x_2. $$

例如原向量是

$$ x=\begin{pmatrix}3\\1\end{pmatrix}, $$

那么

$$ Ax=3+1=4. $$

这里有个问题:看到4,能恢复出原来的$(3,1)$吗?不能,因为以下向量经过$A$都得到4:

$$ \begin{pmatrix}4\\0\end{pmatrix}, \quad \begin{pmatrix}3\\1\end{pmatrix}, \quad \begin{pmatrix}2\\2\end{pmatrix}, \quad \begin{pmatrix}1\\3\end{pmatrix}. $$

更一般地,所有解都是

$$ \begin{pmatrix}2+t\\2-t\end{pmatrix}. $$

把它拆开:

$$ \begin{pmatrix}2+t\\2-t\end{pmatrix} = \begin{pmatrix}2\\2\end{pmatrix} + t\begin{pmatrix}1\\-1\end{pmatrix}. $$

其中

$$ A\begin{pmatrix}1\\-1\end{pmatrix}=1-1=0. $$

所以$(1,-1)^T$是$A$的零空间方向。这意味着:无论在$(1,-1)$方向上增加多少,输出都不会改变。那么,第四条约束就表明,我要把这些零空间方向,全置0。

详细一点说,设任意输入向量 $x$ 都可以唯一分解为

$$ x=x_{\perp}+x_0, $$

其中

$$ x_{\perp}\in \ker(A)^\perp, \qquad x_0\in \ker(A). $$

因为$x_0$属于零空间,所以

$$ Ax_0=0. $$

于是

$$ Ax=A(x_{\perp}+x_0)=Ax_{\perp}. $$

也就是说,经过$A$后,$x_0$这部分的信息彻底消失了。只看到$Ax$,无法知道原来的$x_0$是多少,既然不知道,我就把它设成0,那么这就有一个好处——能够找到范数最小的解。为什么?令

$$ x_*=A^+b, \qquad \hat b=Ax_*=AA^+b. $$

因为$AA^+$是到$\operatorname{Col}(A)$的正交投影,所以

$$ b-\hat b\perp\operatorname{Col}(A). $$

对于任意$x$,都有$Ax\in\operatorname{Col}(A)$,因此

$$ b-Ax=(b-\hat b)+(\hat b-Ax), $$

且等号右边的两个向量互相正交。根据勾股定理,

$$ \|b-Ax\|^2 = \|b-\hat b\|^2+\|\hat b-Ax\|^2 \geq \|b-\hat b\|^2. $$

因此

$$ x_*=A^+b $$

是一个最小二乘解。接下来,设$y$是任意另一个最小二乘解。由于列空间中的最近点是唯一的,所以

$$ Ay=\hat b=Ax_*. $$

于是

$$ A(y-x_*)=0, $$

即存在$z\in\ker(A)$,使得

$$ y=x_*+z. $$

另一方面,

$$ x_*=A^+b\in\ker(A)^\perp. $$

所以$x_*\perp z$,从而

$$ \|y\|^2 = \|x_*+z\|^2 = \|x_*\|^2+\|z\|^2 \geq \|x_*\|^2. $$

只有当$z=0$ 时取等号。因此

$$ \boxed{ A^+b = \arg\min \left\{ \|x\|: x\in\arg\min_y\|Ay-b\| \right\}. } $$

即$A^+b$是所有最小二乘解中唯一的最小范数解。