34.左右逆,伪逆
左右逆
之前讲到的逆都是针对可逆方阵而言的,对于长方矩阵,实际上也有广义的逆,那就是左逆和右逆
-
左逆
当矩阵列满秩,即 r = n r = n r=n时,该矩阵有左逆(虽然各列线性无关,但是 r < m r < m r<m,列向量无法组成一组基,所以没有右逆),设该矩阵为 A A A, A A A列满秩,所以 A T A A^T A ATA是可逆矩阵,有 ( A T A ) − 1 A T A = I (A^T A)^{-1} A^T A = I (ATA)−1ATA=I,所以左逆 A l e f t − 1 = ( A T A ) − 1 A T A^{-1}_{left} = (A^T A)^{-1} A^T Aleft−1=(ATA)−1AT,且得到的单位矩阵是 n n n阶的
-
右逆
当矩阵 A A A行满秩时, A A T A A^T AAT是可逆矩阵,有 A A T ( A A T ) − 1 = I A A^T (A A^T)^{-1} = I AAT(AAT)−1=I,所以有右逆 A r i g h t − 1 = A T ( A A T ) − 1 A^{-1}_{right} = A^T (A A^T)^{-1} Aright−1=AT(AAT)−1,且得到的单位矩阵是 m m m阶的
-
当列满秩时,有 A l e f t − 1 A = I A^{-1}_{left} A = I Aleft−1A=I,但是如果把左逆放到右边,就可以得到: A A l e f t − 1 = A ( A T A ) − 1 A T A A^{-1}_{left} = A (A^T A)^{-1} A^T AAleft−1=A(ATA)−1AT,即 A A A列空间的投影矩阵;同理,当行满秩时, A r i g h t − 1 A A^{-1}_{right} A Aright−1A是 A A A行空间的投影矩阵
伪逆
-
伪逆
可以发现,矩阵在左或右无逆是分别由零空间和左零空间不只有 0 ⃗ \vec{0} 0引起的,因为如果左乘了零空间的非零向量得到 0 ⃗ \vec{0} 0,乘上任何矩阵都无法得到原来的向量,右乘同理
但是如果不考虑这两个零空间呢,比如只让矩阵乘上它行空间中的向量,很明显这会得到它列空间中的向量,接下来思考这个过程是否可逆
因为行空间和列空间的维数一致,所以二者中的向量可能存在一定的对应关系,也就是映射,考虑行空间中的两个不同向量 x ⃗ , y ⃗ \vec{x} , \vec{y} x,y,让它们分别对应列空间中的 A x ⃗ , A y ⃗ A \vec{x} , A \vec{y} Ax,Ay
证明 A x ⃗ ≠ A y ⃗ A \vec{x} \ne A \vec{y} Ax=Ay:
若 A x ⃗ = A y ⃗ A \vec{x} = A \vec{y} Ax=Ay,即 A ( x ⃗ − y ⃗ ) = 0 ⃗ A (\vec{x} - \vec{y}) = \vec{0} A(x−y)=0,则 x ⃗ − y ⃗ \vec{x} - \vec{y} x−y属于 A A A的零空间,又 x ⃗ , y ⃗ \vec{x} , \vec{y} x,y都属于 A A A的行空间,所以着 x ⃗ − y ⃗ \vec{x} - \vec{y} x−y同时属于零空间和行空间,而行空间与零空间互为正交补,所以 x ⃗ − y ⃗ \vec{x} - \vec{y} x−y只能为 0 ⃗ \vec{0} 0,即 x ⃗ = y ⃗ \vec{x} = \vec{y} x=y,与条件矛盾,假设不成立,因而 A x ⃗ ≠ A y ⃗ A \vec{x} \ne A \vec{y} Ax=Ay
由此可以说明行空间和列空间中向量的一一对应关系,而由列空间中的向量得到行空间中对应向量所用的矩阵即为原矩阵的伪逆,记作 A + A^+ A+,即 x ⃗ = A + ( A x ⃗ ) \vec{x} = A^+ (A \vec{x}) x=A+(Ax)
考虑 A + A A^+ A A+A对任意向量的作用,对于任意一个 n n n维向量 x ⃗ \vec{x} x,它一定由零空间和行空间中的向量线性组合而成,零空间中的向量乘 A A A得到 0 ⃗ \vec{0} 0,而行空间中的向量乘 A + A A^+ A A+A得到其本身,所以 A + A A^+ A A+A可视为一个投影矩阵,用于把任意 n n n维向量投影至 A A A的行空间;同理, A A + A A^+ AA+也可视为一个投影矩阵,用于把任意 m m m维向量投影至 A A A的列空间
-
求伪逆
使用 S V D SVD SVD求伪逆,先将一个任意矩阵 A A A分解为 U Σ V T U \Sigma V^T UΣVT
有 Σ = [ σ 1 ⋯ 0 0 ⋯ 0 ⋮ ⋱ ⋮ ⋮ ⋯ ⋮ 0 ⋯ σ r 0 ⋯ 0 0 ⋯ 0 0 ⋯ 0 ⋮ ⋯ ⋮ ⋮ ⋱ ⋮ 0 ⋯ 0 0 ⋯ 0 ] \Sigma = \begin{bmatrix} \sigma_1 & \cdots & 0 & 0 & \cdots & 0 \\ \vdots & \ddots & \vdots & \vdots & \cdots & \vdots \\ 0 & \cdots & \sigma_r & 0 & \cdots & 0 \\ 0 & \cdots & 0 & 0 & \cdots & 0 \\ \vdots & \cdots & \vdots & \vdots & \ddots & \vdots \\ 0 & \cdots & 0 & 0 & \cdots & 0 \end{bmatrix} Σ= σ1⋮00⋮0⋯⋱⋯⋯⋯⋯0⋮σr0⋮00⋮00⋮0⋯⋯⋯⋯⋱⋯0⋮00⋮0 ,很容易求得 Σ \Sigma Σ的伪逆为 [ 1 σ 1 ⋯ 0 0 ⋯ 0 ⋮ ⋱ ⋮ ⋮ ⋯ ⋮ 0 ⋯ 1 σ r 0 ⋯ 0 0 ⋯ 0 0 ⋯ 0 ⋮ ⋯ ⋮ ⋮ ⋱ ⋮ 0 ⋯ 0 0 ⋯ 0 ] \begin{bmatrix} \dfrac{1}{\sigma_1} & \cdots & 0 & 0 & \cdots & 0 \\ \vdots & \ddots & \vdots & \vdots & \cdots & \vdots \\ 0 & \cdots & \dfrac{1}{\sigma_r} & 0 & \cdots & 0 \\ 0 & \cdots & 0 & 0 & \cdots & 0 \\ \vdots & \cdots & \vdots & \vdots & \ddots & \vdots \\ 0 & \cdots & 0 & 0 & \cdots & 0 \end{bmatrix} σ11⋮00⋮0⋯⋱⋯⋯⋯⋯0⋮σr10⋮00⋮00⋮0⋯⋯⋯⋯⋱⋯0⋮00⋮0
因为 U , V T U , V^T U,VT均为正交矩阵,是可逆的,且伪逆在一定条件下本质上对应一个逆操作,所以 A + = V Σ + U T A^+ = V \Sigma^+ U^T A+=VΣ+UT
打赏
制作不易,若有帮助,欢迎打赏!