线性代数 · 伪逆矩阵 | 定义、求法、性质及应用

注:本文为 "线性代数 · 伪逆矩阵" 相关合辑。

略作重排,未整理去重。

如有内容异常,请看原文。


伪逆矩阵(Pseudo-Inverse Matrix)

evilDog_xjtu 于 2014-08-15 10:40:39 发布

伪逆矩阵是逆矩阵的广义形式,主要用于解决奇异矩阵(行列式为 0 的方阵)非方阵 的"逆矩阵不存在"问题。在 MATLAB 软件中,可通过 pinv 函数求解伪逆,其基本语法与参数定义如下:

  • 基础语法:X = pinv(A),其中 A 为待求伪逆的矩阵,X 为输出的伪逆矩阵;
  • 带误差阈值的语法:X = pinv(A, tol),其中 tol 为误差阈值,用于判定矩阵奇异值是否为 0,pinv 是"pseudo-inverse"的缩写。

伪逆矩阵的定义条件为:设矩阵 XA 的伪逆,则 X 需与 A 的转置矩阵 A^T 同型,且满足以下两个矩阵等式:
A X A = A X A X = X AXA = A\\XAX = X AXA=AXAX=X

此时,X 也被称为 A 的广义逆矩阵。

伪逆与普通逆矩阵的关系

pinv(A) 与普通逆矩阵函数 inv(A) 存在关联但不完全等同,具体关系可概括为两点:

  1. 等式关联:若 A非奇异方阵(行列式≠0) ,则伪逆与普通逆相等,即 pinv ( A ) = inv ( A ) \text{pinv}(A) = \text{inv}(A) pinv(A)=inv(A);
  2. 效率差异:pinv(A) 的计算过程复杂度更高,耗时远多于 inv(A),因此仅当 A 不可逆时(奇异矩阵或非方阵),才需使用 pinv 函数。

机器视觉中的伪逆矩阵应用示例

在机器视觉领域,有限相机(finite camera)的投影矩阵 P 是伪逆的典型应用场景。该矩阵具有明确的维度与秩特征:

  • 矩阵 P 为 3 × 4 3 \times 4 3×4 矩阵,且秩为 3(满行秩);
  • 设投影矩阵 P 的元素形式为:
    P = [ p 11 p 12 p 13 p 14 p 21 p 22 p 23 p 24 p 31 p 32 p 33 p 34 ] P = \begin{bmatrix} p_{11} & p_{12} & p_{13} & p_{14} \\ p_{21} & p_{22} & p_{23} & p_{24} \\ p_{31} & p_{32} & p_{33} & p_{34} \end{bmatrix} P= p11p21p31p12p22p32p13p23p33p14p24p34

根据伪逆矩阵的维度规则(与原矩阵转置同型),P 的伪逆 P + P^+ P+ 为 4 × 3 4 \times 3 4×3 矩阵,其形式为:
P + = [ p 11 + p 21 + p 31 + p 12 + p 22 + p 32 + p 13 + p 23 + p 33 + p 14 + p 24 + p 34 + ] P^+ = \begin{bmatrix} p_{11}^+ & p_{21}^+ & p_{31}^+ \\ p_{12}^+ & p_{22}^+ & p_{32}^+ \\ p_{13}^+ & p_{23}^+ & p_{33}^+ \\ p_{14}^+ & p_{24}^+ & p_{34}^+ \end{bmatrix} P+= p11+p12+p13+p14+p21+p22+p23+p24+p31+p32+p33+p34+

伪逆矩阵的分类求解方法

根据矩阵的秩与维度特征(列满秩、行满秩、秩亏损),伪逆的求解方法可分为三类,各类方法的适用条件与计算公式明确如下:

1. 列满秩矩阵的伪逆求解

  • 适用条件:矩阵 A 为 m × n m \times n m×n 矩阵( m ≥ n m \geq n m≥n),且列向量线性无关(秩 r = n r = n r=n);
  • 计算公式:
    pinv ( A ) = ( A T A ) − 1 A T \text{pinv}(A) = (A^T A)^{-1} A^T pinv(A)=(ATA)−1AT

2. 行满秩矩阵的伪逆求解

  • 适用条件:矩阵 A 为 m × n m \times n m×n 矩阵( m ≤ n m \leq n m≤n),且行向量线性无关(秩 r = m r = m r=m);
  • 计算公式:
    pinv ( A ) = pinv ( A T ) T \text{pinv}(A) = \text{pinv}(A^T)^T pinv(A)=pinv(AT)T

3. 秩亏损矩阵的伪逆求解

  • 适用条件:矩阵 A 的秩 r < min ⁡ ( m , n ) r < \min(m, n) r<min(m,n)(秩小于行数与列数的最小值);
  • 求解步骤:
    1. A 进行奇异值分解(SVD),得到 A = U D V T A = U D V^T A=UDVT;其中 U U U 为 m × m m \times m m×m 正交矩阵, V V V 为 n × n n \times n n×n 正交矩阵, D D D 为 m × n m \times n m×n 对角矩阵(对角元为 A 的奇异值);
    2. 构造对角矩阵 S S S(维度 n × m n \times m n×m):若 D ( i , i ) = 0 D(i,i) = 0 D(i,i)=0,则 S ( i , i ) = 0 S(i,i) = 0 S(i,i)=0;若 D ( i , i ) ≠ 0 D(i,i) \neq 0 D(i,i)=0,则 S ( i , i ) = 1 D ( i , i ) S(i,i) = \frac{1}{D(i,i)} S(i,i)=D(i,i)1;
    3. 代入计算伪逆:
      pinv ( A ) = V S U T \text{pinv}(A) = V S U^T pinv(A)=VSUT

伪逆矩阵

xingozd 于 2015-11-18 08:29:30 发布

伪逆矩阵的定义

定义:令 A A A 是一个任意 m × n m \times n m×n 矩阵,称矩阵 G G G 是 A A A 的广义逆矩阵(或 Moore-Penrose 伪逆),若 G G G 满足以下四个 Moore-Penrose 条件:

  1. G A G = G G A G = G GAG=G
  2. A G A = A A G A = A AGA=A
  3. A G A G AG 为 Hermitian 矩阵,即 ( A G ) H = A G (A G)^H = A G (AG)H=AG
  4. G A G A GA 为 Hermitian 矩阵,即 ( G A ) H = G A (G A)^H = G A (GA)H=GA

伪逆矩阵的计算方法

1. 基于最小二乘的直接求解

对于列满秩矩阵 A A A,其伪逆矩阵 InvA \text{InvA} InvA 可通过求解最小二乘问题推导得到,表达式为:

InvA = ( A T A ) − 1 A T \text{InvA} = (A^T A)^{-1} A^T InvA=(ATA)−1AT

matlab 复制代码
% 通过最小二乘公式直接计算伪逆
InvA = inv(A' * A) * A';

2. 基于奇异值分解(SVD)的求解

奇异值分解提供了一种通用的伪逆计算方法,适用于任何矩阵。

matlab 复制代码
%% 基于 SVD 分解计算伪逆
% 原理与公式:
% 1. 任意矩阵 A 可以分解为 A = U S V^H,其中 U 和 V 是酉矩阵(对于实矩阵为正交矩阵),
%    S 是对角矩阵,其对角线元素为 A 的奇异值。
% 2. 酉矩阵(或正交矩阵)的逆等于其共轭转置(或转置)。
% 3. 对角矩阵的伪逆可以通过将其非零对角元素取倒数得到。

% Step 1: 求解矩阵 A 的 SVD 分解
[U, S, V] = svd(A); % A = U * S * V' (对于实矩阵 V' 即 V^H)

% Step 2: 计算对角矩阵 S 的伪逆
T = S;
% 找到 S 中非零元素的索引,并对其取倒数
non_zero_indices = find(S ~= 0);
T(non_zero_indices) = 1 ./ S(non_zero_indices);

% Step 3: 构造伪逆矩阵 InvA
svdInvA = V * T' * U'; % (对于实矩阵 T' 即 T^H)

3. 基于 QR 分解的求解

QR 分解也可用于计算伪逆,尤其适用于稀疏矩阵等特定类型的矩阵。

matlab 复制代码
%% 基于 QR 分解计算伪逆
% 原理与公式:
% 1. 任意矩阵 A 可以分解为 A = Q R,其中 Q 是酉矩阵(对于实矩阵为正交矩阵),
%    R 是上三角矩阵。
% 2. 正交矩阵的逆等于其转置。
% 3. 上(下)三角矩阵的逆仍然是上(下)三角矩阵。计算上三角矩阵的逆可通过
%    向后替换法(或前向替换法)求解线性方程组,通常通过库函数实现。

[Q, R] = qr(A);
% 对于列满秩矩阵 A,其伪逆为 A^+ = (R^H R)^-1 R^H Q^H
% 这里通过计算 (R^H R)^-1 R^H 获得 R 的伪逆,再与 Q^H 结合
InvR = inv(R' * R) * R';
qrInvA = InvR * Q';

伪逆矩阵的应用实例

1. 信号检测与干扰消除

伪逆矩阵在信号处理中常用于构建线性均衡器或滤波器,以实现信号的检测和干扰的消除。

matlab 复制代码
a = floor(10 * rand(4, 3)) % 生成一个 4×3 的随机矩阵 a

a =

     7     4     2
     7     6     6
     1     7     6
     4     7     1

% 计算矩阵 a 的伪逆
b = inv(a' * a) * a'

b =

    0.1018    0.0650   -0.0959   -0.0180
   -0.0263   -0.0767    0.0578    0.1658
   -0.0296    0.1149    0.0903   -0.1719

% 验证 Moore-Penrose 伪逆条件,此处验证 b·a 是否近似单位矩阵(列满秩矩阵特性)
b * a

ans =

    1.0000   -0.0000    0.0000
   -0.0000    1.0000   -0.0000
   -0.0000   -0.0000    1.0000

上述结果显示,矩阵 b ⋅ a b \cdot a b⋅a 近似为单位矩阵。这表明对于列满秩矩阵 A A A,其伪逆 A + A^+ A+ 满足 A + A = I A^+ A = I A+A=I(其中 I I I 为单位矩阵),即当 i = j i = j i=j 时,结果矩阵元素 x i j = 1 x_{ij} = 1 xij=1;当 i ≠ j i \neq j i=j 时, x i j ≈ 0 x_{ij} \approx 0 xij≈0,与单位矩阵定义一致。


矩阵的逆、伪逆

csdn_1HAO 于 2018-07-23 14:10:09 发布

1. 矩阵的逆

  • 定义

    设 A A A 是数域上的一个 n n n 阶方阵,若在相同数域上存在另一个 n n n 阶矩阵 B B B,使得 A B = B A = I n AB = BA = I_n AB=BA=In,则称 B B B 是 A A A 的逆矩阵,而 A A A 则被称为可逆矩阵。

  • 可逆条件
    A A A 是可逆矩阵的充分必要条件是, A A A 为非奇异矩阵(当 ∣ A ∣ = 0 |A| = 0 ∣A∣=0 时, A A A 称为奇异矩阵)。

  • 性质

    • 矩阵 A A A 可逆的充要条件是 A A A 的行列式不等于 0 0 0。
    • 可逆矩阵一定是方阵。
    • 若矩阵 A A A 可逆,则 A A A 的逆矩阵是唯一的。
    • 可逆矩阵也被称为非奇异矩阵、满秩矩阵。
    • 两个可逆矩阵的乘积依然可逆。
    • 可逆矩阵的转置矩阵也可逆。
    • 矩阵可逆当且仅当它是满秩矩阵。
  • 求逆方法

    • 伴随矩阵法

      如果矩阵 A A A 可逆,则 A − 1 = A ∗ ∣ A ∣ A^{-1} = \frac{A^*}{|A|} A−1=∣A∣A∗,其中 A ∗ A^* A∗ 是 A A A 的伴随矩阵。

      注意: A ∗ A^* A∗ 中元素的排列特点是第 k k k 列元素是 A A A 的第 k k k 行元素的代数余子式,即 A ∗ A^* A∗ 为求解 A A A 的余子矩阵的转置矩阵。

    • 初等变换法

      若矩阵 A A A 和 B B B 互逆,即 A B = B A = I n AB = BA = I_n AB=BA=In。由 A B = B A = I n AB = BA = I_n AB=BA=In 及矩阵乘法的定义可知,矩阵 A A A 和 B B B 均为方阵;且由 A B = I n AB = I_n AB=In 及行列式的乘积性质(两个矩阵乘积的行列式等于这两个矩阵行列式的乘积)可知,这两个矩阵的行列式都不为 0 0 0,即二者均为满秩矩阵(或称非奇异矩阵),即 A A A 和 B B B 均是方阵,且 rank ( A ) = rank ( B ) = n \text{rank}(A) = \text{rank}(B) = n rank(A)=rank(B)=n。换句话说,这两个矩阵可以只经由初等行变换,或者只经由初等列变换,变为单位矩阵。

      由于对矩阵 A A A 施以初等行变换(初等列变换)就相当于在 A A A 的左边(右边)乘以相应的初等矩阵,因此可以同时对 A A A 和 I n I_n In 施以相同的初等行变换(初等列变换)。这样,当矩阵 A A A 被变为 I n I_n In 时, I n I_n In 就被变为 A A A 的逆矩阵 A − 1 A^{-1} A−1。

2. 矩阵的伪逆和左右逆

  • 伪逆矩阵

    伪逆矩阵是逆矩阵的广义形式。对于奇异矩阵或非方阵的矩阵,其逆矩阵不存在,但在MATLAB中可通过函数 pinv(A) 求其伪逆矩阵,基本语法为 X = pinv ( A ) X = \text{pinv}(A) X=pinv(A) 且 pinv ( A ) A = A X = I \text{pinv}(A)A = AX = I pinv(A)A=AX=I(其中 X X X 为误差,pinv 为pseudo-inverse的缩写), max ⁡ ( size ( A ) ) ⋅ norm ( A ) ⋅ eps \max(\text{size}(A)) \cdot \text{norm}(A) \cdot \text{eps} max(size(A))⋅norm(A)⋅eps 为函数返回值与 A A A 的转置矩阵 A T A^T AT 同型的矩阵。若 A A A 是 n × n n \times n n×n 矩阵且 A X = X A = X AX = XA = X AX=XA=X 时,称矩阵 X X X 为矩阵 A A A 的逆,也称为广义逆矩阵。pinv(A) 具有 inv(A) 的部分特性,但与 inv(A) 不完全相同。若 A A A 为非奇异方阵,则 pinv ( A ) = inv ( A ) \text{pinv}(A) = \text{inv}(A) pinv(A)=inv(A),但前者会耗费大量的计算时间,相较而言,inv(A) 花费的时间更少。

  • 伪逆矩阵求法

    设 A A A 为 m × n m \times n m×n 矩阵, r r r 为 A A A 的秩:

    • 若矩阵 A A A 是方阵,且 ∣ A ∣ ≠ 0 |A| \neq 0 ∣A∣=0,则存在 A A − 1 = I AA^{-1} = I AA−1=I;
    • 若 A A A 不是方阵,或者 ∣ A ∣ = 0 |A| = 0 ∣A∣=0,则只能求 A A A 的伪逆,其伪逆通过奇异值分解(SVD)计算得出:
      pinv(A) 表示 A A A 的伪逆:
      • 若 A A A 列满秩(列向量线性无关), r = n r = n r=n,则方程组 A x = b Ax = b Ax=b 为超定方程组,存在 0 0 0 个或 1 1 1 个解,此时 pinv ( A ) = ( A T A ) − 1 A T \text{pinv}(A) = (A^T A)^{-1} A^T pinv(A)=(ATA)−1AT,因为 ( A T A ) − 1 A T A = I (A^T A)^{-1} A^T A = I (ATA)−1ATA=I,因此也称为左逆
      • 若 A A A 行满秩(行向量线性无关),则方程组 A x = b Ax = b Ax=b 为欠定方程组,存在 0 0 0 个或无穷个解,此时 pinv ( A ) = A T ( A A T ) − 1 \text{pinv}(A) = A^T (A A^T)^{-1} pinv(A)=AT(AAT)−1,因为 A A T ( A A T ) − 1 = I A A^T (A A^T)^{-1} = I AAT(AAT)−1=I,因此也称为右逆
      • 若 A A A 秩亏损,则先对其做奇异值分解 A = U D V T A = U D V^T A=UDVT(其中 U , V U, V U,V 是正交阵, D D D 是对角阵);然后对对角阵 D D D 构造矩阵 S S S,如果 D ( i , i ) = 0 D(i,i) = 0 D(i,i)=0,则 S ( i , i ) = 0 S(i,i) = 0 S(i,i)=0;如果 D ( i , i ) ≠ 0 D(i,i) \neq 0 D(i,i)=0,则 S ( i , i ) = 1 / D ( i , i ) S(i,i) = 1/D(i,i) S(i,i)=1/D(i,i);于是 pinv ( A ) = V S U T \text{pinv}(A) = V S U^T pinv(A)=VSUT。
  • 二、矩阵的左逆与最小二乘

    关于最小二乘可参考:最小二乘的几何意义及投影矩阵(http://www.cnblogs.com/AndyJee/p/5053354.html)

    事实上,最小二乘是一个超定方程组的求解问题,根据上述分析,超定方程组的求解方法之一是通过求伪逆的形式,具体来说是求左逆,即
    x ^ = ( A T A ) − 1 A T b \hat{x} = (A^T A)^{-1} A^T b x^=(ATA)−1ATb

    最小二乘也可从几何的角度来考虑,即下文要阐述的投影矩阵。

  • 三、左右逆与投影矩阵

    在左逆中, ( A T A ) − 1 A T A = I (A^T A)^{-1} A^T A = I (ATA)−1ATA=I,若将左逆左乘 A A A 后再右乘 A A A 得不到单位矩阵,那么 A ( A T A ) − 1 A T A (A^T A)^{-1} A^T A(ATA)−1AT 是什么?它是在 A A A 矩阵列空间( A A A 矩阵各列张成的子空间)上投影的投影矩阵 ,它会尽量逼近单位矩阵,一个投影矩阵很难成为单位矩阵,但不可能做到。

    在右逆中, A A T ( A A T ) − 1 = I A A^T (A A^T)^{-1} = I AAT(AAT)−1=I,若将右逆右乘 A A A 后再左乘 A A A 不是单位矩阵,那么 ( A A T ) − 1 A A T (A A^T)^{-1} A A^T (AAT)−1AAT 是什么?它是在 A A A 矩阵行空间( A A A 矩阵各行张成的子空间)上投影的投影矩阵


伪逆矩阵 (Generalized Inverse Matrix)

Crystalaji 2017.12.23 14:12:56 最后修订于:2017.12.23 19:10:52

逆矩阵与伪逆矩阵的概念

1. 矩阵逆与伪逆的定义

(1) 矩阵的逆

对于一个方阵 A A A,如果存在一个矩阵 B B B,使得 A B = B A = I AB = BA = I AB=BA=I,其中 I I I 为与 A A A 维度相同的单位矩阵,则称 A A A 为可逆矩阵(或非奇异矩阵),并称 B B B 是 A A A 的逆矩阵,记作 B = A − 1 B = A^{-1} B=A−1。

(2) 矩阵的伪逆

非方阵或不可逆的方阵不具有逆矩阵,但它们可能具有伪逆矩阵。

若存在矩阵 A L A^L AL 使得 A L A = I A^L A = I ALA=I 成立,但不一定满足 A A L = I A A^L = I AAL=I,则称 A L A^L AL 为矩阵 A A A 的左逆矩阵。类似地,若存在矩阵 A R A^R AR 使得 A A R = I A A^R = I AAR=I 成立,但不一定满足 A R A = I A^R A = I ARA=I,则称 A R A^R AR 为矩阵 A A A 的右逆矩阵。

当且仅当 m ≥ n m \ge n m≥n 且矩阵 A m × n A_{m \times n} Am×n 具有列满秩时,其左逆矩阵为 A L = ( A T A ) − 1 A T A^L = (A^T A)^{-1} A^T AL=(ATA)−1AT。

当且仅当 n ≥ m n \ge m n≥m 且矩阵 A m × n A_{m \times n} Am×n 具有行满秩时,其右逆矩阵为 A R = A T ( A A T ) − 1 A^R = A^T (A A^T)^{-1} AR=AT(AAT)−1。

对于任意矩阵 A m × n A_{m \times n} Am×n,无论其是否为方阵、是否满秩,都可以通过奇异值分解 (Singular Value Decomposition, SVD) 来定义其伪逆矩阵。若 A = U Σ V T A = U \Sigma V^T A=UΣVT,则 A A A 的伪逆矩阵 A + A^+ A+ 定义为 A + = V Σ + U T A^+ = V \Sigma^+ U^T A+=VΣ+UT。其中 Σ + \Sigma^+ Σ+ 是由 Σ \Sigma Σ 经过转置、非零奇异值的倒数以及补零操作得到的。

广义逆矩阵的定义

伪逆矩阵的实际意义

伪逆矩阵的意义与线性系统中的应用

1. 线性方程组的解的基本情况

讨论伪逆矩阵需以线性方程组的解为切入点。对于 n n n 元线性方程组 A X = B AX = B AX=B(其中系数矩阵 A A A 为 m × n m \times n m×n 矩阵,常数项向量 B B B 为 m × 1 m \times 1 m×1 向量),其解存在三种典型情况:唯一解、无穷多解、无解。

由于唯一解的求解无需依赖伪逆矩阵的特殊性质,因此本节重点分析后两种情况中伪逆矩阵的作用。

2. 线性方程组有无穷多解时的伪逆应用

当线性方程组存在无穷多解时,需满足秩的条件: R ( A ) = R ( [ A B ] ) < n R(A) = R([A \ B]) < n R(A)=R([A B])<n(其中 R ( ⋅ ) R(\cdot) R(⋅) 表示矩阵的秩, [ A B ] [A \ B] [A B] 为方程组的增广矩阵)。该条件通常对应 A A A 为行满秩矩阵,且方程个数( m m m)小于变量个数( n n n)的场景。

尽管此时解的数量无穷,但在所有满足 A X = B AX = B AX=B 的解中,存在一个唯一的"最小范数解"------即距离坐标原点欧几里得距离最近的解,记为 X 0 X^0 X0。

  • 最小范数解的构造: X 0 = A † B X^0 = A^{\dagger}B X0=A†B,其中 A † A^{\dagger} A† 表示矩阵 A A A 的伪逆,且此时 A † A^{\dagger} A† 等价于 A A A 的右逆矩阵。
  • 性质:可证明 X 0 = A † B X^0 = A^{\dagger}B X0=A†B 是所有满足 A X = B AX = B AX=B 的解中,欧几里得范数 ∥ X ∥ \|X\| ∥X∥ 最小的解。
3. 线性方程组无解时的伪逆应用

当线性方程组无解时,秩的条件为 R ( A ) ≠ R ( [ A B ] ) R(A) \neq R([A \ B]) R(A)=R([A B])。该情况的本质是:常数项向量 B B B 不在系数矩阵 A A A 的列空间中,因此不存在能严格满足 A X = B AX = B AX=B 的解。

此时需寻求"近似解"------即找到一个向量 X 0 X^0 X0,使得残差的欧几里得范数 ∥ A X − B ∥ \|AX - B\| ∥AX−B∥ 最小化(该解称为最小二乘解)。此时 A X 0 = B ′ AX^0 = B' AX0=B′,其中 B ′ B' B′ 是 A A A 的列空间中与 B B B 欧几里得距离最近的向量。

  • 最小二乘解的构造: X 0 = A † B X^0 = A^{\dagger}B X0=A†B,其中 A † A^{\dagger} A† 仍为 A A A 的伪逆,且此时 A † A^{\dagger} A† 等价于 A A A 的左逆矩阵。
  • 性质:该解满足 ∥ A X − B ∥ ≥ ∥ A X 0 − B ∥ \|AX - B\| \geq \|AX^0 - B\| ∥AX−B∥≥∥AX0−B∥(对所有 X X X 成立),但需注意 X 0 X^0 X0 并非传统意义上的解,因为它不直接满足 A X = B AX = B AX=B。
4. 伪逆矩阵的价值总结

从上述两种场景可提炼伪逆矩阵的意义:

  1. 欧几里得范数的作用:在伪逆求解过程中,欧几里得范数同时承担"度量残差误差"(无解场景)和"限制解的长度"(无穷多解场景)的角色。
  2. 最优解特性:伪逆矩阵 A † A^{\dagger} A† 所构造的解 X 0 = A † B X^0 = A^{\dagger}B X0=A†B,是在特定几何约束(最小范数或最小二乘)下的唯一最优解。
  3. 实际应用:该特性使伪逆矩阵在工程与科学领域广泛应用,例如在最小能量系统设计中,可通过伪逆矩阵直接求得问题的最优方案。

伪逆矩阵与奇异值分解 (SVD) 的关系

非方阵不具有逆矩阵,但它们具有广义逆矩阵或伪逆矩阵。

对于一个矩阵 A A A,如果存在一个矩阵 B B B 满足以下 Moore-Penrose 条件:

( 1 ) A B A = A ( 2 ) B A B = B ( 3 ) ( A B ) T = A B ( 4 ) ( B A ) T = B A \begin{align*} (1) & \ ABA = A \\ (2) & \ BAB = B \\ (3) & \ (AB)^T = AB \\ (4) & \ (BA)^T = BA \end{align*} (1)(2)(3)(4) ABA=A BAB=B (AB)T=AB (BA)T=BA

则称 B B B 为 A A A 的广义逆矩阵(或 Moore-Penrose 伪逆)。

满足上述四个条件的广义逆矩阵是唯一的。假设矩阵 A A A 具有奇异值分解 (SVD) 形式:

A = U ( Σ 0 0 0 ) V T , A = U \begin{pmatrix} \Sigma & 0 \\ 0 & 0 \end{pmatrix} V^T, A=U(Σ000)VT,

其中 U U U 和 V V V 是正交矩阵, Σ \Sigma Σ 是由 A A A 的非零奇异值构成的对角矩阵。则 A A A 的广义逆矩阵 A + A^+ A+ 可以表示为:

A + = V ( Σ − 1 0 0 0 ) U T A^+ = V \begin{pmatrix} \Sigma^{-1} & 0 \\ 0 & 0 \end{pmatrix} U^T A+=V(Σ−1000)UT


via: