© 2015-2020 Jacob Ström、Kalle Åström 与 Tomas Akenine-Möller

正在加载并构建本章……

第 10 章:特征值与特征向量





10.1 引言


本章将介绍方阵的特征值特征向量。这些概念用途广泛,例如帮助理解并直观呈现线性映射、分析机械结构的稳定性、求解微分方程组、识别图像、解释并可视化二次方程,以及进行图像分割。先从两个例子开始。

例 10.1: 特征脸
识别图像中人脸的方法有很多。当前最先进的方法通常采用深度学习,而线性代数正是其中的重要组成部分。理解和压缩人脸图像的一种经典方法,是使用所谓的“特征脸”。交互式图解 10.1展示了如何仅用两个参数生成新的人脸。只要给定两个数,就可以合成图中所示的一系列人脸图像。因此,这项技术可用于合成新图像;由于每幅新图像只需存储两个数,也可将其视为一种图像压缩方法。 它还可用于图像理解:对一幅新图像,可以计算其对应坐标 $(x_1,x_2)$。$\R^2$ 中的不同区域可对应微笑、张嘴等不同面部状态。
交互式图解 10.1: 左:两个坐标 $(x_1,x_2)$ 指定输入。右:映射 $(x_1,x_2) \mapsto \vc{O} + x_1 \vc{E}_1 + x_2 \vc{E}_2$ 的结果, 其中 $\vc{O}$ 是平均图像,$\vc{E}_1$ 和 $\vc{E}_2$ 是前两个特征脸。移动黑色圆点,观察输出如何变化。
交互式图解 10.1: 左:两个坐标 $\hid{(x_1,x_2)}$ 指定输入。右:映射 $\hid{(x_1,x_2) \mapsto \vc{O} + x_1 \vc{E}_1 + x_2 \vc{E}_2}$ 的结果, 其中 $\hid{\vc{O}}$ 是平均图像,$\hid{\vc{E}_1}$ 和 $\hid{\vc{E}_2}$ 是前两个特征脸。移动黑色圆点,观察输出如何变化。
平均图像 $\vc{O}$ 与两个特征脸 $\vc{E}_1$、$\vc{E}_2$ 如下所示。
用于生成 $\vc{O}$、$\vc{E}_1$ 和 $\vc{E}_2$ 的图像见图 10.2。等我们进一步了解特征值特征向量后,例 10.18会更详细地解释这一过程。简言之,先用图 10.2中的图像计算平均图像 $O$ 和协方差矩阵,再取协方差矩阵中对应于两个最大特征值的两个特征向量,作为 $\vc{E}_1$ 和 $\vc{E}_2$。
交互式图解 10.2: 这 23 幅图像用于计算交互式图解 10.1所采用的基。
交互式图解 10.2: 这 23 幅图像用于计算交互式图解 10.1 所采用的基。

例 10.2: PageRank
Google 如何为网页排名? 本例考察一个简化的网页排名模型。核心思想是:如果许多网页——尤其是排名较高的网页——都链接到某个网页,那么该网页的排名就应更高。这是一个递归问题:要计算一个网页的排名,就需要知道其他网页的排名。也可以把它理解为:一个人从某个主页出发,随机单击页面上的链接;经过一段随机浏览后,页面排名就是此人出现在相应主页上的概率。为让所有主页彼此连通,再规定以一个较小概率(例如 $15\%$)直接跳转到任意随机主页。下面看一个玩具示例。 设互联网只有四个主页:1—“沉浸式数学”,2—“线性代数”,3—“布尔代数”,4—“无聊代数”。
四个网页之间的链接关系
图中的箭头表示各主页之间的链接。 设访问各主页的概率由向量 $\vc{v} = \begin{pmatrix} v_1 \\ v_2 \\ v_3 \\ v_4 \end{pmatrix}$ 给出,其中 $v_i$ 表示位于第 $i$ 个主页的概率。若在当前主页的链接中随机选择一个,下一步访问各主页的概率便为 $ \vc{w} = \mx{A} \vc{v}$, 其中转移矩阵 $\mx{A}$ 为
\begin{equation} \mx{A} = \begin{pmatrix} 0 & 1 & 1/2 & 1 \\ 1/2 & 0 & 1/2 & 0 \\ 1/2 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \end{pmatrix} . \end{equation} (10.1)
第一列有两个非零元素。若当前位于主页 $1$,便有两个链接:一个指向主页 2,另一个指向主页 3。因此,下一步到达主页 2 和主页 3 的概率各为 $0.5$。类似地,第 $j$ 列的元素由主页 $j$ 上的链接决定。 在网页排名问题中,通常还会这样修正概率:以较小概率(例如 $0.15$)等概率随机选择任一主页,以概率 $0.85$ 按照页面链接选择下一主页。于是转移矩阵变为
\begin{equation} \mx{B} = 0.15 \begin{pmatrix} 1/4 & 1/4 & 1/4 & 1/4 \\ 1/4 & 1/4 & 1/4 & 1/4 \\ 1/4 & 1/4 & 1/4 & 1/4 \\ 1/4 & 1/4 & 1/4 & 1/4 \end{pmatrix} + 0.85 \begin{pmatrix} 0 & 1 & 1/2 & 1 \\ 1/2 & 0 & 1/2 & 0 \\ 1/2 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \end{pmatrix} . \end{equation} (10.2)
网页排名与满足下式的所谓平稳概率向量 $\vc{p}$ 有关:
\begin{equation} \mx{B} \vc{p } = \vc{p} . \end{equation} (10.3)
这是关于未知量 $\vc{p}$ 的线性方程,可以用高斯消元法求解;它也与本章讨论的特征向量概念密切相关。 在本例中,向量 $\vc{p}$ 为
\begin{equation} \vc{p} = \begin{pmatrix} p_1\\ p_2\\ p_3\\ p_4 \end{pmatrix} = \begin{pmatrix} 0.43\\ 0.31\\ 0.22\\ 0.04 \end{pmatrix} \end{equation} (10.4)
显然,“沉浸式数学”理应位居榜首。 例 10.12将利用本章关于特征值特征向量的知识,继续讨论如何求解互联网这类超大规模网络的 PageRank 问题。
10.2 特征值与特征向量


先从特征值特征向量的定义开始。

定义 10.1: 特征值与特征向量
设 $\mx{A}$ 为方阵。若非零列向量 $\vc{v}$ 满足 $\mx{A}\vc{v}$ 与 $\vc{v}$ 平行,即存在标量 $\lambda$ 使
\begin{equation} \mx{A}\vc{v} = \lambda \vc{v} . \end{equation} (10.5)
则称 $\vc{v}$ 为特征向量,标量 $\lambda$ 为对应的特征值
第 9 章中,我们看到线性映射可以表示为矩阵乘法。对于线性映射,也以对应方式定义特征向量特征值:对线性映射 $F$,若非零向量 $\vc{v}$ 满足 $F(\vc{v})$ 与 $\vc{v}$ 平行,即 $F(\vc{v}) = \lambda \vc{v}$,则称 $\vc{v}$ 为特征向量,$\lambda$ 为对应的特征值

例 10.3: 寻找特征向量游戏
值得注意的是,无须知道坐标系,也能良好定义线性映射特征向量。下面的例子与交互式图解展示了这一基本概念,可以把它看作一场“寻找特征向量”的游戏。
$\vc{v}$
$F(\vc{v})$
$\vc{e}_1$
$\vc{e}_2$
$\frac{\ln{F(\vc{v})}}{\ln{\vc{v}}}=$
交互式图解 10.3: 这是一个把 $\vc{v}$(红色向量)映射为 $F(\vc{v})$(蓝色向量)的示例。 未知线性映射 $F$ 接受二维向量 $\vc{v}$ 并返回二维向量 $F(\vc{v})$。在图中移动输入向量 $\vc{v}$,观察结果。试着调整 $\vc{v}$,直到 $F(\vc{v})$ 与 $\vc{v}$ 平行;此时你就找到了一个特征向量。
交互式图解 10.3: 这是一个把 $\hid{\vc{v}}$(红色向量)映射为 $\hid{F(\vc{v})}$(蓝色向量)的示例。 未知线性映射 $\hid{F}$ 接受二维向量 $\hid{\vc{v}}$ 并返回二维向量 $\hid{F(\vc{v})}$。在图中移动输入向量 $\hid{\vc{v}}$,观察结果。试着调整 $\hid{\vc{v}}$,直到 $\hid{F(\vc{v})}$ 与 $\hid{\vc{v}}$ 平行;此时你就找到了一个特征向量。
交互式图解 10.3还会计算 $\frac{\ln{ F(\vc{v}) } }{\ln{\vc{v}}}$。 移动输入向量 ${\vc{v}}$,看看能找到多少个特征向量,并尝试确定每个特征向量对应的特征值
交互式图解 10.3中,你可能已经注意到,改变向量 $\vc{v}$ 的长度,并不会改变它是不是特征向量。这是由映射的线性性质决定的,下面的定理给出说明。

定理 10.1:
若 $\vc{v}$ 是特征值为 $\lambda$ 的特征向量,则对任意 $\mu \neq 0$,$\mu \vc{v}$ 也是特征值为 $\lambda$ 的特征向量。

若 $\vc{v}$ 是特征值为 $\lambda$ 的特征向量,则 $\vc{v} \neq 0$ 且 $F(\vc{v}) = \lambda \vc{v}$。对任意非零倍数 $\vc{u} = \mu \vc{v}$,都有 $\vc{u} \neq 0$,并且 $F(\vc{u}) = F( \mu \vc{v}) = \mu F(\vc{v}) = \mu \lambda \vc{v} = \lambda \vc{u}$。定理得证。
$\square$


因此,特征向量总可以重新缩放,但别忘了特征向量必须非零。

例 10.4: 线性映射的最大伸长倍数
例 10.3以交互方式展示了特征向量特征值。另一个有趣的问题是:相对于输入向量 $\vc{v}$,线性映射 $F$ 的输出 $F(\vc{v})$ 最多会伸长多少?下图把输入向量 $\vc{v}$ 的长度固定为 $1$,你可以用图下方的滑块旋转它。注意,输出向量 $F(\vc{v})$ 的端点落在一条椭圆上。存在一个使伸长倍数最大的方向,而与它垂直的输入方向使伸长倍数最小。本章稍后的第 10.6 节将解释原因,并说明如何计算这些方向。
$\vc{v}$
$F(\vc{v})$
$\vc{e}_1$
$\vc{e}_2$
交互式图解 10.4: 这是一个把 $\vc{v}$(红色向量)映射为 $F(\vc{v})$(蓝色向量)的示例。输入向量长度固定为 $1$。你能找出让输出向量 $F(\vc{v})$ 最长的输入向量 $\vc{v}$ 吗?先尝试一下,再单击“前进”,查看输出向量端点所能落在的椭圆。
交互式图解 10.4: 这是一个把 $\hid{\vc{v}}$(红色向量)映射为 $\hid{F(\vc{v})}$(蓝色向量)的示例。输入向量长度固定为 $1$。你能找出让输出向量 $\hid{F(\vc{v})}$ 最长的输入向量 $\hid{\vc{v}}$ 吗?先尝试一下,再单击“前进”,查看输出向量端点所能落在的椭圆。
10.3 计算特征值与特征向量


本节说明如何计算特征向量特征值。(注意:这里的方法以求多项式的根为基础。实际应用中,通常有更高效的数值方法来求特征值和特征向量。届时往往反过来利用特征值与多项式根之间的联系,通过计算特征值求多项式的根。)

定义 10.2: 特征多项式
设 $\mx{A}$ 为 $n \times n$ 方阵。多项式
\begin{equation} p_{\mx{A}}(\lambda) = \det(\lambda I - \mx{A}) \end{equation} (10.6)
称为 $\mx{A}$ 的特征多项式

定理 10.2:
特征多项式是关于 $\lambda$ 的 $n$ 次多项式。 矩阵 $\mx{A}$ 的特征值 $\lambda$ 正是特征多项式 $p_{\mx{A}}(\lambda)$ 的根。

给定矩阵 $\mx{A}$,怎样计算其特征向量 $\vc{v}$ 及相应的特征值 $\lambda$?方程
\begin{equation} \mx{A}\vc{v} = \lambda \vc{v} , \vc{v} \neq 0 \end{equation} (10.7)
可以改写为
\begin{equation} \lambda \vc{v} - \mx{A}\vc{v} = ( \lambda I - \mx{A} ) \vc{v} = 0. \end{equation} (10.8)
若 $\vc{v}$ 是特征向量,则矩阵 $(\lambda I - \mx{A})$ 有非零零空间向量。根据 定理 7.10,这意味着 $p_{\mx{A}}(\lambda) = \det( \lambda I - \mx{A} ) = 0$。 因此,特征值必为特征多项式的根。反之,对特征多项式的任意根 $\lambda$,方程 $( \lambda I - \mx{A} ) \vc{v} = 0$ 都有非零解 $\vc{v}$。由于 $\mx{A}\vc{v} = \lambda \vc{v}$,这个 $\vc{v}$ 就是特征向量。
$\square$


例 10.5: 利用特征多项式计算特征值与特征向量
计算下列矩阵的特征值特征向量
\begin{equation} \mx{A} = \begin{pmatrix} 5/2 & -3/4 \\ 2 & 0 \end{pmatrix} . \end{equation} (10.9)
特征值特征多项式的根:
\begin{equation} \det( \lambda I - \mx{A} ) = \begin{vmatrix} \lambda -5/2 & 3/4 \\ -2 & \lambda \end{vmatrix} = (\lambda-\frac{5}{2}) (\lambda) - \frac{3}{4}(-2) = \lambda^2 - \frac{5}{2}\lambda + \frac{3}{2} = 0 . \end{equation} (10.10)
方程 $\lambda^2 - \frac{5}{2}\lambda + \frac{3}{2} = 0$ 的两个根为
\begin{equation} \lambda_{1,2} = \frac{5}{4} \pm \sqrt{ \frac{25}{4}-\frac{3}{2}} = \frac{5}{4} \pm \frac{1}{4} . \end{equation} (10.11)
因此两个特征值为 $\lambda_1 = 1$ 和 $\lambda_2 = 3/2$。 对每个特征值,都可以通过求解 $( \lambda I - \mx{A} ) \vc{v} = 0$. 得到相应的特征向量

对特征值 $\lambda_1 = 1$,有
\begin{equation} (1 I - \mx{A}) \vc{v} = \begin{pmatrix} -3/2 & 3/4 \\ -2 & 1 \end{pmatrix} \vc{v} = 0 . \end{equation} (10.12)
该方程组的参数解为
\begin{equation} \vc{v} = t \begin{pmatrix} 1\\ 2 \end{pmatrix} . \end{equation} (10.13)
因此,所有满足下式的向量
\begin{equation} \vc{v} = t \begin{pmatrix} 1\\ 2 \end{pmatrix} , \quad t \neq 0 \end{equation} (10.14)
都是特征值 $1$ 对应的特征向量。必须要求 $t \neq 0$,因为按照定义,零向量不是特征向量。

对特征值 $\lambda_2 = 3/2$,有
\begin{equation} (\frac{3}{2} I - \mx{A}) \vc{v} = \begin{pmatrix} -1 & 3/4 \\ -2 & 3/2 \end{pmatrix} \vc{v} = 0 . \end{equation} (10.15)
该方程组的参数解为
\begin{equation} \vc{v} = t \begin{pmatrix} 3\\ 4 \end{pmatrix} . \end{equation} (10.16)
因此,所有满足下式的向量
\begin{equation} \vc{v} = t \begin{pmatrix} 3\\ 4 \end{pmatrix} , \quad t \neq 0 \end{equation} (10.17)
都是特征值 $3/2$ 对应的特征向量交互式图解 10.5展示了这个线性映射。移动红色输入箭头,可直观“验证”这些向量确实是特征向量:此时蓝色输出向量会与红色输入向量平行。
$\vc{v}$
$F(\vc{v})$
交互式图解 10.5: 图中展示线性映射 $F(\vc{v}) = \mx{A}\vc{v}$:输入向量 $\vc{v}$ 为红色,输出向量 $F(\vc{v})$ 为蓝色。把输入向量置于 $(1,2)$,可以看到蓝色输出向量与输入向量平行,从而验证它确实是特征向量;蓝色向量与红色向量等长,又可验证其特征值为 $1$。对 $(3,4)$ 方向也可作同样检查。本例中的两个特征向量方向十分接近:一个在 $(2,4)$ 方向,另一个在 $(3,4)$ 方向。不过 $(3,4)$ 方向的特征值更大($3/2$ 而非 $1$),因此从 $(2,4)$ 移到 $(3,4)$ 时,蓝色向量会显著增长。
交互式图解 10.5: 图中展示线性映射 $\hid{F(\vc{v}) = \mx{A}\vc{v}}$:输入向量 $\hid{\vc{v}}$ 为红色,输出向量 $\hid{F(\vc{v})}$ 为蓝色。把输入向量置于 $\hid{(1,2)}$,可以看到蓝色输出向量与输入向量平行,从而验证它确实是特征向量;蓝色向量与红色向量等长,又可验证其特征值为 $\hid{1}$。对 $\hid{(3,4)}$ 方向也可作同样检查。本例中的两个特征向量方向十分接近:一个在 $\hid{(2,4)}$ 方向,另一个在 $\hid{(3,4)}$ 方向。不过 $\hid{(3,4)}$ 方向的特征值更大($\hid{3/2}$ 而非 $\hid{1}$),因此从 $\hid{(2,4)}$ 移到 $\hid{(3,4)}$ 时,蓝色向量会显著增长。
10.4 对角化


特征向量特征值与对角化的概念密切相关。 其核心思想是:若选择特征向量作为向量,线性映射的表示会格外简单。我们需要分别定义线性映射与矩阵的对角化;这两个定义本质上相同。

先回忆一下,即使没有选定线性映射 $F(\vc{v})$ 仍然可以定义。例如,“把输入向量长度加倍”这一线性映射,与选择哪一组基无关。若为线性映射选定一组基,就可以把它写成 $F(\vc{v}) = \mx{A}\vc{v}$ 的形式,其中 $\mx{A}$ 称为变换矩阵。变换矩阵取决于所选的基。在此基础上,便可以定义线性映射的可对角化性。

定义 10.3:
若存在一组,使线性映射 $F$ 的变换矩阵为对角矩阵,则称 $F$ 可对角化。

定义 10.4:
若存在可逆矩阵 $\mx{V}$ 和对角矩阵 $\mx{D}$,使
\begin{equation} \mx{A} = \mx{V} \mx{D} \mx{V}^{-1} . \end{equation} (10.18)
则称矩阵 $\mx{A}$ 可对角化。
这里把矩阵 $\mx{A}$ 分解为三个矩阵 $\mx{V}$、$\mx{D}$ 和 $\mx{V}^{-1}$ 的乘积。这类分解在许多应用中非常有用,本章稍后会给出几个例子。

为理解对角化与特征向量特征值的关系,把矩阵方程重新整理为
\begin{equation} \mx{A} \mx{V}= \mx{V} \mx{D} . \end{equation} (10.19)
设 $\mx{V}$ 的各列向量为 $(\vc{v}_1, \ldots, \vc{v}_n)$,$\mx{D}$ 的对角元素为 $(\lambda_1, \ldots, \lambda_n)$。 用这些记号,方程可写成
\begin{equation} \mx{A} \begin{pmatrix} \vc{v}_1 & \ldots & \vc{v}_n \end{pmatrix} = \begin{pmatrix} \vc{v}_1 & \ldots & \vc{v}_n \end{pmatrix} \mx{D} \end{equation} (10.20)
或者
\begin{equation} \begin{pmatrix} \mx{A} \vc{v}_1 & \ldots & \mx{A} \vc{v}_n \end{pmatrix} = \begin{pmatrix} \lambda_1 \vc{v}_1 & \ldots & \lambda_n \vc{v}_n \end{pmatrix}. \end{equation} (10.21)
换言之,矩阵方程的第 $k$ 列为
\begin{equation} \mx{A} \vc{v}_k = \lambda_k \vc{v}_k, \end{equation} (10.22)
因此,$\mx{V}$ 的各列是 $\mx{A}$ 的特征向量,对应的特征值就是 $\mx{D}$ 相应位置的对角元素。 下面的定理概括了这一结论。

定理 10.3:
矩阵 $\mx{A}$ 可对角化,当且仅当存在一组由特征向量构成的。此外,在分解 $ \mx{A} = \mx{V} \mx{D} \mx{V}^{-1}$ 中,$\mx{V}$ 的各列是特征向量,而对角矩阵 $\mx{D}$ 的相应对角元素就是对应的特征值

例 10.6: 单根与可对角化矩阵
判断矩阵
\begin{equation} \mx{A} = \begin{pmatrix} 5/2 & -3/4 \\ 2 & 0 \end{pmatrix} \end{equation} (10.23)
是否可对角化;若可以,求矩阵 $\mx{V}$ 和 $\mx{D}$,使
\begin{equation} \mx{A} = \mx{V} \mx{D} \mx{V}^{-1} . \end{equation} (10.24)
上一例中,我们求得两个线性无关特征向量
\begin{equation} \vc{v} _1= \begin{pmatrix} 1\\ 2 \end{pmatrix} \spc \text{和} \spc \vc{v} _2= \begin{pmatrix} 3\\ 4 \end{pmatrix} \end{equation} (10.25)
对应的特征值分别为 $\lambda_1 = 1$ 和 $\lambda_2 = 3/2$。根据定理 10.3, $\mx{A}$ 可用下列矩阵分解:
\begin{equation} \mx{V} = \begin{pmatrix} 1 & 3 \\ 2 & 4 \end{pmatrix} \end{equation} (10.26)
以及
\begin{equation} \mx{D} = \begin{pmatrix} 1 & 0 \\ 0 & \frac{3}{2} \end{pmatrix} . \end{equation} (10.27)
对 $2 \times 2$ 矩阵,特征多项式是二次多项式,因此有两个根(计入复根并按重数计数)。在例 10.5中,两个根($1$ 和 $3/2$)彼此不同,并且存在由特征向量构成的一组。下面的定理说明,一般的 $n \times n$ 矩阵也有类似结论。

定理 10.4:
若 $n \times n$ 矩阵 $\mx{A}$ 有 $n$ 个互不相同的特征值,则 $\mx{A}$ 可对角化。此外,分别对应于 $n$ 个不同特征值的 $n$ 个特征向量必定线性无关

记这 $n$ 个不同的特征值为 $\lambda_1, \ldots, \lambda_n$。每个特征值 $\lambda_k$ 至少对应一个特征向量 $\vc{v}_k$。 若这 $n$ 个特征向量线性无关,它们就构成一组。根据定理 10.3, 矩阵 $\mx{A}$ 便可对角化。因此,只需证明这 $n$ 个特征向量线性无关。 下面对特征向量个数 $k$ 作归纳。当 $k=2$ 时结论成立,因为两个平行向量具有相同特征值。假设分别对应于不同特征值的 $k-1$ 个特征向量总是线性无关。现在要证明,对应于不同特征值的 $k$ 个特征向量所满足的方程
\begin{equation} z_1 \vc{v}_1 + z_2 \vc{v}_2 + \ldots + z_k \vc{v}_k = 0 \end{equation} (10.28)
只有零解,即 $z_1 = z_2 = \ldots = z_k = 0$。 等式两边左乘 $\mx{A}$,得到
\begin{equation} \mx{A} (z_1 \vc{v}_1 + z_2 \vc{v}_2 + \ldots + z_k \vc{v}_k) = z_1 \mx{A} \vc{v}_1 + z_2 \mx{A}\vc{v}_2 + \ldots + z_k \mx{A}\vc{v}_k = z_1 \lambda_1 \vc{v}_1 + z_2 \lambda_2 \vc{v}_2 + \ldots + z_k \lambda_k \vc{v}_k = 0 . \end{equation} (10.29)
从该式减去原方程的 $\lambda_k$ 倍,得到
\begin{equation} z_1 (\lambda_1-\lambda_k) \vc{v}_1 + z_2 (\lambda_2 -\lambda_k) \vc{v}_2 + \ldots + z_{k-1} (\lambda_{k-1} - \lambda_k) \vc{v}_{k-1} = 0 . \end{equation} (10.30)
由归纳假设,分别对应于不同特征值的前 $k-1$ 个特征向量线性无关,因此
\begin{equation} \begin{array}{ll} z_1 (\lambda_1-\lambda_k) & = 0 \\ z_2 (\lambda_2-\lambda_k) & = 0 \\ & \vdots \\ z_{k-1} (\lambda_{k-1} - \lambda_k) & = 0. \end{array} \end{equation} (10.31)
由于所有特征值互不相同,可知 $z_1 = z_2 = \ldots = z_{k-1} = 0$。 代回原方程,得到 $z_k \vc{v}_k = 0$,故 $z_k=0$。证毕。
$\square$


因此,若所有根互不相同,矩阵必可对角化。若有重数大于 $1$ 的根,矩阵可能可对角化(例 10.7),也可能不可对角化(例 10.8)。

例 10.7: 重根与可对角化矩阵
判断矩阵
\begin{equation} \mx{A} = \begin{pmatrix} 2 & 0\\ 0 & 2 \end{pmatrix} \end{equation} (10.32)
是否可对角化;若可以,求矩阵 $\mx{V}$ 和 $\mx{D}$,使
\begin{equation} \mx{A} = \mx{V} \mx{D} \mx{V}^{-1} . \end{equation} (10.33)
这个例子稍显刻意,因为矩阵 $\mx{A}$ 本身已经是对角矩阵。不过它恰好说明:即使特征多项式有二重根,矩阵仍可能可对角化。虽然结论一目了然,我们仍完整走一遍计算过程。 与例 10.5一样,先求特征值。特征值是特征多项式的根:
\begin{equation} \det( \lambda I - \mx{A} ) = \mx{A} = \begin{vmatrix} \lambda - 2 & 0\\ 0 & \lambda -2 \end{vmatrix} = (\lambda-2) (\lambda-2) - (0)(0) = (\lambda-2) (\lambda-2) = 0 . \end{equation} (10.34)
该多项式在 $\lambda=2$ 处有一个二重根。

对特征值 $\lambda=2$,有
\begin{equation} (2 I - \mx{A}) \vc{v} = \begin{pmatrix} 0 & 0 \\ 0 & 0 \end{pmatrix} \vc{v} = 0 . \end{equation} (10.35)
该方程组的参数解为
\begin{equation} \vc{v} = t_1\begin{pmatrix} 1\\ 0 \end{pmatrix} + t_2 \begin{pmatrix} 0\\ 1 \end{pmatrix} . \end{equation} (10.36)
此时可以找到一组由特征向量构成的,例如
\begin{equation} \vc{v}_1 = \begin{pmatrix} 1\\ 0 \end{pmatrix} \end{equation} (10.37)
以及
\begin{equation} \vc{v}_2 = \begin{pmatrix} 0\\ 1 \end{pmatrix} . \end{equation} (10.38)
因此该矩阵可对角化。

其实这并不意外,因为 $\mx{A}$ 本身就是对角矩阵。因此无须计算,直接取 $\mx{D} = \mx{A}$、$\mx{V} = \mx{I}$、$\mx{V}^{-1} = \mx{I}^{-1} = \mx{I}$,即可写成
\begin{equation} \mx{A} = \mx{I}\mx{A}\mx{I}^{-1} = \mx{V} \mx{D} \mx{V}^{-1}. \end{equation} (10.39)

例 10.8: 重根与不可对角化矩阵
判断矩阵
\begin{equation} \mx{A} = \begin{pmatrix} 1 & 1\\ 0 & 1 \end{pmatrix} \end{equation} (10.40)
是否可对角化;若可以,求矩阵 $\mx{V}$ 和 $\mx{D}$,使
\begin{equation} \mx{A} = \mx{V} \mx{D} \mx{V}^{-1} . \end{equation} (10.41)
例 10.5一样,先求特征值。特征值是特征多项式的根:
\begin{equation} \det( \lambda I - \mx{A} ) = \mx{A} = \begin{vmatrix} \lambda - 1 & -1\\ 0 & \lambda -1 \end{vmatrix} = (\lambda-1) (\lambda-1) - (0)(-1) = (\lambda-1) (\lambda-1) = 0 . \end{equation} (10.42)
该多项式在 $\lambda=1$ 处有一个二重根。

对特征值 $\lambda=1$,有
\begin{equation} (1 I - \mx{A}) \vc{v} = \begin{pmatrix} 0 & -1 \\ 0 & 0 \end{pmatrix} \vc{v} = 0 . \end{equation} (10.43)
该方程组的参数解为
\begin{equation} \vc{v} = t \begin{pmatrix} 1\\ 0 \end{pmatrix} . \end{equation} (10.44)
因此,所有满足下式的向量
\begin{equation} \vc{v} = t \begin{pmatrix} 1\\ 0 \end{pmatrix} , \quad t \neq 0 \end{equation} (10.45)
都是特征值 $1$ 对应的特征向量。 除此之外没有其他特征向量。任取两个这样的特征向量都线性相关,因此该矩阵无法对角化。
例 10.6中,所有根都是单根,因此各特征值互不相同。根据定理 10.4,这类矩阵总可对角化。若矩阵的特征多项式有二重根或更高重数的根,它可能像例 10.7那样可对角化,也可能像例 10.8那样不可对角化。关键在于:对每个特征值 $\lambda$,能从 $(\lambda I - \mx{A})$ 的零空间中选出多少个线性无关的特征向量。 为刻画这一点,需要引入代数重数和几何重数

定义 10.5: 代数重数、特征空间与几何重数
设 $\lambda$ 是矩阵 $\mx{A}$ 的特征值。$\lambda$ 作为特征多项式之根的重数,称为 $\lambda$ 的代数重数。$(\lambda I - \mx{A})$ 的零空间称为矩阵 $\mx{A}$ 对应于特征值 $\lambda$ 的特征空间。$\lambda$ 的几何重数是 $(\lambda I - \mx{A})$ 的零空间维数,也就是特征空间的维数。

定理 10.5:
特征值 $\lambda$ 的几何重数总小于或等于其代数重数

设特征值 $\lambda_0$ 的几何重数为 $k$。这意味着 $(\lambda_0 I - \mx{A})$ 的零空间维数为 $k$;换言之,可以找到 $k$ 个对应于特征值 $\lambda_0$ 的线性无关特征向量 $\vc{e}_1, \ldots, \vc{e}_k$。 选取新 $\vc{e}_1, \ldots, \vc{e}_k, \ldots,\vc{e}_n$,使前 $k$ 个基向量正是 $\lambda_0$ 的特征向量。在这组新基下,变换矩阵 $\mx{A}$ 形如
\begin{equation} \mx{A} = \begin{pmatrix} \lambda_0 & 0 & \ldots & 0 & a_{1,k+1} & \ldots & a_{1,n}\\ 0 & \lambda_0 & \ldots & 0 & a_{2,k+1} & \ldots & a_{2,n}\\ \vdots & \vdots & \ddots & \vdots & \vdots & \vdots \\ 0 & 0 & \ldots & \lambda_0 & a_{k,k+1} & \ldots & a_{k,n}\\ \vdots & \vdots & \ddots & \vdots & \vdots & \vdots \\ 0 & 0 & \ldots & 0 & a_{n,k+1} & \ldots & a_{n,n}\\ \end{pmatrix} \end{equation} (10.46)
该矩阵的特征多项式含有因子 $(\lambda - \lambda_0)^k$,即形如 $(\lambda - \lambda_0)^k p(\lambda)$,因此代数重数至少为 $k$。故几何重数总小于或等于代数重数。
$\square$


定理 10.6:
矩阵 $\mx{A}$ 可对角化,当且仅当每个特征值的几何重数与代数重数相等。 等价地,对 $n \times n$ 矩阵 $\mx{A}$,若各特征空间的维数之和为 $n$,则 $\mx{A}$ 可对角化。

设 $\mx{A}$ 有 $k$ 个互不相同的特征值 $\lambda_1, \ldots, \lambda_k$,且每个特征值的代数重数与几何重数相同。记特征值 $\lambda_i$ 的这一重数为 $m_i$。由代数重数可知 $\sum_{i=1}^k m_i = n$。又因几何重数为 $m_i$,故对应于 $\lambda_i$ 有 $m_i$ 个线性无关的特征向量 $\vc{v}_{i,1}, \ldots, \vc{v}_{i,m_i}$。汇集所有特征值对应的特征向量,得到 $n$ 个向量 $\{ \vc{v}_{1,1}, \ldots, \vc{v}_{1,m_1}, \ldots, \vc{v}_{k,1}, \ldots, \vc{v}_{k,m_k} \}$。下面证明它们线性无关,从而构成一组。 设存在标量 $c_{i,j}$,其中 $1 \leq i \leq k$、$1 \leq j \leq m_i$,使
\begin{equation} \sum_{i=1}^k \sum_{j=1}^{m_i} c_{i,j} \vc{v}_{i,j} = 0 . \end{equation} (10.47)
定义向量
\begin{equation} \vc{w}_{i} = \sum_{j=1}^{m_i} c_{i,j} \vc{v}_{i,j}. \end{equation} (10.48)
对每个 $i$,向量 $\vc{w}_i$ 要么为零,要么是对应于特征值 $\lambda_i$ 的特征向量。 若其中至少一个非零,就得到如下等式:
\begin{equation} \sum_{i=1}^k \vc{w}_i= 0 \end{equation} (10.49)
其中非零项分别对应于不同特征值。然而,根据定理 10.4,这些向量必线性无关;它们之和为零只能是因为每个向量都为零。因此
\begin{equation} \vc{w}_{i} = \sum_{j=1}^{m_i} c_{i,j} \vc{v}_{i,j} = 0 . \end{equation} (10.50)
由于对每个 $i$,集合 $\{\vc{v}_{i,1}, \ldots, \vc{v}_{i,m_i}\}$ 都线性无关,故
\begin{equation} c_{i,j} = 0, \quad 1 \leq i \leq k, 1 \leq j \leq m_i \, . \end{equation} (10.51)
这说明 $\{ \vc{v}_{1,1}, \ldots, \vc{v}_{1,m_1}, \ldots, \vc{v}_{k,1}, \ldots, \vc{v}_{k,m_k} \}$ 线性无关,因此构成一组基,矩阵 $\mx{A}$ 可对角化。 反过来,若 $\mx{A}$ 可对角化,则存在可逆矩阵 $\mx{V}$ 和对角矩阵 $\mx{D}$,使 $\mx{A} = \mx{V} \mx{D} \mx{V}^{-1}$。矩阵 $\mx{A}$ 与 $\mx{D}$ 具有相同的特征多项式,且每个 $\lambda_i$ 的几何重数也相同。对角矩阵的几何重数与代数重数显然相等,因此 $\mx{A}$ 亦如此。证毕。
$\square$


例 10.7例 10.8都只有一个特征值,且代数重数均为 $2$。例 10.7 中的几何重数为 $2$,因此矩阵可对角化;例 10.8 中的几何重数只有 $1$,因此矩阵不可对角化。 对于随机矩阵,例如各元素分别从独立正态分布中抽取时,得到不可对角化矩阵的概率极小。事实上,若使用真正连续的正态分布,而不是计算机中的离散近似,这一概率为零。因此,从某种意义上说,不可对角化矩阵只是例外。不过,实际应用中的某些矩阵具有内在结构,仍会导致它们不可对角化。
10.5 对称矩阵的对角化


此前主要处理实矩阵和实向量,但研究含复数元素的矩阵与向量也很有用。即使矩阵是实矩阵,有时也需要考虑复特征值和复特征向量。 无论 $\mx{A}$ 是实矩阵还是复矩阵,复特征值与复特征向量的定义都相同。

定义 10.6: 复特征值与复特征向量
设 $\mx{A}$ 为元素是实数或复数的方阵。若含复数分量的非零列向量 $\vc{v}$ 满足 $\mx{A}\vc{v}$ 与 $\vc{v}$ 平行,即存在复标量 $\lambda$ 使
\begin{equation} \mx{A}\vc{v} = \lambda \vc{v} . \end{equation} (10.52)
则称 $\vc{v}$ 为特征向量,复标量 $\lambda$ 为对应的特征值
下面的定理概括了对称矩阵的一个重要性质。

定理 10.7:
对称矩阵 $\mx{A}$ 的特征值均为实数。

设 $\vc{v}$ 是一个可能含复数分量的特征向量,对应的特征值 $\lambda$ 也可能是复数。先证明 $z = \bar{\vc{v}}^\T \mx{A} \vc{v}$ 是实数。 对复数 $z=a+bi$,其复共轭为 $\overline{z}=a-bi$。于是
\begin{equation} \bar{z}= \overline{\bar{\vc{v}}^\T \mx{A} \vc{v}} = \vc{v}^\T \bar{\mx{A}} \bar{\vc{v}} = (\vc{v}^\T \bar{\mx{A}} \bar{\vc{v}})^\T = \bar{\vc{v}} \bar{\mx{A}}^\T \vc{v} = \bar{\vc{v}}^\T \mx{A} \vc{v} = z . \end{equation} (10.53)
因为 $\bar{z}=z$,标量 $z$ 为实数。 再利用 $\vc{v}$ 是特征向量这一事实,得到
\begin{equation} z = \bar{\vc{v}}^\T \mx{A} \vc{v}= \bar{\vc{v}}^\T \lambda \vc{v} = \lambda (\bar{\vc{v}}^\T \vc{v}) . \end{equation} (10.54)
由于 $\bar{\vc{v}}^\T \vc{v}$ 总是实数,故 $\lambda$ 也为实数。
$\square$


注意,证明中只用到了 $\bar{\mx{A}}^\T = \mx{A}$。因此,即使 $\mx{A}$ 是复矩阵,只要满足这一条件,也能证明它的所有特征值均为实数。

定理 10.8:
对称矩阵 $\mx{A}$ 总存在正交矩阵 $\mx{U}$ 和对角矩阵 $\mx{D}$,使
\begin{equation} \mx{A} = \mx{U} \mx{D} \mx{U}^{-1} = \mx{U} \mx{D} \mx{U}^{T} . \end{equation} (10.55)
换言之,可以用一组由特征向量构成的标准正交基将其对角化。

对矩阵 $\mx{A}$ 的阶数 $k$ 作归纳。 当 $k=1$,即 $\mx{A}$ 为 $1 \times 1$ 矩阵时,取 $\mx{U}=(1)$、$\mx{D}=\mx{A}$ 即可,定理成立。 假设定理对 $(k-1) \times (k-1)$ 矩阵成立。 设 $\mx{A}$ 为 $k \times k$ 实对称矩阵。至少存在一个特征值 $\lambda$ 及对应特征向量 $\vc{v}$。令 $\vc{q}_1 = \frac{\vc{v}}{||\vc{v}||}$, 再选取以 $\vc{q}_1$ 为第一列的任意 $k \times k$ 正交矩阵 $\mx{Q} = \begin{pmatrix}\vc{q}_1 & \ldots & \vc{q}_k\end{pmatrix}$。 计算 $\mx{A}\mx{Q}$,得到
\begin{equation} \mx{A}\mx{Q} = \begin{pmatrix} \lambda \vc{q}_1 & \mx{A}\vc{q}_2 & \ldots & \mx{A} \vc{q}_k \end{pmatrix} = \mx{Q} \begin{pmatrix} \lambda & \vc{w}^\T \\ 0 & \tilde{\mx{A}} \end{pmatrix} . \end{equation} (10.56)
其中 $\vc{w}$ 是某个 $(k-1) \times 1$ 列向量,$\tilde{\mx{A}}$ 是某个 $(k-1) \times (k-1)$ 矩阵。 因此
\begin{equation} \mx{Q}^\T \mx{A} \mx{Q} = \begin{pmatrix} \lambda & \vc{w}^\T \\ 0 & \tilde{\mx{A}} \end{pmatrix} . \end{equation} (10.57)
由于 $\mx{A}$ 对称,有
\begin{equation} (\mx{Q}^\T \mx{A} \mx{Q})^\T = \mx{Q}^\T \mx{A}^\T \mx{Q} = \mx{Q}^\T \mx{A} \mx{Q} = \begin{pmatrix} \lambda & 0 \\ \vc{w} & \tilde{\mx{A}}^\T \end{pmatrix} . \end{equation} (10.58)
这说明 $\vc{w}=\vc{0}$,且 $\tilde{\mx{A}}^\T = \tilde{\mx{A}}$。 矩阵 $\tilde{\mx{A}}$ 的大小为 $(k-1) \times (k-1)$,由归纳假设,可用一组标准正交特征向量基将其对角化。 因此存在 $\tilde{\mx{Q}}$ 和 $\tilde{\mx{D}}$,使
\begin{equation} \tilde{\mx{A}} = \tilde{\mx{Q}} \tilde{\mx{D}} \tilde{\mx{Q}}^\T. \end{equation} (10.59)
于是得到由特征向量构成的标准正交基,其中
\begin{equation} \mx{U} = \mx{Q} \begin{pmatrix} 1 & 0 \\ 0 & \tilde{\mx{Q}} \end{pmatrix} \end{equation} (10.60)
\begin{equation} \mx{D} = \begin{pmatrix} \lambda & 0 \\ 0 & \tilde{\mx{D}} \end{pmatrix}, \end{equation} (10.61)
证毕。
$\square$


定义 10.7: 正定性
对称实 $n \times n$ 矩阵 $\mx{A}$ 称为
\begin{align} \begin{array}{lll} &(1) & \text{正定,若 } & \vc{v}^T \mx{A} \vc{v} > 0, \, \, \forall \vc{v} \in R^n \setminus 0 \\ &(2) & \text{半正定,若 } & \vc{v}^T \mx{A} \vc{v} \geq 0, \, \, \forall \vc{v} \in R^n \setminus 0\\ &(3) & \text{负定,若 } & \vc{v}^T \mx{A} \vc{v} < 0, \, \, \forall \vc{v} \in R^n \setminus 0\\ &(4) & \text{半负定,若 } & \vc{v}^T \mx{A} \vc{v} \leq 0, \, \, \forall \vc{v} \in R^n \setminus 0\\ &(5) & \text{不定,若 } & \vc{v}^T \mx{A} \vc{v} \text{既可取正值,也可取负值} \\ \end{array} \end{align} (10.62)

定理 10.9: 正定性与特征值
对称实 $n \times n$ 矩阵 $\mx{A}$ 满足:
\begin{align} \begin{array}{ll} &(1) & \text{正定,当且仅当所有特征值都为正} \\ &(2) & \text{半正定,当且仅当所有特征值都非负} \\ &(3) & \text{负定,当且仅当所有特征值都为负} \\ &(4) & \text{半负定,当且仅当所有特征值都非正} \\ &(5) & \text{不定,当且仅当既有正特征值又有负特征值} \\ \end{array} \end{align} (10.63)

由于矩阵 $\mx{A}$ 对称,可以用标准正交矩阵 $\mx{U}$ 将其对角化,即 $\mx{A} = \mx{U}^\T \mx{D} \mx{U}$. 作坐标变换 $\vc{w} = \mx{U} \vc{v}$,得到
\begin{equation} \vc{v}^T \mx{A} \vc{v} = \vc{v}^T \mx{U}^\T \mx{D} \mx{U} \vc{v} = \vc{w}^T \mx{D} \vc{w} \end{equation} (10.64)
若所有特征值均为正,则对任意非零向量,显然有 $\vc{v}^T \mx{A} \vc{v} > 0$。反之,若某个特征值(例如 $\lambda_i$)为零或负数,取对应特征向量 $\vc{v} = \vc{u}_i$,便有 $\vc{u}_i^T \mx{A} \vc{u}_i = \vc{u}_i^T \lambda_i \vc{u}_i = \lambda_i \leq 0$。这证明了第一条,其余各条可用同样方法证明。
$\square$


10.6 线性映射下向量的最大伸长倍数


例 10.4研究了固定输入向量长度时,输出向量 $F(\vc{v})$ 最长能有多长。下面利用定理 10.8定理 10.7来深入理解这一问题。 给定实矩阵 $\mx{A}$ 及其对应的线性映射 $F(\vc{v}) = \mx{A} \vc{v}$,对于实向量 $\vc{v}$,哪个输入方向能使伸长倍数 $s = \frac{|| \mx{A} \vc{v}||}{||\vc{v}||}$ 最大或最小? 研究伸长倍数的平方更方便,即
\begin{equation} s^2 =\left(\frac{|| \mx{A} \vc{v}||}{||\vc{v}||}\right)^2= \frac{\vc{v}^\T \mx{A}^\T \mx{A} \vc{v}}{\vc{v}^\T \vc{v}}, \end{equation} (10.65)
这里假设 $\vc{v}$ 非零。注意,关键矩阵是 $\mx{A}^\T \mx{A}$。 该矩阵按构造就是对称矩阵。由定理 10.8可知,可以用标准正交矩阵 $\mx{U}$ 将其对角化:
\begin{equation} \mx{A}^\T \mx{A} = \mx{U} \mx{D} \mx{U}^\T . \end{equation} (10.66)
特征值均为实数。又因为 $ \vc{v}^T \mx{A}^\T \mx{A} \vc{v} = \left( || \mx{A} \vc{v}|| \right)^2 \geq 0$, 所以 $\mx{A}^\T \mx{A}$ 半正定。由定理 10.9可知,其特征值均非负。 不妨按 $d_1 \geq d_2 \geq \ldots \geq d_n \geq 0$ 排列这些特征值。于是
\begin{equation} s^2 = \frac{\vc{v}^\T \mx{A}^\T \mx{A} \vc{v}}{\vc{v}^\T \vc{v}} = \frac{\vc{v}^\T \mx{U} \mx{D} \mx{U}^\T \vc{v}}{\vc{v}^\T \mx{U} \mx{U}^\T \vc{v}} . \end{equation} (10.67)
作坐标变换 $\vc{w} = \mx{U}^\T \vc{v}$,得到
\begin{equation} s^2 = \frac{\vc{w}^\T \mx{D} \vc{w}}{\vc{w}^\T \vc{w}}. \end{equation} (10.68)
为了直观理解如何使这个量最大,先注意分子就是
\begin{equation} w_1^2 d_1 + w_2^2 d_2 + \ldots + w_n^2 d_n, \end{equation} (10.69)
其中 $d_1,d_2,\dots,d_n$ 是 $\mx{D}$ 的对角元素,而分母为
\begin{equation} w_1^2 + w_2^2 + \ldots + w_n^2. \end{equation} (10.70)
因此直观上看,要在尽可能压低分母的同时增大分子,就应把权重尽量集中在第一项,因为 $d_1$ 最大。例如可取 $w_1=1$,而对 $j\neq1$ 取 $w_j=0$。

下面给出严格证明。先把式 (10.68)改写为
\begin{equation} s^2 = \frac{\sum_{i=1}^n d_i w_i^2 }{\sum_{i=1}^n w_i^2}. \end{equation} (10.71)
为确定最大值,计算偏导数以求出所有驻点:
\begin{equation} \frac{\partial (s^2)}{\partial w_i} = \frac{ (2 d_i w_i) (\sum_{i=1}^n w_i^2) - (\sum_{i=1}^n d_i w_i^2 )(2 w_i)}{(\sum_{i=1}^n w_i^2)^2} . \end{equation} (10.72)
在驻点处,对所有 $i$ 都有 $\frac{\partial (s^2)}{\partial w_i} = 0$,因此
\begin{equation} \begin{pmatrix} d_1 w_1 & w_1 \\ d_2 w_2 & w_2 \\ \vdots & \vdots \\ d_n w_n & w_n \end{pmatrix} \begin{pmatrix} \sum_{i=1}^n w_i^2 \\ \sum_{i=1}^n d_i w_i^2 \end{pmatrix} = \vc{0}. \end{equation} (10.73)
上式是“矩阵乘向量等于零”。当 $\vc{w}\neq\vc{0}$ 时,右侧向量必非零,因为其第一个分量是 $\vc{w}$ 的长度平方 $||\vc{w}||^2$。因此只能是左侧矩阵具有至少一维零空间,即零度至少为 $1$。由定理 8.8中的“秩加零度等于列数”,该矩阵的至多为 $1$。而定理 8.9指出,秩等于非零子式的最大阶数。因此,此处最大的非零子式至多为 $1\times1$,这又意味着每个 $2\times2$ 子式都为零,即
\begin{equation} \det \begin{pmatrix} d_i w_i & w_i \\ d_j w_j & w_j \end{pmatrix} =(d_i-d_j) w_i w_j = 0 \end{equation} (10.74)
对所有 $i,j$ 都成立。一个解法是让 $\vc{w}$ 只有一个非零分量。 取 $\vc{w}_{\max} = \begin{pmatrix}1&0&\ldots&0\end{pmatrix}$ 时取得全局最大值,对应最大伸长倍数平方 $d_1$;取 $\vc{w}_{\min} = \begin{pmatrix}0&0&\ldots&1\end{pmatrix}$ 时取得全局最小值,对应最小伸长倍数平方 $d_n$。 由于 $\vc{w} = \mx{U}^\T \vc{v}$,故 $\vc{v} = \mx{U}\vc{w}$。因此,最大伸长倍数由 $\vc{v}_1$ 方向取得,也就是 $\mx{A}^\T\mx{A}$ 对应最大特征值的特征向量;最小伸长倍数由 $\vc{v}_n$ 方向取得,也就是对应最小特征值的特征向量。

例 10.9: 对称矩阵的最大伸长倍数
考察交互式图解 10.6中的线性映射, 其中红色输入向量的长度为 $1$。 调整输入向量 $\vc{v}$,先让输出向量 $F(\vc{v})$ 尽可能长,再让它尽可能短。本例的映射为 $\vc{v} \mapsto \mx{A}\vc{v}$,其中 $\mx{A}$ 是对称矩阵,所以解释会稍微简单一些。
$\vc{v}$
$F(\vc{v})$
$\vc{e}_1$
$\vc{e}_2$
交互式图解 10.6: 从 $\vc{x}$(红色向量)到 $F(\vc{x})$(蓝色向量)的映射示例。
交互式图解 10.6: 从 $\hid{\vc{x}}$(红色向量)到 $\hid{F(\vc{x})}$(蓝色向量)的映射示例。
第 9 章中,我们看到有限维线性映射 $F$ 总可以表示成矩阵乘法 $\vc{y} = \mx{A}\vc{x}$。 若矩阵可对角化,则由定义 10.4可知
\begin{equation} \mx{A} = \mx{V} \mx{D} \mx{V}^{-1} . \end{equation} (10.75)
若按 $\vc{x} = \mx{V}\tilde{\vc{x}}$ 变换坐标(相应地 $\vc{y} = \mx{V}\tilde{\vc{y}}$),便在新坐标系中得到更简单的关系 $\tilde{\vc{y}} = \tilde{\mx{A}}\tilde{\vc{x}}$,即
\begin{equation} \tilde{\vc{y}} = \mx{V}^{-1} \vc{y} = \mx{V}^{-1} \mx{V} \mx{D} \mx{V}^{-1} \vc{x} = \mx{V}^{-1} \mx{V} \mx{D} \mx{V}^{-1} \mx{V} \tilde{\vc{x}} \end{equation} (10.76)
也就是说
\begin{equation} \tilde{\vc{y}} = \mx{D} \tilde{\vc{x}} . \end{equation} (10.77)
这说明线性映射现在由一个对角矩阵表示,其对角元素就是各特征值

本例中的矩阵 $\mx{A}$ 为
\begin{equation} \mx{A} = \frac{1}{10}\left(\begin{array}{cc} 8 & 6\\ 6 & 17\\ \end{array}\right). \end{equation} (10.78)
一般情形下(见上文),最大伸长由 $\mx{A}^T\mx{A}$ 的特征值决定。但由于本例的矩阵对称,$\mx{A}$ 的特征向量也是 $\mx{A}^T\mx{A}=\mx{A}^2$ 的特征向量。
10.7 关于特征值与特征向量的其他结论


本节给出关于特征值特征向量的一些有用结论与性质。

定理 10.10:
若 $\vc{v}$ 是矩阵 $\mx{A}$ 对应特征值 $\lambda$ 的特征向量,同时也是矩阵 $\mx{B}$ 对应特征值 $\mu$ 的特征向量,则
\begin{equation} \begin{array}{ll} (i) & \vc{v}\ \text{是矩阵}\ c\mx{A}\ \text{对应特征值}\ c\lambda\ \text{的特征向量。} \\ (ii) & \vc{v}\ \text{是矩阵}\ \mx{A}+d\mx{I}\ \text{对应特征值}\ \lambda+d\ \text{的特征向量。} \\ (iii) & \vc{v}\ \text{是矩阵}\ \mx{A}^n\ \text{对应特征值}\ \lambda^n\ \text{的特征向量。} \\ (iv) & \text{若}\ \mx{A}\ \text{可逆,则}\ \vc{v}\ \text{是矩阵}\ \mx{A}^{-1} \\ & \text{对应特征值}\ 1/\lambda\ \text{的特征向量。} \\ (v) & \vc{v}\ \text{是矩阵}\ \mx{A}+\mx{B}\ \text{对应特征值}\ \lambda+\mu\ \text{的特征向量。} \\ \end{array} \end{equation} (10.79)

这些命题大多很容易证明。

$(i)$:计算矩阵 $c\mx{A}$ 与向量 $\vc{v}$ 的乘积:
\begin{equation} (c \mx{A}) \vc{v}= c \mx{A} \vc{v} = c \lambda \vc{v} = (c \lambda) \vc{v} . \end{equation} (10.80)
故 $\vc{v}$ 是 $c\mx{A}$ 对应特征值 $c\lambda$ 的特征向量

$(ii)$:计算矩阵 $\mx{A}+d\mx{I}$ 与向量 $\vc{v}$ 的乘积:
\begin{equation} (\mx{A} + d\mx{I}) \vc{v} = \mx{A}\vc{v} + d \mx{I} \vc{v} = \lambda \vc{v} + d \vc{v} = (\lambda + d) \vc{v} . \end{equation} (10.81)
故 $\vc{v}$ 是 $\mx{A}+d\mx{I}$ 对应特征值 $\lambda+d$ 的特征向量。

$(iii)$:计算矩阵 $\mx{A}^n$ 与向量 $\vc{v}$ 的乘积:
\begin{equation} \mx{A}^n \vc{v} = \mx{A}^{n-1} \mx{A} \vc{v} = \lambda \mx{A}^{n-1} \vc{v} = \lambda^2 \mx{A}^{n-2} \vc{v} = \ldots = \lambda^n \vc{v} . \end{equation} (10.82)
故 $\vc{v}$ 是 $\mx{A}^n$ 对应特征值 $\lambda^n$ 的特征向量。

$(iv)$:考察方程
\begin{equation} \mx{A} \vc{v} = \lambda \vc{v} . \end{equation} (10.83)
若 $\mx{A}$ 可逆,在等式两边左乘其逆矩阵,得到
\begin{equation} \vc{v} = \lambda \mx{A}^{-1} \vc{v} . \end{equation} (10.84)
可逆矩阵的所有特征值均非零,因此等式两边可除以 $\lambda$,得到
\begin{equation} \frac{1}{\lambda} \vc{v} = \mx{A}^{-1} \vc{v} . \end{equation} (10.85)
故 $\vc{v}$ 是 $\mx{A}^{-1}$ 对应特征值 $\frac{1}{\lambda}$ 的特征向量。

$(v)$:计算矩阵 $\mx{A}+\mx{B}$ 与向量 $\vc{v}$ 的乘积:
\begin{equation} ( \mx{A} + \mx{B}) \vc{v} = \mx{A} \vc{v} + \mx{B} \vc{v} = \lambda \vc{v} + \mu \vc{v} = (\lambda + \mu) \vc{v} . \end{equation} (10.86)
故 $\vc{v}$ 是 $\mx{A}+\mx{B}$ 对应特征值 $\lambda+\mu$ 的特征向量。
$\square$


定理 10.11:
矩阵 $\mx{A}$ 与 $\mx{A}^\T$ 具有相同的特征多项式,即 $p_{\mx{A}}(\lambda) = p_{\mx{A}^\T}(\lambda)$。

这由行列式的运算性质直接得到(见定理 7.1):
\begin{equation} p_{\mx{A}^\T}(\lambda) = \det( \lambda \mx{I} - \mx{A}^\T ) = \det( (\lambda \mx{I} - \mx{A})^\T ) = \det(\lambda \mx{I} - \mx{A}) = p_\mx{A}(\lambda) . \end{equation} (10.87)
$\square$


因此,$\mx{A}$ 与 $\mx{A}^\T$ 的特征值相同,但特征向量可能不同。

定理 10.12:
若 $\mx{V}$ 可逆,则矩阵 $\mx{A}$ 与 $\mx{V}\mx{A}\mx{V}^{-1}$ 具有相同的特征多项式,即 $p_{\mx{A}}(\lambda) = p_{\mx{V} \mx{A} \mx{V}^{-1}}(\lambda)$。

这同样由行列式的运算性质得到(见定理 7.1)。由于 $\mx{I} = \mx{V}\mx{V}^{-1} = \mx{V}\mx{I}\mx{V}^{-1}$,所以
\begin{equation} p_{\mx{V} \mx{A} \mx{V}^{-1}}(\lambda) = \det( \lambda \mx{I} - \mx{V} \mx{A} \mx{V}^{-1} ) = \det( \lambda \mx{V}\mx{I}\mx{V}^{-1} - \mx{V} \mx{A} \mx{V}^{-1} ). \end{equation} (10.88)
从左侧提出 $\mx{V}$,从右侧提出 $\mx{V}^{-1}$,得到
\begin{equation} p_{\mx{V} \mx{A} \mx{V}^{-1}}(\lambda) = \det( \mx{V} (\lambda \mx{I} - \mx{A}) \mx{V}^{-1} ) = \det( \mx{V}) \det(\lambda \mx{I} - \mx{A}) \det(\mx{V}^{-1} ) = \det(\lambda \mx{I} - \mx{A}) = p_{\mx{A}}(\lambda), \end{equation} (10.89)
这里使用了 $\det(\mx{A}\mx{B}) = \det(\mx{A})\det(\mx{B})$ 和 $\det(\mx{V}^{-1}) = \frac{1}{\det(\mx{V})}$。
$\square$


定理 10.13:
若 $n \times n$ 矩阵 $\mx{A}$ 的特征值为 $\lambda_1, \ldots, \lambda_n$,则
\begin{equation} \det(\mx{A}) = \lambda_1 \cdot \lambda_2 \cdot \ldots \cdot \lambda_n . \end{equation} (10.90)
并且
\begin{equation} \tr(\mx{A}) = \lambda_1 + \lambda_2 + \ldots + \lambda_n . \end{equation} (10.91)
换言之,行列式等于各特征值的乘积;迹定义为矩阵对角元素之和,它等于各特征值之和。

从两个角度考察特征多项式,即可证明这两个等式。一方面,特征多项式
\begin{equation} p_{\mx{A}}(\lambda) = (\lambda-\lambda_1) (\lambda-\lambda_2) \cdot (\lambda - \lambda_n) = \lambda^n - (\lambda_1 + \lambda_2 + \cdot + \lambda_n) \lambda^{n-1} + \ldots + (\lambda_1 \lambda_2 \ldots \lambda_n) (-1)^n . \end{equation} (10.92)
另一方面,特征多项式
\begin{equation} p_{\mx{A}}(\lambda) = \det( \lambda \mx{I} - \mx{A} ) = \lambda^n - (a_{11} + a_{22} + \ldots + a_{nn}) \lambda^{n-1} + \ldots + (\det(\mx{A})) (-1)^n \end{equation} (10.93)
也就是
\begin{equation} p_{\mx{A}}(\lambda) = \det( \lambda \mx{I} - \mx{A} ) = \lambda^n - \tr(\mx{A}) \lambda^{n-1} + \ldots + (\det(\mx{A})) (-1)^n . \end{equation} (10.94)
比较系数,便得到上述两个等式。
$\square$


10.8 特征值与特征向量的用途


本节将通过一系列例子,展示特征值特征向量在实际问题中的用处。

例 10.10: 计算 $\mx{A}^n$
利用对角化,可以简化对 $\mx{A}^n$ 的计算和理解。 若 $\mx{A}$ 可对角化,则 $\mx{A} = \mx{V} \mx{D} \mx{V}^{-1}$。于是 $\mx{A}^n$ 可改写为
\begin{equation} \mx{A}^n = \mx{V} \mx{D} \mx{V}^{-1} \mx{V} \mx{D} \mx{V}^{-1} \mx{V} \mx{D} \mx{V}^{-1} \ldots \mx{V} \mx{D} \mx{V}^{-1} = \mx{V} \mx{D} \mx{D} \mx{D} \ldots \mx{D} \mx{V}^{-1} = \mx{V} \mx{D}^n \mx{V}^{-1}. \end{equation} (10.95)
换言之,通过特征值分解,可以显式写出 $\mx{A}^n$。

例 10.11: 计算 $\mx{A}^n$
\begin{equation} \begin{pmatrix} 0.68 & -0.24 \\ -0.24 & 0.82 \end{pmatrix}^n? \end{equation} (10.96)
当 $n \rightarrow \infty$ 时会怎样? 该矩阵是对称矩阵,因此其特征值均为实数,并且可以用正交矩阵对角化。这个性质在此并非关键,不过矩阵的一种分解为
\begin{equation} \begin{pmatrix} 0.68 & -0.24 \\ -0.24 & 0.82 \end{pmatrix} = \mx{U} \mx{D} \mx{U}^\T = \begin{pmatrix} 0.8 & -0.6 \\ 0.6 & 0.8 \end{pmatrix} \begin{pmatrix} 0.5 & 0 \\ 0 & 1 \end{pmatrix} \begin{pmatrix} 0.8 & -0.6 \\ 0.6 & 0.8 \end{pmatrix}^\T \end{equation} (10.97)
由上一个例子可得
\begin{equation} \begin{pmatrix} 0.68 & -0.24 \\ -0.24 & 0.82 \end{pmatrix}^n = \begin{pmatrix} 0.8 & -0.6 \\ 0.6 & 0.8 \end{pmatrix} \begin{pmatrix} (0.5)^n& 0 \\ 0 & 1 \end{pmatrix} \begin{pmatrix} 0.8 & -0.6 \\ 0.6 & 0.8 \end{pmatrix}^\T. \end{equation} (10.98)
当 $n$ 趋于无穷时,$(0.5)^n$ 趋于零,因此
\begin{equation} \begin{pmatrix} 0.68 & -0.24 \\ -0.24 & 0.82 \end{pmatrix}^n \rightarrow \begin{pmatrix} 0.8 & -0.6 \\ 0.6 & 0.8 \end{pmatrix} \begin{pmatrix} 0 & 0 \\ 0 & 1 \end{pmatrix} \begin{pmatrix} 0.8 & -0.6 \\ 0.6 & 0.8 \end{pmatrix}^\T = \begin{pmatrix} 0.36 & -0.48 \\ -0.48 & 0.64 \end{pmatrix} . \end{equation} (10.99)

例 10.12: PageRank:求满足 $\mx{B}\vc{p}=\vc{p}$ 的 $\vc{p}$
本章开头已经讨论过,网页的重要性或排名可以用向量 $\vc{p}$ 表示,而 $\vc{p}$ 满足线性方程 $\mx{B}\vc{p} = \vc{p}$。在实际问题中,对方程组 $\mx{B}\vc{p} = \vc{p}$ 使用高斯消元法求 $\vc{p}$ 并不可行。 事实证明,用迭代法计算 $\vc{p}$ 高效得多。从任意向量 $\vc{w}_0$ 出发,令
\begin{equation} \vc{w}_{k+1} = \mx{B} \vc{w}_k . \end{equation} (10.100)
可以证明,对于这类矩阵 $\mx{B}$,$\vc{w}_k$ 会迅速收敛到满足 $\mx{B}\vc{p} = \vc{p}$ 的 $\vc{p}$。 为理解这一点,先证明矩阵有一个特征向量 $\vc{v}_1$,对应特征值 $\lambda_1 = 1$;而其余特征向量 $\vc{v}_2, \ldots, \vc{v}_n$ 所对应特征值的绝对值均小于 $1$。 因此对任意向量 $\vc{w}_0$,都有 $\vc{w}_k = \mx{B}^k \vc{w}_0$,其中
\begin{equation} \vc{w}_k = \mx{B}^k \vc{w}_0 = (\mx{V} \mx{D} \mx{V}^{-1})^k \vc{w}_0 = \mx{V} \mx{D}^k \mx{V}^{-1} \vc{w}_0, \end{equation} (10.101)
其中
\begin{equation} \mx{D}^k= \begin{pmatrix} \lambda_1^k & 0 & \ldots & 0 \\ 0 & \lambda_2^k & \ldots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \ldots & \lambda_n^k \\ \end{pmatrix} \rightarrow \begin{pmatrix} 1& 0 & \ldots & 0 \\ 0 & 0 & \ldots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \ldots & 0 \\ \end{pmatrix}, \end{equation} (10.102)
这里令 $k\rightarrow \infty$。 引入向量 $\vc{e}_1 = \begin{pmatrix} 1 & 0 & \ldots & 0 \end{pmatrix}$,可见
\begin{equation} \vc{w}_k = \mx{B}^k \vc{w}_0 \rightarrow \mx{V} \vc{e}_1 \vc{e}_1^\T \mx{V}^{-1} \vc{w}_0 = \vc{v}_1 \mu, \end{equation} (10.103)
其中 $\mx{V} \vc{e}_1 = \vc{v}_1$ 是第一个特征向量,未知标量 $\mu = \vc{e}_1^\T \mx{V}^{-1} \vc{w}_0$。换言之,随机选定向量 $\vc{w}_0$ 并迭代 $\vc{w}_{k+1} = \mx{B} \vc{w}_k$,所得向量将收敛到 $\vc{v}_1$ 的某个倍数,而它又是 $\vc{p}$ 的某个倍数。 由 $\mx{B}$ 的构造可知:若向量 $\vc{w}$ 的各分量均为正且总和为 $1$,那么 $\mx{B} \vc{w}$ 也满足这两个条件。因此,从这样的概率向量出发便有 $\vc{w}_k \rightarrow \vc{p}$。 在例 10.2中,互联网只有四个主页,矩阵 $\mx{B}$ 为
\begin{equation} \mx{B} = 0.15 \begin{pmatrix} 1/4 & 1/4 & 1/4 & 1/4 \\ 1/4 & 1/4 & 1/4 & 1/4 \\ 1/4 & 1/4 & 1/4 & 1/4 \\ 1/4 & 1/4 & 1/4 & 1/4 \end{pmatrix} + 0.85 \begin{pmatrix} 0 & 1 & 1/2 & 1 \\ 1/2 & 0 & 1/2 & 0 \\ 1/2 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \end{pmatrix} . \end{equation} (10.104)
该矩阵有四个特征值:$1$、$0.42$、$-0.42$ 和 $0$。由于其余特征值 $\lambda_j$ 的绝对值小于 $0.5$,每迭代 $10$ 次,误差 $||\vc{w}_k - \vc{p}||$ 就会缩小约 $1000$ 倍。 尽管互联网上的网页数量极其庞大,迭代 $\vc{w}_{k+1} = \mx{B} \vc{w}_k$ 仍然可以实施;又因为只需少量迭代,所以用这种方法计算 $\vc{p}$ 在实际中是可行的。


借助特征向量,可以更深入地理解线性映射

例 10.13: 理解线性映射
例 9.7中,我们研究了将立方体投影到平面上以求其阴影的线性映射。当时求得其变换矩阵为
\begin{equation} \mx{A} = \left(\begin{array}{ccc} 1 & -0.5 & 0\\ 0 & 0 & 0\\ 0 & -0.25 & 1\\ \end{array}\right). \end{equation} (10.105)
特征向量特征值有助于解释这一线性映射。 其特征多项式为 $(\lambda-1)^2 \lambda$。对于二重根特征值 $\lambda_1 = \lambda_2 = 1$,可以选取两个线性无关特征向量,例如 $\vc{v}_1 = (1, 0, 0)$ 和 $\vc{v}_2 = (0, 0, 1)$。对于特征值 $\lambda_3 = 0$,相应特征向量为 $\vc{v}_3 = t (0.5, 1.0, 0.25), t \neq 0$。 前两个特征向量张成平面 $y=0$,因此这个平面内的所有向量在线性映射下都保持不变。原因是任意此类向量 $\vc{x} = (x_1, 0, x_2)$ 都可写成两个特征向量 $\vc{v}_1$ 和 $\vc{v}_2$ 的线性组合
\begin{equation} \vc{x} = x_1 \vc{v}_1 + x_2 \vc{v}_2, \end{equation} (10.106)
对这样的向量施加线性映射,得到
\begin{equation} \mx{A}\vc{x} = \mx{A}(x_1 \vc{v}_1 + x_2 \vc{v}_2)\\ = x_1 \mx{A}\vc{v}_1 + x_2 \mx{A} \vc{v}_2\\ = x_1 \lambda_1 \vc{v}_1 + x_2 \lambda_2 \vc{v}_2\\ = x_1 \vc{v}_1 + x_2 \vc{v}_2 = \vc{x}. \end{equation} (10.107)
反之,所有与 $\vc{v}_3 = (0.5, 1.0, 0.25)$ 平行的向量都被映射为零向量:这类向量可写为 $\vc{x} = t \vc{v}_3$,于是 $\mx{A}\vc{x} = t\mx{A}\vc{v}_3 = t\lambda_3\vc{v}_3 = t 0 \vc{v}_3 = \vc{0}$。

交互式图解 10.7展示了如何把这一结论用于投射阴影。设物体上某一点由向量 $\vc{p}$ 表示。由于三个特征向量线性无关,向量 $\vc{p}$ 可表示为它们的线性组合
\begin{equation} \vc{p} = \alpha_1 \vc{v}_1 + \alpha_2 \vc{v}_2 + \alpha_3 \vc{v}_3. \end{equation} (10.108)
可以把前两个分量理解为确定“地面”(该平面)上的一点,第三个分量则指向光源方向。现在考察施加线性映射 $\mx{A}\vc{p}$ 后的结果:
\begin{equation} \mx{A}\vc{p} = \alpha_1 \mx{A}\vc{v}_1 + \alpha_2 \mx{A}\vc{v}_2 + \alpha_3 \mx{A}\vc{v}_3 = \alpha_1 \lambda_1 \vc{v}_1 + \alpha_2 \lambda_2 \vc{v}_2 + \alpha_3 \lambda_3 \vc{v}_3. \end{equation} (10.109)
前两项仍确定平面内的一点,而由于 $\lambda_3=0$,最后一项消失。这可以理解为遮挡点沿第三个特征向量的方向投影到平面上。
$O$
$\vc{v}_1$
$\vc{v}_2$
$\vc{v}_3$
交互式图解 10.7: 本图考察线性映射的变换矩阵 $\mx{A}$ 的特征向量 $\vc{v}_1$、$\vc{v}_2$ 和 $\vc{v}_3$。
交互式图解 10.7: 现在施加线性映射:$\hid{\mx{A}\vc{p} = \alpha_1 \mx{A}\vc{v}_1 + \alpha_2 \mx{A}\vc{v_2} + \alpha_3 \mx{A}\vc{v_3} = \alpha_1 1 \vc{v}_1 + \alpha_2 1 \vc{v_2} + \alpha_3 0 \vc{v_3}}$。前两项乘以 $1$,与映射前相同;最后一项乘以 $0$,因而消失。于是遮挡点被投影到蓝色向量表示的阴影点。绿色向量与第三个特征向量平行,指向光源。因此,前两个特征向量张成阴影所在的平面,最后一个特征向量指向光源。若要旋转图形,请单击“前进”。

例 10.14: 波与振动 1
线性代数的一大成功应用,是帮助我们理解偏微分方程。接下来的三个例子将研究小振动。首先用一根中点悬有质量为 $m$ 的物块的弦,模拟弦上的小振动。设弦的两端固定,相距 $l$。如交互式图解 10.8所示,用变量 $x$ 表示物块相对中点的水平位移。 弦受到力 $2 T \sin(\alpha)$,其中角 $\alpha$ 如图所示。假设振动很小,可用 $x/(l/2)$ 近似 $\sin(\alpha)$,于是该力近似为
\begin{equation} F = - \frac{4T}{l} x. \end{equation} (10.110)
由牛顿第二定律 $F = ma$,得到微分方程
\begin{equation} x'' = - \frac{4T}{ml} x . \end{equation} (10.111)
令常数 $q^2 = \frac{4T}{ml}$,则
\begin{equation} x'' = - q^2 x , \end{equation} (10.112)
其解为
\begin{equation} x(t) = a \sin(qt+\phi) , \end{equation} (10.113)
其中 $a$ 是任意振幅,$\phi$ 是任意初相位;二者可由初始条件确定,例如拨弦的力度决定 $a$,松弦的时刻决定 $\phi$。
交互式图解 10.8: 吉他弦的简化模型:全部质量集中在中点,以红点表示。滑块控制弦的张力;在小振动过程中,可认为张力近似不变。向外移动红点可改变振幅(响度),而振动频率(音高)由弦的张紧程度决定。单击“前进”播放动画。
交互式图解 10.8: 吉他弦的简化模型:全部质量集中在中点,以红点表示。滑块控制弦的张力;在小振动过程中,可认为张力近似不变。向外移动红点可改变振幅(响度),而振动频率(音高)由弦的张紧程度决定。单击“前进”播放动画。
$\text{张力}\,\, T=$
$\alpha$

例 10.15: 波与振动 2
本例在上一例的基础上稍作细化:把弦建模为沿弦等距放置三个小质量块,见交互式图解 10.9。 仍设弦的两端固定,相距 $l$。如图所示,用三个变量 $(x_1, x_2, x_3)$ 表示三个质量块的水平位移。仍假设振动很小,则第一个质量块位置 $x_1$ 满足微分方程
\begin{equation} x_1'' = - \frac{8T}{ml} x_1 + \frac{4T}{ml} x_2 . \end{equation} (10.114)
另外两个位移满足
\begin{equation} x_2'' = \frac{4T}{ml} x_1 - \frac{8T}{ml} x_2 + \frac{4T}{ml} x_3 \end{equation} (10.115)
以及
\begin{equation} x_3'' = \frac{4T}{ml} x_2 - \frac{8T}{ml} x_3 . \end{equation} (10.116)
令 $q = \frac{4T}{ml}$,三个方程可用矩阵记号写为
\begin{equation} \left(\begin{array}{c} x_1'' \\ x_2'' \\ x_3'' \\ \end{array}\right) = q^2 \left(\begin{array}{ccc} -2 & 1 & 0\\ 1 & -2 & 1\\ 0 & 1 & -2\\ \end{array}\right) \left(\begin{array}{c} x_1 \\ x_2 \\ x_3 \\ \end{array}\right) \end{equation} (10.117)
简写为
\begin{equation} \vc{x}'' = \mx{A} \vc{x} . \end{equation} (10.118)
这个微分方程组难以求解,主要是因为三个函数 $x_1(t)$、$x_2(t)$ 和 $x_3(t)$ 相互耦合。若能将它们解耦,问题就会简单得多,而特征值分解恰能做到这一点。 由于 $\mx{A}$ 对称,它可以用旋转(正交)矩阵 $\mx{R}$ 对角化。因此
\begin{equation} \vc{x}'' = \mx{R} \mx{D}\mx{R}^\T \vc{x} \end{equation} (10.119)
也就是
\begin{equation} \mx{R}^\T \vc{x}'' = \mx{D}\mx{R}^\T \vc{x} . \end{equation} (10.120)
作坐标变换
\begin{equation} \vc{z} = \mx{R}^\T \vc{x}, \end{equation} (10.121)
即可得到解耦后的方程组
\begin{equation} \vc{z}'' = \mx{D} \vc{z} \end{equation} (10.122)
\begin{equation} \begin{split} z_1'' = \lambda_1 z_1, \\ z_2'' = \lambda_2 z_2,\\ z_3'' = \lambda_3 z_3. \\ \end{split} \end{equation} (10.123)
这些微分方程已经解耦,可以逐个独立求解。其解为
\begin{equation} \begin{cases} \begin{array}{rrrl} z_1(t) = a_1 \sin( \sqrt{-\lambda_1} t + \phi_1), \\ z_2(t) = a_2 \sin( \sqrt{-\lambda_2} t + \phi_2), \\ z_3(t) = a_3 \sin( \sqrt{-\lambda_3} t + \phi_3). \end{array} \end{cases} \end{equation} (10.124)
最后,利用 $\vc{x} = \mx{R} \vc{z}$ 可在原坐标系中表示解:
\begin{equation} \begin{cases} \begin{array}{rrrl} x_1(t) = a_1 r_{11} \sin( \sqrt{-\lambda_1} t + \phi_1) + a_2 r_{12} \sin( \sqrt{-\lambda_2} t + \phi_2) + a_3 r_{13} \sin( \sqrt{-\lambda_3} t + \phi_3), \\ x_2(t) = a_1 r_{21} \sin( \sqrt{-\lambda_1} t + \phi_1) + a_2 r_{22} \sin( \sqrt{-\lambda_2} t + \phi_2) + a_3 r_{23} \sin( \sqrt{-\lambda_3} t + \phi_3), \\ x_3(t) = a_1 r_{31} \sin( \sqrt{-\lambda_1} t + \phi_1) + a_2 r_{32} \sin( \sqrt{-\lambda_2} t + \phi_2) + a_3 r_{33} \sin( \sqrt{-\lambda_3} t + \phi_3). \\ \end{array} \end{cases} \end{equation} (10.125)
该运动由三个固有频率刻画,它们取决于特征值 $\lambda_i$。每个特征值对应弦的一种固有振型,而相应的特征向量给出了该振型的空间形态,见交互式图解 10.9

要得到包含振幅($a_1$、$a_2$、$a_3$)和相位($\phi_1$、$\phi_2$、$\phi_3$)的完整解,还需要初始条件。交互式图解允许设置 $t=0$ 时各质量块的位置,也就是给 $x_1(0)$、$x_2(0)$ 和 $x_3(0)$ 赋值。这些值可以直接代入式 (10.125),但该式十分繁复,难以求解。于是再次变换初始条件的坐标系:
\begin{equation} \vc{z}(0) = \mx{R}^\T \vc{x}(0) \end{equation} (10.126)
再将新得到的初始条件 $\vc{z}(0)$ 代入式 (10.124)。然而,我们只有三个方程,却有六个未知量(全部振幅与相位),因此还需要三个约束。在交互式图解中,可以通过移动黄色箭头改变初速度 $\dot{x}_1(0)$、$\dot{x}_2(0)$ 和 $\dot{x}_3(0)$,从而给出这些约束。对式 (10.124)求导,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} \dot{z}_1(t) = a_1 \sqrt{-\lambda_1}\cos( \sqrt{-\lambda_1} t + \phi_1), \\ \dot{z}_2(t) = a_2 \sqrt{-\lambda_1}\cos( \sqrt{-\lambda_2} t + \phi_2), \\ \dot{z}_3(t) = a_3 \sqrt{-\lambda_1}\cos( \sqrt{-\lambda_3} t + \phi_3). \end{array} \end{cases} \end{equation} (10.127)
式 (10.124)中的每个方程除以式 (10.127)中的对应方程,并令 $t=0$,得到
\begin{equation} \begin{cases} \begin{array}{rrrl} \frac{z_1(0)}{\dot{z}_1(0)} = \frac{1}{\sqrt{-\lambda_1}}\tan( \phi_1), \\ \frac{z_2(0)}{\dot{z}_2(0)} = \frac{1}{\sqrt{-\lambda_1}}\tan( \phi_2), \\ \frac{z_3(0)}{\dot{z}_3(0)} = \frac{1}{\sqrt{-\lambda_1}}\tan( \phi_3), \end{array} \end{cases} \end{equation} (10.128)
其中 $\dot{z}(0)$ 仍可由 $\dot{\vc{z}}(0) = \mx{R}^\T \dot{\vc{x}}(0)$ 求得。现在有三个方程、三个未知量($\phi_1$、$\phi_2$、$\phi_3$),可以解出各相位。再把它们代入式 (10.124)式 (10.127),即可求得 $a_1$、$a_2$ 和 $a_3$。在交互式图解中,拖动质量块或箭头时,这一过程会自动完成。图解的下一步将用式 (10.125)为质量块生成动画。
交互式图解 10.9: 图中展示了 $t=0$ 时带有三个质量块的弦的简化模型。移动红色圆点可设置位置 $x_1(0)$、$x_2(0)$ 和 $x_3(0)$ 的不同初始条件;改变黄色箭头可设置初速度 $\dot{x}_1(0)$、$\dot{x}_2(0)$ 和 $\dot{x}_3(0)$。由这些初始条件可以计算相位 $\phi_1$、$\phi_2$、$\phi_3$(左上)以及振幅 $a_1$、$a_2$、$a_3$(右上)。单击“前进”播放动画。
交互式图解 10.9: 图中展示了 $\hid{t=0}$ 时带有三个质量块的弦的简化模型。移动红色圆点可设置位置 $\hid{x_1(0)}$、$\hid{x_2(0)}$ 和 $\hid{x_3(0)}$ 的不同初始条件;改变黄色箭头可设置初速度 $\hid{\dot{x}_1(0), \dot{x}_2(0), \dot{x}_3(0)}$。由这些初始条件可以计算相位 $\hid{\phi_1}$、$\hid{\phi_2}$、$\hid{\phi_3}$(左上)以及振幅 $\hid{a_1}$、$\hid{a_2}$、$\hid{a_3}$(右上)。单击“前进”播放动画。
$x_1(0)=$
$x_2(0)=$
$x_3(0)=$
$\dot{x}_1(0)=$
$\dot{x}_2(0)=$
$\dot{x}_3(0)=$
$a_1=$
$a_2=$
$a_3=$
$\phi_1=$
$\phi_2=$
$\phi_3=$

例 10.16: 波与振动 3
上一例建立了无外力作用时弦振动的模型。用向量记号表示为
\begin{equation} \vc{x}'' = \mx{A} \vc{x} . \end{equation} (10.129)
若有外力作用,它会对加速度产生额外贡献。因此,一个合理的模型是
\begin{equation} \vc{x}''(t) = \mx{A} \vc{x}(t) + \vc{u}(t). \end{equation} (10.130)
一个有趣的问题是:当弦 $\vc{x}(t)$ 受到正弦外力 $\vc{u}(t) = \cos(\omega t) \vc{u_0}$ 作用时,它会如何运动?假设存在特解 $\vc{x}(t) = \cos(\omega t) \vc{x}_0$,则
\begin{equation} -\omega^2 \cos(\omega t) \vc{x}_0 = \mx{A} \cos(\omega t) \vc{x}_0 + \cos(\omega t) \vc{u}_0, \end{equation} (10.131)
\begin{equation} (-\omega^2 \mx{I} - \mx{A}) \vc{x}_0 = \vc{u}_0. \end{equation} (10.132)
这意味着,只要 $(-\omega^2 \mx{I} - \mx{A})$ 可逆,就可以根据输入 $\vc{u}_0$ 和频率 $\omega$,按下式求出振动 $\vc{x}_0$ 的形状与大小:
\begin{equation} \vc{x}_0 = (-\omega^2 \mx{I} - \mx{A})^{-1} \vc{u}_0, \end{equation} (10.133)
当 $\det{(-\omega^2 \mx{I} - \mx{A})} = 0$ 时,该矩阵不可逆;也就是说,此时 $-\omega^2$ 是 $\mx{A}$ 的特征值。 这里不展开细节:这些特征值称为所谓传递函数极点。粗略地说,传递函数描述输入 $\vc{u}_0$ 与输出 $\vc{x}_0$ 之间的关系。 当 $-\omega^2$ 接近 $\mx{A}$ 的某个特征值时,由 $\vc{x}_0$ 大小刻画的输出幅值会很大。当 $-\omega^2$ 恰好等于某个特征值时,$(-\omega^2 \mx{I} - \mx{A})$ 不可逆;这里不再讨论此时会发生什么。 了解系统的极点位置,对于理解系统稳定性至关重要。若某些极点对应的频率经常出现在噪声或扰动中,就可能产生不良后果。 1831 年 4 月 12 日,曼彻斯特郊外的布劳顿吊桥因士兵齐步行进所引起的输入 $u(t)$ 激发共振而坍塌。另一个著名案例是塔科马海峡大桥坍塌,参见此视频。后者可能并非共振,而是一种更复杂的现象,称为气动弹性颤振。
一架飞机从华沙飞往克拉科夫。飞过一处美丽地标时,飞行员通过广播请想看地标的乘客望向飞机右侧。许多乘客照做了,飞机随即坠毁。为什么? 因为右半平面上的“极点”太多了。(这是把乘客与数学上的极点混为一谈的双关。)

例 10.17: 理解协方差矩阵
设有若干点 $\vc{x}_1, \ldots, \vc{x}_n$,每个点 $\vc{x}_i$ 都用一个列向量表示。其均值为向量
\begin{equation} \vc{m} = \frac{1}{n} \sum_{i=1}^{n} \vc{x}_i, \end{equation} (10.134)
它在下图中以红点表示。协方差矩阵为
\begin{equation} \mx{C} = \frac{1}{n} \sum_{i=1}^{n} (\vc{x}_i - \vc{m}) (\vc{x}_i - \vc{m})^\T . \end{equation} (10.135)
由定义可知,协方差矩阵对称且半正定,因此可用标准正交矩阵 $\mx{U}$ 对角化:
\begin{equation} \mx{C} = \mx{U} \mx{D} \mx{U}^\T . \end{equation} (10.136)
因此可以选取一组由特征向量组成的标准正交基。 矩阵 $\mx{U} = \begin{pmatrix} \vc{u}_1 & \ldots & \vc{u}_n \end{pmatrix}$ 的列就是这些特征向量。设其排列顺序使对应的特征值 $\lambda_1, \ldots, \lambda_n$ 递减,即 $\lambda_1 \geq \ldots \geq \lambda_n \geq 0$。于是 $\vc{u}_1$ 对应变化最大的方向,而 $\sqrt{\lambda_1}$ 是该方向上的标准差。图中,$\sqrt{\lambda_1}\vc{u}_1$ 是较长的箭头,$\sqrt{\lambda_2}\vc{u}_2$ 是较短的箭头。见交互式图解 10.10
交互式图解 10.10: 图中以蓝色显示一组点,以红色显示它们的均值点。你可以移动蓝点,观察均值点如何随之移动。单击“前进”继续动画。
交互式图解 10.10: 图中以蓝色显示一组点,以红色显示它们的均值点。你可以移动蓝点,观察均值点如何随之移动。单击“前进”继续动画。

例 10.18: 特征脸
基本思想是学习人脸图像的外观,再将学到的信息用于图像或视频压缩人脸检测人脸识别。简要地说,先计算一组图像的均值和协方差矩阵,再求协方差矩阵的特征向量特征值。对应最大特征值的特征向量最能有效编码图像的变化。 这是一个机器学习的例子。更一般地说,机器学习用来学习数据的良好表示,或学习如何识别图像。它会把线性代数、数理统计、分析与优化等方法应用于通常规模很大的数据集。

本例收集了一组人脸图像,如交互式图解 10.11所示。
交互式图解 10.11: 这 23 幅图像用于计算交互式图解 10.1所使用的基。
交互式图解 10.11: 这 23 幅图像用于计算交互式图解 10.1 所使用的基。
可以把图像看作线性向量空间中的元素。每幅图像 $\vc{W}$ 都由 $m$ 行、$n$ 列的像素强度构成,即
\begin{equation} \vc{W} = \begin{pmatrix} w_{1,1} & w_{1,2} & \ldots & w_{1,n} \\ w_{2,1} & w_{2,2} & \ldots & w_{2,n} \\ \vdots & \vdots & \vdots & \vdots \\ w_{m,1} & w_{m,2} & \ldots & w_{m,n} \end{pmatrix}. \end{equation} (10.137)
不过,我们现在把 $\vc{W}$ 看作线性向量空间中的元素,而不是一个拿来与向量相乘的矩阵! 定义一个从图像到列向量线性映射,按列依次堆叠图像元素:
\begin{equation} \begin{pmatrix} x_{1} \\ x_{2} \\ \vdots \\ x_{m} \\ x_{m+1} \\ x_{m+2} \\ \vdots \\ x_{m+m} \\ \vdots \\ x_{m(n-1)+1} \\ x_{m(n-1)+2} \\ \vdots \\ x_{N} \end{pmatrix} = \vc{x} = f(\vc{W}) = \begin{pmatrix} w_{1,1} \\ w_{2,1} \\ \vdots \\ w_{m,1} \\ w_{1,2} \\ w_{2,2} \\ \vdots \\ w_{m,2} \\ \vdots \\ w_{1,n} \\ w_{2,n} \\ \vdots \\ w_{m,n} \end{pmatrix} , \end{equation} (10.138)
其中 $N = mn$。再定义从列向量 $\vc{x}$ 到图像 $\vc{W}$ 的逆线性映射
\begin{equation} \begin{pmatrix} w_{1,1} & w_{1,2} & \ldots & w_{1,n} \\ w_{2,1} & w_{2,2} & \ldots & w_{2,n} \\ \vdots & \vdots & \vdots & \vdots \\ w_{m,1} & w_{m,2} & \ldots & w_{m,n} \end{pmatrix} = \vc{w} = f^{-1}(\vc{x}) = \begin{pmatrix} x_{1} & x_{m+1} & \ldots & x_{m (n-1) + 1} \\ x_{2} & x_{m+2} & \ldots & x_{m (n-1) + 2} \\ \vdots & \vdots & \vdots & \vdots \\ x_{m} & x_{m+m} & \ldots & x_{m n} \end{pmatrix} . \end{equation} (10.139)
换言之,$f$ 把一幅图像变成一个很长的列向量,而 $f^{-1}$ 把列向量还原成图像。 设有交互式图解 10.11所示的图像 $\vc{W}_1, \ldots, \vc{W}_{23}$。它们的尺寸均为 $81 \times 41$ 像素。通过 $\vc{x}_i = f(\vc{W}_i)$ 将每幅图像映射到相应列向量,便得到 $23$ 个向量 $\vc{x}_1, \ldots, \vc{x}_{23}$,每个向量的大小为 $3321 \times 1$。其均值向量为
\begin{equation} \vc{m} = \frac{1}{n} \sum_{i=1}^{n} \vc{x}_i , \end{equation} (10.140)
把它由向量转换回图像,就能显示为 $\vc{O} = f^{-1}(\vc{m})$。协方差矩阵为
\begin{equation} \mx{C} = \frac{1}{n} \sum_{i=1}^{n} (\vc{x}_i - \vc{m}) (\vc{x}_i - \vc{m})^\T . \end{equation} (10.141)
与上一例一样,用标准正交矩阵 $\mx{U}$ 分解协方差矩阵:
\begin{equation} \mx{C} = \mx{U} \mx{D} \mx{U}^\T, \end{equation} (10.142)
再次对特征向量排序,也就是调整 $\mx{U} = \begin{pmatrix} \vc{u}_1 & \ldots & \vc{u}_N \end{pmatrix}$ 各列的顺序,使对应特征值 $\lambda_1, \ldots, \lambda_N$ 递减,即 $\lambda_1 \geq \ldots \geq \lambda_N \geq 0$。于是 $\vc{u}_1$ 对应变化最大的方向,而 $\sqrt{\lambda_1}$ 是该方向上的标准差。 本例选取对应两个最大特征值的两个向量作为特征脸;把它们从向量转换回图像,即 $\vc{E}_1 = f^{-1}(\sqrt{\lambda_1} \vc{u}_1)$ 和 $\vc{E}_2 = f^{-1}(\sqrt{\lambda_2} \vc{u}_2)$。下方从左到右依次显示 $\vc{O}$、$\vc{E}_1$ 和 $\vc{E}_2$ 三幅图像。
10.9 展望


最后再看一个例子,它说明这一主题还有广阔得多的内容值得学习。

例 10.19:
特征向量特征值理论远不局限于方阵。 本例稍稍偏离主线,目的是展示本章某些概念的一般性。

对于一般的线性映射或算子,也可以研究其特征向量。函数求导就是一个有趣的例子。求导是线性运算,那么导数算子是否也有“特征向量”(或称特征函数)呢?

把“求导”看作一个运算 $D$:它以函数 $g$ 为输入,返回函数 $h$:
\begin{equation} h = D(g) = \frac{d}{dx} g . \end{equation} (10.143)
考察指数函数 $g$:
\begin{equation} g(x) = e^{\lambda x} . \end{equation} (10.144)
对 $g$ 求导得到
\begin{equation} D(g) = \frac{d}{dx} g = \lambda e^{\lambda x} = \lambda g \end{equation} (10.145)
因此 $D(g) = \lambda g$。换言之,$g$ 是导数算子的特征向量(特征函数),相应特征值为 $\lambda$。

不过,这已经稍稍超出了本课程的核心内容。


第 9 章:线性映射(上一章) 第 0 章:前言(下一章)