3.6_广义逆与最小二乘

3.6 广义逆与最小二乘*

满秩的正方矩阵存在逆, 一个很自然的问题就是, 对于不满秩的矩阵或者非正方矩阵, 是不是可以定义类似的逆?

3.6.1 广义逆

广义逆的概念最早由Moore[95]于1920年提出, 他给出的定义如下: 设 ACm×nA \in \mathbb{C}^{m \times n} , 若 XCn×mX \in \mathbb{C}^{n \times m} 满足

AX=PRan(A),XA=PRan(X),(3.24)A X = P _ {\operatorname {R a n} (A)}, \quad X A = P _ {\operatorname {R a n} (X)}, \tag {3.24}

AXAXXAXA 分别为 Ran(A)\operatorname{Ran}(A)Ran(X)\operatorname{Ran}(X) 上的正交投影算子, 则称 XXAA 的广义逆.

1955年,Penrose[104]利用下面四个矩阵方程给出了广义逆的另一个定义,这也是当前常用的广义逆定义方式.

定义3.2 设 ACm×nA \in \mathbb{C}^{m \times n} , 若 XCn×mX \in \mathbb{C}^{n \times m} 满足

AXA=A(3.25)A X A = A \tag {3.25}
XAX=X(3.26)X A X = X \tag {3.26}
(AX)=AX(3.27)(A X) ^ {*} = A X \tag {3.27}
(XA)=XA.(3.28)(X A) ^ {*} = X A. \tag {3.28}

则称 XXAA 的广义逆,记为 AA^{\dagger}

方程组 (3.23) 和 (3.24)-(3.27) 分别称为 Moore 方程组和 Penrose 方程组. 可以证明, 以上两种定义是等价的, 因此广义逆也称为 Moore-Penrose 逆, 简称 MP 逆.

(1) 需要指出的是, 广义逆对所有矩阵都有定义, 并不要求是正方矩阵.

(2) 若 ACn×nA \in \mathbb{C}^{n \times n} 非奇异, 则 A=A1A^{\dagger} = A^{-1} .
(3) 在有的文献中,广义逆也称为伪逆.

定理3.25 [149]设 ACm×nA\in \mathbb{C}^{m\times n} ,则满足矩阵方程组(3.24)-(3.27)的矩阵 XCn×mX\in \mathbb{C}^{n\times m} 存在且唯一.

(板书)

证明. 存在性: 可以通过SVD构造

rank(A)=r>0\operatorname{rank}(A) = r > 0 ,且 AA 的SVD为

A=U[Σ1000]V,Σ1=diag(σ1,σ2,,σr)Rr×r.A = U \left[ \begin{array}{c c} \Sigma_ {1} & 0 \\ 0 & 0 \end{array} \right] V ^ {*}, \quad \Sigma_ {1} = \mathrm {d i a g} (\sigma_ {1}, \sigma_ {2}, \ldots , \sigma_ {r}) \in \mathbb {R} ^ {r \times r}.

X=V[Σ11000]U.X = V \left[ \begin{array}{c c} \Sigma_ {1} ^ {- 1} & 0 \\ 0 & 0 \end{array} \right] U ^ {*}.

容易验证, XX 满足矩阵方程(3.24)-(3.27).

唯一性: 假设存在 XXYY 都满足矩阵方程 (3.24)-(3.27). 则

X=XAX=X(AX)=XXA=XX(AYA)=X(AX)(AY)=(XAX)(AY)=XAY.X = X A X = X (A X) ^ {*} = X X ^ {*} A ^ {*} = X X ^ {*} (A Y A) ^ {*} = X (A X) ^ {*} (A Y) ^ {*} = (X A X) (A Y) = X A Y.

另一方面,

Y=YAY=(YA)Y=AYY=(AXA)YY=(XA)(YA)Y=XAYAY=XAY.Y = Y A Y = (Y A) ^ {*} Y = A ^ {*} Y ^ {*} Y = (A X A) ^ {*} Y ^ {*} Y = (X A) ^ {*} (Y A) ^ {*} Y = X A Y A Y = X A Y.

所以 Y=XY = X

3.6.2 广义逆基本性质

定理3.26 设 ACm×nA \in \mathbb{C}^{m \times n} , 则

(1) (A)=A(A^{\dagger})^{\dagger} = A
(2) (AT)=(A)T,(A)=(A);(A^{\mathsf{T}})^{\dagger} = (A^{\dagger})^{\mathsf{T}},(A^{*})^{\dagger} = (A^{\dagger})^{*};
(3) rank(A)=rank(A)=rank(AA)\operatorname{rank}(A) = \operatorname{rank}(A^\dagger) = \operatorname{rank}(A^\dagger A) ;
(4) (AA)=(A)A(AA^{*})^{\dagger} = (A^{*})^{\dagger}A^{\dagger} , (AA)=A(A)(A^{*}A)^{\dagger} = A^{\dagger}(A^{*})^{\dagger} ;
(5) (AA)AA=AA(AA^{*})^{\dagger}AA^{*} = AA^{\dagger} , (AA)AA=AA(A^{*}A)^{\dagger}A^{*}A = A^{\dagger}A ;
(6) A=(AA)A=A(AA)A^{\dagger} = (A^{*}A)^{\dagger}A^{*} = A^{*}(AA^{*})^{\dagger}

特别地, 若 AA 列满秩, 则 A=(AA)1AA^{\dagger} = (A^{*}A)^{-1}A^{*} , 若 AA 行满秩, 则 A=A(AA)1A^{\dagger} = A^{*}(AA^{*})^{-1} ;

(7) 若 U,VU, V 是酉矩阵, 则 (UAV)=VAU(UAV)^{\dagger} = V^{*}A^{\dagger}U^{*} .

一般来说, 当 A,BA, B 是方阵时,

  • (AB)BA(AB)^{\dagger} \neq B^{\dagger}A^{\dagger} ;
    AAAA;AA^{\dagger}\neq A^{\dagger}A;
    (Ak)(A)k(A^k)^\dagger \neq (A^\dagger)^k

  • AAAA^{\dagger} 的非零特征值并不是互为倒数

定理3.27 设 ACm×nA \in \mathbb{C}^{m \times n} , 则

Ran(AA)=Ran(AA)=Ran(A),Ran(AA)=Ran(AA)=Ran(A)=Ran(A),Ker(AA)=Ker(AA)=Ker(A)=Ker(A),Ker(AA)=Ker(AA)=Ker(A).\begin{array}{l} \operatorname {R a n} \left(A A ^ {\dagger}\right) = \operatorname {R a n} \left(A A ^ {*}\right) = \operatorname {R a n} (A), \\ \operatorname {R a n} \left(A ^ {\dagger} A\right) = \operatorname {R a n} \left(A ^ {*} A\right) = \operatorname {R a n} \left(A ^ {*}\right) = \operatorname {R a n} \left(A ^ {\dagger}\right), \\ \operatorname {K e r} \left(A A ^ {\dagger}\right) = \operatorname {K e r} \left(A A ^ {*}\right) = \operatorname {K e r} \left(A ^ {*}\right) = \operatorname {K e r} \left(A ^ {\dagger}\right), \\ \operatorname {K e r} \left(A ^ {\dagger} A\right) = \operatorname {K e r} \left(A ^ {*} A\right) = \operatorname {K e r} (A). \\ \end{array}

推论3.28(广义逆与正交投影)设 ACm×nA\in \mathbb{C}^{m\times n} ,则

PA=AA,PA=AA,P _ {A} = A A ^ {\dagger}, \quad P _ {A ^ {\intercal}} = A ^ {\dagger} A,

其中 PAP_APAP_{A^{\intercal}} 分别表示 Ran(A)\operatorname{Ran}(A)Ran(AT)\operatorname{Ran}(A^{\mathsf{T}}) 上的正交投影变换.

特别地, 如果 ACn×nA \in \mathbb{C}^{n \times n} 是正交投影, 则

A=A.A ^ {\dagger} = A.

3.6.3 广义逆的计算

利用SVD

我们可以利用 AA 的奇异值分解来计算 AA^{\dagger} , 但运算量较大. 因为奇异值分解通常与 AAAA^{*}AAA^{*}A 的特征值分解有关.

利用满秩分解

定理3.29 设 ARm×nA \in \mathbb{R}^{m \times n}

(1) 若 AA 是列满秩矩阵, 则 A=(AA)1AA^{\dagger} = (A^{*}A)^{-1}A^{*} ;
(2) 若 AA 是行满秩矩阵, 则 A=A(AA)1A^{\dagger} = A^{*}(AA^{*})^{-1} ;
(3) 若 AA 的秩是 rmin{m,n}r \leq \min \{m, n\} , 且其满秩分解为 A=FGA = FG , 其中 FRm×r,GRr×nF \in \mathbb{R}^{m \times r}, G \in \mathbb{R}^{r \times n} , 则

A=GF=G(GG)1(FF)1F.A ^ {\dagger} = G ^ {\dagger} F ^ {\dagger} = G ^ {*} \left(G G ^ {*}\right) ^ {- 1} \left(F ^ {*} F\right) ^ {- 1} F ^ {*}.

利用QR分解

定理3.30 设 ARm×nA \in \mathbb{R}^{m \times n} ( mnm \geq n ) 是列满秩矩阵, 其 QRQR 分解为 A=QRA = QR , 其中 QRm×nQ \in \mathbb{R}^{m \times n} , RRn×nR \in \mathbb{R}^{n \times n} , 则

A=R1Q.A ^ {\dagger} = R ^ {- 1} Q ^ {*}.

其他算法

其他比较重要的算法有: Greville 递推算法, Cline 算法等.

3.6.4 广义逆与线性最小二乘

定理3.31 [149, page 85] 设 ARm×nA \in \mathbb{R}^{m \times n} ( mnm \geq n ), 则线性最小二乘问题 (3.1) 的解为

x=Ab+(IPRan(A))z,zRn.(3.29)x = A ^ {\dagger} b + \left(I - P _ {\operatorname {R a n} \left(A ^ {\intercal}\right)}\right) z, \quad \forall z \in \mathbb {R} ^ {n}. \tag {3.29}

通常, 线性最小二乘问题的解 (3.28) 不唯一. 但当 AA 列满秩时, PRan(A)=IP_{\mathrm{Ran}(A^{\top})} = I , 此时解唯一.

定理3.32 [149, page 85] 设 ARm×nA \in \mathbb{R}^{m \times n} ( mnm \geq n ). 记线性最小二乘问题 (3.1) 的解集为 SS , 则

minxSx2(3.30)\min _ {x \in S} \| x \| _ {2} \tag {3.30}

存在唯一解, 即线性最小二乘问题 (3.1) 存在唯一的最小范数解.

3.6.5 左逆和右逆

在工程计算中, 有时也会用到矩阵的左逆和右逆

定义3.3 设 ACm×nA \in \mathbb{C}^{m \times n} , 如果存在矩阵 Aleft1Cn×mA_{\text{left}}^{-1} \in \mathbb{C}^{n \times m} 使得 Aleft1A=InA_{\text{left}}^{-1} A = I_n , 则称 Aleft1A_{\text{left}}^{-1}AA 的左逆类似地, 如果存在矩阵 Aright1Cn×mA_{\text{right}}^{-1} \in \mathbb{C}^{n \times m} 使得 AAright1=ImA A_{\text{right}}^{-1} = I_m , 则称 Aright1A_{\text{right}}^{-1}AA 的右逆.

定理3.33 设 ACm×nA \in \mathbb{C}^{m \times n} , 则 AA 存在左逆的充要条件是 AA 列满秩; AA 存在右逆的充要条件是 AA 行满秩.

易知, 左逆和右逆一般是不唯一的. 比如

A=[100100],Aleft1=[10x01y],其 中x,y可 以 取 任 意 值.A = \left[ \begin{array}{l l} {1} & {0} \\ {0} & {1} \\ {0} & {0} \end{array} \right], \quad \text {则} \quad A _ {\mathrm {l e f t}} ^ {- 1} = \left[ \begin{array}{l l l} {1} & {0} & {x} \\ {0} & {1} & {y} \end{array} \right], \quad \text {其 中} x, y \text {可 以 取 任 意 值}.