【机器学习】031--简而美的相似对⻆矩阵

Posted by ShawnD on August 29, 2020

构造对⻆化转换矩阵 P 的思路

既然我们知道对⻆矩阵是具有最佳性质的相似矩阵,并且我们可以通过$P^{-1}AP$得到矩阵 A 的相似对⻆矩阵,那么转换矩阵 P 给如何构造?

⾸先,矩阵 P 和 A ⼀样,均为 n 阶⽅阵。为了⽅便分析和描述,我们把它写成⼀组列向量并排排列的形式:

\[P = \begin{bmatrix}p_1 & p_2 & ... & p_n\end{bmatrix}\]

即 n 个 n 维列向量的横向排列。有了这个表达的基础,我们下⾯开始推导:

针对 的表达式$P^{-1}AP = \Lambda$,两边同时左乘矩阵 P,则有 $AP = PA$,我们进⼀步利⽤完整形式展开:

\[A\begin{bmatrix}p_1, p_2, ..., p_n\end{bmatrix} = \begin{bmatrix}p_1, p_2, ..., p_n\end{bmatrix}\begin{bmatrix}\lambda_1 & & & \\ & \lambda_2 & & \\ & & \cdots & \\ & & & \lambda_n\end{bmatrix}\]

最终有:

\[\begin{bmatrix}Ap_1, Ap_2, ..., Ap_n\end{bmatrix} = \begin{bmatrix}\lambda_1p_1, \lambda_2p_2, ..., \lambda_np_n\end{bmatrix}\]

为了上⾯这个等式能成⽴,就必须让左右两边的向量在每个维度上分别相等。即

\[Ap_n = \lambda_np_n\]

此时问题就进⼀步具体化了。

第⼀步是:我们要找到满⾜上述等式的这⼀组向量$p_1, p_2, …, p_n$ 。找到它们之后,我们将其横向排列,就构成了我们苦⼼ 寻找的转换矩阵

\[P = \begin{bmatrix}p_1 & p_2 & ... & p_n\end{bmatrix}\]

第⼆步是:将分别与向量 $p_1, p_2, …, p_n$ 对应的值 $\lambda_1, \lambda_2, …, \lambda_n$ 依序沿着对⻆线排列,就构成了与矩阵 A 相似的对⻆矩阵

\[\Lambda = \begin{bmatrix} \lambda_1 & & & \\ & \lambda_2 & & \\ & & ... & \\ & & & \lambda_n \end{bmatrix}\]

引⼊特征向量和特征值

“特征”⼆字到底指什么

满⾜上⽂中介绍的等式: $Ap = \lambda p$的⾮零列向量$p_i$和对应的值$\lambda_i$分别称之为⽅阵的 特征向量特征值

为什么称之为“特征”?是因为这⼀类向量和值属于该⽅阵 A 的固有属性。

⼀般而⾔,对于⼀个向量 x,在矩阵 A 的作⽤下发⽣线性变换 Ax=b,变换后,向量 x 的⽅向和⻓度都会发⽣变化,如果 A 不是⽅阵,连向量的维度都会发⽣改变。而我们从$Ap = \lambda p$这个式⼦中却能够发现这个重要的现象:

在⽅阵 A 的变换作⽤下,特征向量 p 的线性变换就是在其向量⽅向上进⾏$\lambda$倍的伸缩变换。说得更直⽩⼀些,就是仅仅只有向量的⻓度发⽣改变,但是⽅向并不改变。具备了这种特殊性,就称 之为特征。

我们接着再观察⼀下对⻆化的等式:$P^{-1}AP = \Lambda$ ,看看能否发现其他更多的特性。

  • ⾸先:从等式直接看出,由特征向量构成的矩阵 P 要求是可逆的,也就是说⽅阵 A 的特征向量必须满⾜线性⽆关,矩 阵 A 才能进⾏对⻆化。
  • 其次:我们把等式右侧移到左侧,有: $(A - \lambda I)p = 0$,⽤前⾯知识描述就是,向量 p 是矩阵 $A - \lambda I$ 的零空间,由 于向量 p 有⾮零的前提条件,因此 $A - \lambda I$ 是⼀个不可逆矩阵

⼏何意义

对于⼀个特定向量 v,如果我们使⽤默认基底$(e_1, e_2, …, e_n)$ 对其进⾏表⽰,向量即被表⽰为:$x_1e_1 + x_2e_2 + … + x_ne_n$ 。使用方阵A对其进行线性变换, 那么正如我们前面所介绍的, 这一组默认的基底就会变成⼀组新的⽬标向量,⼀般情况下,原始的 基向量和转换后的⽬标向量是不共线的。

此时,我们对该向量更换⼀组基底进⾏表⽰,采⽤⽅阵 A 的⼀组特征向量$(p_1, p_2, …, p_n)$作为其新的基底,则该向量表⽰ 为$y_1p_1 + y_2p_2 + … + y_np_n$, 其新的坐标为$\begin{bmatrix}y_1 & y_2 & … & y_n\end{bmatrix}^T$,在此基础上利⽤⽅阵 A 对其进⾏线性变换:

\[Av = A(y_1p_1 + y_2p_2 + ... + y_np_n) = Ay_1p_1 + Ay_2p_2 + ... + Ay_np_n\]

再⽤上我们前⾯讲过的$Ap = \lambda p$ ,替换⼀下就有:

\[Ay_1p_1 + Ay_2p_2 + ... + Ay_np_n = \lambda_1y_1p_1 + \lambda_2 y_2 p_2 + ... + \lambda_ny_np_n\]

这个结果是⾮常漂亮的,利⽤基底$(p_1, p_2, …, p_n)$表⽰的向量 v,经过矩阵 A 的线性转换,其基底在保持不变的前提下,向量坐标由$\begin{bmatrix}y_1, y_2, …, y_n\end{bmatrix}^T$变为 $\begin{bmatrix}\lambda_1y_1, \lambda_2y_2, …, \lambda_ny_n\end{bmatrix}^T$。

我们最后再来概况⼀下其⼏何含义:

对⼀个向量进⾏矩阵 A 描述的线性变换,如果⽤矩阵 A 的特征向量$(p_1, p_2, …, p_n)$作为基底对该向量进⾏坐标表⽰,该空间变换即可简化为各个维度的坐标值在其基向量⽅向上对应伸缩$\lambda_i$倍。

⽤基变换的⽅法再次推导对⻆化过程

利⽤基底变换的⽅法,我们再来分析⼀下对⻆化的具体过程,我们来看⼀个三维空间的例⼦。

矩阵 A 的三个特征向量依次为:

\[p_1 = \begin{bmatrix}p_{11} \\ p_{21} \\ p_{31}\end{bmatrix}, p_2 = \begin{bmatrix}p_{12} \\ p_{22} \\ p_{32}\end{bmatrix}, p_3 = \begin{bmatrix}p_{13} \\ p_{23} \\ p_{33}\end{bmatrix}\]

⽤默认基底 $e_1, e_2, e_3$ 和由特征向量 $p_1, p_2, p_3$ 构成的基底分别对同⼀向量进⾏表⽰,有:$x_1e_1 + x_2e_2 + x_3e_3 = y_1p_1 + y_2p_2 + y_3p_3$,我们利⽤基向量将这个等式展 开:

\[x_1 \begin{bmatrix} 1 \\ 0 \\ 0\end{bmatrix} + x_2 \begin{bmatrix} 0 \\ 1 \\ 0\end{bmatrix} + x_3 \begin{bmatrix} 0 \\ 0 \\ 1\end{bmatrix} = y_1 \begin{bmatrix} p_{11} \\ p_{21} \\ p_{31}\end{bmatrix} + y_2 \begin{bmatrix} p_{12} \\ p_{22} \\ p_{32}\end{bmatrix} + y_3 \begin{bmatrix} p_{13} \\ p_{23} \\ p_{33}\end{bmatrix}\]

再对式⼦进⾏展开:

\[x_1 = p_{11}y_1 + p_{12}y_2 + p_{13}y_3\] \[x_2 = p_{21}y_1 + p_{22}y_2 + p_{23}y_3\] \[x_3 = p_{31}y_1 + p_{32}y_2 + p_{33}y_3\]

很明显,可以⽤矩阵乘法进⾏表⽰:

\[\begin{bmatrix} x_1 \\ x_2 \\ x_3\end{bmatrix} = \begin{bmatrix} p_{11} & p_{12} & p_{13}\\ p_{21} & p_{22} & p_{23} \\ p_{31} & p_{32} & p_{33}\end{bmatrix} \begin{bmatrix} y_1 \\ y_2 \\ y_3\end{bmatrix} \Rightarrow x = Py\]

取逆,则有$y = P^{-1}x$ 。

因此,对于向量在空间中的位置改变,在基底$(e_1, e_2, …, e_n)$ 进⾏的坐标表⽰下,我们的变换矩阵为 A,而在基底$(p_1, p_2, …, p_n)$ 下,变换矩阵为$\Lambda$ 。

那么,⾸先从基底$(e_1, e_2, …, e_n)$变换到基底 $(p_1, p_2, …, p_n)$下,向量的坐标值由 x 变为 $P^{-1}x$,接着就能利⽤左乘矩阵$\Lambda$进⾏线性变换,即$\Lambda P^{-1} x$ ,线性变换结束后,我们要重新回到基底$(e_1, e_2, …, e_n)$下的坐标表⽰,所以再做⼀次逆变换,即$P \Lambda P^{-1}x$,整个过程和 Ax 殊途同归,因此才有了$A = P \Lambda P^{-1}$ 。

说到这⾥,对⻆化⾥涉及的正反等式:

\[A = P \Lambda P^{-1}, \Lambda = P^{-1}AP\]

QA

Q: 特征值和矩阵相似有什么关系?