【线性代数】矩阵伪逆

· · 个人记录

本文仅讨论实矩阵

Definition

对于矩阵 M,记 M^{+}A 的伪逆。

对于对角矩阵 \Sigma,令 \Sigma^{+} 为将 \Sigma 主对角线上所有非零元素取倒数并转置的结果。

对于任意矩阵 A,令 A 的 SVD 分解为 A = U\Sigma V^T,则

A^{+} = V\Sigma^{+}U^T

Properties

Penrose Conditions for Pseudoinverse

Condition 1: AA^{+}A = A

Condition 2A^{+}AA^{+} = A^{+}

Condition 3: AA^{+} 为对称矩阵

Condition 4A^{+}A 为对称矩阵

不难证明,以上四个条件全部满足。

Four Fundamental Spaces of \boldsymbol{A^T} and \boldsymbol{A^{+}}

可以证明,A^TA^{+} 的行空间、列空间、零空间(null space)和左零空间(left null space)均相等。

证明:见本人的 stackexchange 回答

Connections between Row Space and Column Space

S_RA 的行空间,S_CA 的列空间。令 f(x) = Mx,其中 x \in S_R。下证 f: S_R \to S_C双射

先证 S_R \to S_C单射。若 x_1, x_2 \in S_Rf(x_1) = f(x_2),则 M(x_1 - x_2) = 0。令 x = x_1 - x_2,则有 x \in S_R \cap \mathcal{N}(A),显然 x = 0。因此 f(x_1) = f(x_2) \implies x_1 = x_2,单射证毕。

再证 S_R \to S_C满射。对于任意 y \in S_C,令 x = A^{+}y = (V\Sigma^{+}U^T)y。由于 xA^{+} 的列空间中,因此 x \in S_R。记 y = Av,可得

\begin{aligned} Ax &= AA^{+}y \\ &= AA^{+}Av \\ &= Av \\ &=y \end{aligned}

因此,S_R \to S_C双射

Left Inverse and Right Inverse

A 列满秩,则 A^TA 可逆,即

(A^TA)^{-1}A^TA = I

因此 (A^TA)^{-1}A^TA左逆元

同理,若 A 行满秩,则 A^T(AA^T)^{-1}A右逆元

总而言之,对于任意矩阵 A

Projections onto Subspaces

对于任意矩阵 A \in \mathbb{R}^{m \times n},考虑任意向量 v \in \mathbb{R}^nA 行空间上的投影 \widehat{v}

注意到:

由于 v 总是可以分解为 v_R + v_N,满足 v_R 在行空间中,v_N 在零空间中,因此

A^{+}Av = A^{+}Av_R + A^{+}Av_N = v_R

即投影矩阵为 A^{+}A。因此,若 A 列满秩,则 A^{+}A = I,此时行空间恰为 R^m,有 \widehat{v} = v;若 A 行满秩,则 \widehat{v} = A^T(AA^T)^{-1}Av

结合 A^T, A^{+} 的四个基本子空间的相等性,不难得到 v \in \mathbb{R}^mA 列空间上的投影矩阵为 AA^{+}

从而,我们得到了与 投影矩阵 一文中几乎相同的结果;唯一的区别在于,这里无需对 A 的秩作出限制,可直接借助伪逆计算。

Least Squares

对于矩阵 A \in \mathbb{R}^{m \times n} 及向量 y \in \mathbb{R}^m,我们需要找到 x \in \mathbb{R}^{n} 以最小化 \mathcal{L}(Ax, y)。在 Least Squares 中有 \mathcal{L}(p, l) = ||l - p||_2^2

由于 yA 列空间上的投影为 AA^{+}y,因此

Ax = AA^{+}y

x = A^{+}y 即可。

A 列满秩时,有 x = (A^TA)^{-1}A^Ty,与 线性回归数学原理 中的结果相同。