线性代数之——对角化和伪逆

这部分我们通过选择更好的基底来产生更好的矩阵。当我们的目标是对角化矩阵时,一个选择可以是一组特征向量基底,另外一个选择可以是两组基底,输入基底和输出基底是不一样的。这些左右奇异向量是矩阵四个基本子空间中标准正交的基向量,它们来自于 SVD。

事实上,所有对 AA 的分解都可以看作是一个基的改变。在这里,我们只关注两个突出的例子,有一组基的 Λ\Lambda 和有两组基的 Σ\Sigma

S1AS=ΛS^{-1} AS=\Lambda 如果输入和输出基都是 AA 的特征值。
U1AV=ΣU^{-1} AV=\Sigma 如果这些基分别是 ATAA^TAAATAA^T 的特征值。

只有当 AA 是方阵并且有 nn 个不相关的特征向量时,我们才能将其对角化成 Λ\Lambda。而通过 SVD,任意矩阵都可以对角化成 Σ\Sigma。如果一个矩阵是对称的、反对称的或者正交的,那么有 ATA=AATA^TA=AA^T,在这种情况下,奇异值是特征值的绝对值,上面的两个对角化形式除了一个 1-1 或者 eiθe^{i\theta} 的因子外是相同的。

另外,注意 Gram-Schmidt 分解 A=QRA=QR 只选择了一个新的基底,也就是通过 QQ 给出的输出正交基,而输入基底则是标准基由 II 给出。我们只得到一个上三角矩阵而不是对角矩阵,A=QRIA=QRI ,输出基矩阵在左边而输入基矩阵在右边。

1. 相似矩阵:S,S1AS  W1AWS,S^{-1}AS \space 和 \space W^{-1}AW

让我们以一个方阵和一组基开始,输入空间 VV 和输出空间 WW 都是 RnR ^n。在标准基下,线性变换 TT 是乘以矩阵 AA。如果我们改变了输入空间的基,那么矩阵就变成了 AMAMMM 是基变换矩阵;如果我们改变了输出空间的基,那么矩阵就变成了 M1AM^{-1}A

如果以上面同样的方式同时改变了两组基,那么新的矩阵就为 M1AMM^{-1}AM。而一组好的基是矩阵的特征向量,我们就有 S1AS=ΛS^{-1} AS=\Lambda

当基中包含特征向量 x1,,xn\boldsymbol{x_1},\cdots,\boldsymbol{x_n} 时,变换 TT 对应的矩阵是 Λ\Lambda

  • 证明
    要找到矩阵的第一列,输入第一个基向量 x1\boldsymbol{x_1},由 Ax1=λ1x1A\boldsymbol{x_1}=\lambda_1\boldsymbol{x_1} 可得矩阵的第一列为 (λ1,0,,0)(\lambda_1, 0, \cdots,0)。同理可得其它的每一列,最终矩阵为一个对角矩阵,对角线上元素为特征值。

  • 例子

要找到投影到直线 y=xy=-x 的变换矩阵。坐标 (1,0)(1, 0) 投影到 (0.5,0.5)(0.5, -0.5),坐标 (0,1)(0, 1) 投影到 (0.5,0.5)(-0.5, 0.5),所以在标准基下,变换矩阵为

A=[0.50.50.50.5]A = \begin{bmatrix} 0.5&-0.5 \\ -0.5&0.5\end{bmatrix}

如果以 AA 的特征向量 x1=(1,1)\boldsymbol{x_1}=(1, -1)x2=(1,1)\boldsymbol{x_2}=(1, 1) 为基的话:x1\boldsymbol{x_1} 与直线共线,投影后还是其自身;x2\boldsymbol{x_2} 垂直于直线,投影后为零向量,所以在这组基下的变换矩阵为

Λ=[1000]\Lambda = \begin{bmatrix} 1&0 \\ 0&0\end{bmatrix}

如果选择另外一组基 v1=w1=(2,0)\boldsymbol{v_1}=\boldsymbol{w_1}=(2, 0)v2=w2=(1,1)\boldsymbol{v_2}=\boldsymbol{w_2}=(1, 1)

我们可以一列一列找到变换矩阵,v1=(2,0)\boldsymbol{v_1}=(2, 0),投影后坐标为 (1,1)=w1w2(1, -1)=\boldsymbol{w_1}-\boldsymbol{w_2}v2=(1,1)\boldsymbol{v_2}=(1, 1),投影后为零向量,所以在这组基下的变换矩阵为

B=[1010]B = \begin{bmatrix} 1&0 \\ -1&0\end{bmatrix}

另外我们也可以利用基变换矩阵,由 V,WIV,W\to I 标准基的基变换矩阵 MM

M=[2101]M = \begin{bmatrix} 2&1 \\ 0&1\end{bmatrix}

接下来,我们先将输入变换到标准基下,再应用标准基下的变换矩阵 AA,最后再将输出变换到 WW 空间下,这样得到的以 V,WV,W 为基的变换矩阵就为

B=M1AM=[1010]B=M^{-1}AM=\begin{bmatrix} 1&0 \\ -1&0\end{bmatrix}

这和上面的结果是一样的,还说明了 BBAA 是相似的,对于任意的非标准基底,我们都可以采用类似的方式来求取变换矩阵。

线性代数之——对角化和伪逆

2. SVD

现在,输入基 v1,,vn\boldsymbol{v_1},\cdots,\boldsymbol{v_n} 和输出基 u1,,um\boldsymbol{u_1},\cdots,\boldsymbol{u_m} 不一样,事实上,输入空间 RnR^n 可以和输出空间 RmR^m 不一样。同样,最好的矩阵依然是对角矩阵,只不过大小是 m×nm×n 的。为了到达对角矩阵 Σ\Sigma,每个输入向量 vj\boldsymbol{v_j} 必须被变换到输出向量 uj\boldsymbol{u_j} 的一个倍数,而这个倍数就是对角线上的奇异值。

线性代数之——对角化和伪逆

要说明的是,AAΣ\Sigma 代表的是相同的变换,矩阵 AA 利用 RnR^nRmR^m 中的标准基,而 Σ\Sigma 则以 v\boldsymbol vu\boldsymbol u 分别作为输入基和输出基,正交矩阵 VVUU 则代表基变换矩阵。

线性代数之——对角化和伪逆

3. 极分解

每个复数都可以表示成极坐标的形式 reiθre^{i\theta},将这些数想象成一个 1×11×1 的矩阵,那么 r0r\geqslant 0 可以看作是是一个半正定矩阵 HHeiθe^{i\theta} 可以看作是一个正交矩阵 QQ,因为 eiθ=cosθ+isinθ=1|e^{i\theta}| = |cos\theta+isin\theta|=1。极分解将上述的分解扩展到矩阵:正交乘以正定,A=QHA=QH

每个实的方阵都可以分解成 A=QHA=QH 的形式,其中 QQ 是一个正交矩阵,HH 是一个对称的半正定矩阵。如果 AA 可逆,那么 HH 是正定的。

  • 证明

VTV=IA=UΣVT=UVTVΣVT=(UVT)(VΣVT)=QHV^TV = I \to A=U\Sigma V^T=UV^TV\Sigma V^T = (UV^T)(V\Sigma V^T)=QH

第一项两个正交矩阵的乘积还是正交矩阵,第二项是半正定的因为其特征值位于 Σ\Sigma 的对角线上,都大于等于零。

H2=VΣVTVΣVT=VΣ2VT=ATAH^2=V\Sigma V^TV\Sigma V^T=V\Sigma^2 V^T=A^TA

HHATAA^TA 的对称正定平方根。同样地,我们有:

UTU=IA=UΣVT=UΣUTUVT=(UΣUT)UVT=KQU^TU = I \to A=U\Sigma V^T=U\Sigma U^TUV^T = (U\Sigma U^T)UV^T=KQ

线性代数之——对角化和伪逆

4. 伪逆

矩阵 AA 乘以行空间中的 vi\boldsymbol{v_i} 得到列空间中的 σiui\sigma_i\boldsymbol{u_i}A1A^{-1} 应该做相反的操作。如果有 Av=σuA\boldsymbol{v}=\sigma\boldsymbol{u},那么 A1u=v/σA^{-1}\boldsymbol{u}={\boldsymbol{v}}/{\sigma},如果逆矩阵存在的话。

线性代数之——对角化和伪逆

伪逆 A+A^+ 是一个 n×mn×m 的矩阵。可以看到,如果 A1A^{-1} 存在的话,那么伪逆也就等于逆矩阵,在这种情况下 n=m=rn=m=rA+=A1=(UΣVT)1=VΣ1UTA^+=A^{-1}=(U\Sigma V^T)^{-1}=V\Sigma^{-1}U^T。只有当 r<mr<m 或者 r<nr<n 时我们才需要伪逆,伪逆有着相同的秩 rr

线性代数之——对角化和伪逆

rr 个列空间中的向量被送回到了行空间,其它的向量位于左零空间则被送回到了零向量。注意到 Σ+Σ\Sigma^+\Sigma 是我们能得到的最接近于恒等矩阵的矩阵,它是一个投影矩阵,部分是 II 部分是 00

线性代数之——对角化和伪逆

假设 r=n<mr=n<m,那么 ATAA^TA 是可逆的,

(ATA)1AT左逆 A+A=IA(ATA)1AT=P=\underbrace{(A^TA)^{-1}A^T}_{\text{左逆 $A^+$}}A=I \to A(A^TA)^{-1}A^T=P=投影到列空间的投影矩阵

假设 r=m<nr=m<n,那么 AATAA^T 是可逆的,

AAT(AAT)1右逆 A+=IAT(AAT)1A=P=A\underbrace{A^T(AA^T)^{-1}}_{\text{右逆 $A^+$}}=I \to A^T(AA^T)^{-1}A=P=投影到行空间的投影矩阵

线性代数之——对角化和伪逆

之前我们假设 ATAA^TA 是可逆的,那么当 Ax=bAx=b 不可解的时候,我们求助于方程 ATAx^=ATbA^TA\hat x=A^Tb 得到最小二乘解。现在矩阵 AA 可能具有相关的列,即 r<nr<n,上述方程可能有很多解,其中一个解来自于伪逆 x+=A+bx^+=A^+b

我们可以验证,ATAA+b=ATbA^TAA^+b=A^Tb,因为 bb 可以分解为两部分, p=AA+bp=AA^+b 是其投影到列空间的分量,e=bAA+be=b-AA^+b 是左零空间的分量,乘以 ATA^T 后为零向量。

线性代数之——对角化和伪逆

任意零空间的向量可以被加到 x+x^+ 上得到其它的解 x^\hat x,但 x+x^+ 是其中最短的一个。

线性代数之——对角化和伪逆

获取更多精彩,请关注「seniusen」!
线性代数之——对角化和伪逆