前言
前两篇讲了向量和矩阵。这一篇回答一个更深刻的问题:矩阵这个变换,有没有"主轴"? 沿着某个方向,变换可能只是单纯地拉伸(方向不变、长度变);沿着另一个方向,可能完全不动。抓住这些"不改变方向"的方向,矩阵的行为就一目了然了。
这就是特征值与特征向量的思想。它在深度学习里极其重要——梯度消失/爆炸、LoRA、PCA、甚至注意力里的缩放,背后都有它的影子。
特征值与特征向量
定义
对 $n \times n$ 矩阵 $A$,如果存在非零向量 $v$ 和标量 $\lambda$ 使得:
$$ Av = \lambda v $$则 $\lambda$ 称为 $A$ 的特征值,$v$ 是它对应的特征向量。
几何意义:$v$ 是变换 $A$ 的"主轴"方向——被 $A$ 作用后方向不变,只是长度缩放 $\lambda$ 倍。$\lambda > 1$ 拉伸,$0 < \lambda < 1$ 压缩,$\lambda < 0$ 反向。
如何求特征值
把定义移项:$(A - \lambda I)v = 0$。非零解存在的条件是矩阵不可逆,即:
$$ \det(A - \lambda I) = 0 $$这就是特征多项式,是 $\lambda$ 的一个 $n$ 次多项式,有 $n$ 个根(计重数)。
例:求 $A = \begin{bmatrix} 2 & 1 \\ 1 & 2 \end{bmatrix}$ 的特征值与特征向量。
$$ \det(A - \lambda I) = \det\begin{bmatrix} 2-\lambda & 1 \\ 1 & 2-\lambda \end{bmatrix} = (2-\lambda)^2 - 1 = \lambda^2 - 4\lambda + 3 = (\lambda - 1)(\lambda - 3) $$所以 $\lambda_1 = 3$,$\lambda_2 = 1$。分别代入 $(A - \lambda I)v = 0$:
- $\lambda = 3$ 时,$(A - 3I) = \begin{bmatrix} -1 & 1 \\ 1 & -1 \end{bmatrix}$,解得 $v_1 = (1, 1)$;
- $\lambda = 1$ 时,$(A - I) = \begin{bmatrix} 1 & 1 \\ 1 & 1 \end{bmatrix}$,解得 $v_2 = (1, -1)$。
验证:$Av_1 = (3, 3) = 3v_1$,$Av_2 = (1, -1) = 1v_2$。✓
特征分解(对角化)
如果 $n \times n$ 矩阵 $A$ 有 $n$ 个线性无关的特征向量,把它们按列排成 $P$,对应特征值放在对角矩阵 $D$,则有:
$$ A = PDP^{-1} $$这就是特征分解(对角化)。$D$ 是对角阵,非对角线全为 0,对角线上依次是特征值。
它最大的价值在计算幂。因为 $A^k = PD^k P^{-1}$,而 $D^k$ 只是把每个特征值取 $k$ 次方:
$$ A^k = P \begin{bmatrix} \lambda_1^k & & \\ & \ddots & \\ & & \lambda_n^k \end{bmatrix} P^{-1} $$于是"变换的长期行为"由特征值的绝对值决定:$|\lambda| > 1$ 时 $A^k$ 指数放大,$|\lambda| < 1$ 时指数衰减。
衔接:深层网络反向传播时,梯度沿每一层 Jacobian 连乘——这和"矩阵幂"是同一件事。如果特征值普遍小于 1,梯度指数衰减(梯度消失);普遍大于 1,梯度指数爆炸。这正是《矩阵微积分如何服务反向传播》里"梯度消失/爆炸来自 Jacobian 连乘"的谱视角。
注意,不是所有矩阵都能对角化。可对角化的条件是拥有 $n$ 个线性无关的特征向量。如果一个矩阵的几何重数不足(比如某些重复特征值只有一条特征向量),它只能约化成更一般的 Jordan 标准形——细节超出本文范围,知道"并非所有矩阵都可对角化"即可。
对称矩阵与谱定理
实对称矩阵($A = A^\top$)在线性代数里有几乎最好的性质:
- 特征值必为实数;
- 不同特征值对应的特征向量相互正交;
- 可以正交对角化:$A = Q\Lambda Q^\top$,其中 $Q$ 是正交矩阵($Q^\top = Q^{-1}$),$\Lambda$ 是对角阵。
这就是谱定理。它意味着对称矩阵有一个完全"规整"的坐标系,特征向量两两垂直、长度归一。
为什么值得单独提:机器学习里大量矩阵是对称的(协方差矩阵、Gram 矩阵、邻接矩阵),谱定理保证它们的特征分解稳定且性质良好。注意力里的相似度矩阵($QK^\top$)本身不对称,但很多理论分析会借助对称化的版本。
奇异值分解(SVD)
特征分解只适用于方阵。对任意 $m \times n$ 矩阵(不必是方阵),有更一般的奇异值分解:
$$ A = U\Sigma V^\top $$其中:
- $U$ 是 $m \times m$ 正交矩阵(列向量是左奇异向量);
- $V$ 是 $n \times n$ 正交矩阵(列向量是右奇异向量);
- $\Sigma$ 是 $m \times n$ 的"对角"矩阵,对角线上是奇异值 $\sigma_1 \ge \sigma_2 \ge \dots \ge 0$(非负)。
几何直觉:SVD 把任意线性变换拆成三步——先旋转($V^\top$)→ 沿坐标轴拉伸($\Sigma$)→ 再旋转($U$)。奇异值就是各主轴的拉伸倍率。
奇异值与特征值的关系:非零奇异值是 $A^\top A$ 的特征值的平方根,也是 $AA^\top$ 的特征值的平方根。这保证了 SVD 对任何矩阵都存在(包括不可对角化、非方阵),所以它比特征分解更通用。
衔接:截断 SVD(只保留前 $k$ 个最大的奇异值)得到最优低秩近似——这是 PCA、模型压缩的理论基础,也是 LoRA 这类参数高效微调(把权重更新写成低秩矩阵 $W + \Delta W$,其中 $\Delta W = BA$ 秩很小)背后的思想。
矩阵范数与谱半径
谱半径
方阵 $A$ 的谱半径定义为特征值模长的最大值:
$$ \rho(A) = \max_i |\lambda_i| $$从 $A^k = PD^kP^{-1}$ 可知,$\rho(A)$ 决定 $A$ 反复作用后的长期缩放趋势:$\rho < 1$ 时 $A^k \to 0$,$\rho > 1$ 时 $A^k$ 发散。所以谱半径是"这个矩阵会不会放大误差/梯度"的最直接指标。
与矩阵范数的关系
任意矩阵范数 $\|A\|$ 都满足 $\rho(A) \le \|A\|$。也就是说,谱半径是范数的一个下界——它衡量的是"最坏方向的放大倍率"。
衔接:在 ResNet 里,残差连接把反向传播的式子从 $\frac{\partial L}{\partial x} = \frac{\partial L}{\partial y}\frac{\partial F}{\partial x}$ 变成 $\frac{\partial L}{\partial y}\left(\frac{\partial F}{\partial x} + I\right)$。加上恒等项 $I$ 后,特征值整体加 1,谱半径远离"过小"区域,因此缓解了梯度消失——这可以从谱的角度直观理解《为什么 ResNet 能训练 152 层》。
总结与进阶衔接
这一篇的三条主线:
- 特征值/特征向量:找到变换"方向不变"的主轴;
- 特征分解与 SVD:把矩阵拆成"旋转 × 缩放 × 旋转",揭示其内在结构;
- 谱半径与范数:把矩阵的长期行为浓缩成一个数。
衔接清单:
- 《矩阵微积分如何服务反向传播》:梯度消失/爆炸来自 Jacobian 连乘,谱半径决定缩放趋势;VJP 的高效实现避免显式构造大矩阵。
- 《Softmax 与缩放点积的数学》:点积 $q \cdot k$ 的方差正比于维数 $d_k$,除以 $\sqrt{d_k}$ 把尺度(可以理解为控制"谱"的规模)压回 1,避免 softmax 饱和。
- 《正向传播与反向传播》:梯度消失/爆炸的根源,用谱的视角看得更清。
到这里,线性代数基础的三篇就齐了:向量 → 矩阵 → 特征分解。你可以回头重读《矩阵微积分如何服务反向传播》和《Softmax 与缩放点积的数学》,应该会顺畅很多。