Series · Linear Algebra · Chapter 8

对称矩阵与二次型

对称矩阵是线性代数中最美好的矩阵 -- 实特征值、正交特征向量、完美对角化。理解对称矩阵是掌握主成分分析、优化理论和物理振动分析的关键。

为什么对称矩阵是"最好的矩阵"

如果让线性代数家选出"最听话的矩阵",结果几乎一定是对称矩阵。它们具备三件好事:

  • 特征值全是实数
  • 存在一组完全正交的特征向量;
  • 一定可以完美对角化 $A = Q \Lambda Q^T$,逆矩阵和幂运算都几乎不要钱。

这并不是抽象的偏爱。日常工程里你真正会去算的矩阵,绝大多数本来就是对称的:

  • 协方差矩阵 $\Sigma = \tfrac{1}{n} X^T X$ 衡量特征之间的相关性,构造上必然对称。
  • 海森矩阵 $H_{ij} = \partial^2 f / \partial x_i \partial x_j$ 是函数的二阶导数。混合偏导可交换(Clairaut 定理),所以 $H$ 一定对称。
  • 刚度矩阵 $K$ 描述弹簧之间的相互作用,按牛顿第三定律一定满足 $K = K^T$。
  • 核矩阵 / Gram 矩阵 $G_{ij} = \langle x_i, x_j \rangle$ 是两两内积,因为内积本身对称所以 $G$ 也对称。

本章要讲清两件事:为什么对称矩阵的"对称"就能换来这么多好性质,以及如何借助二次型这副几何眼镜,一眼看出一个对称矩阵在干什么

你将学到

  • 为什么实对称矩阵的特征值一定是实的、特征向量一定可以取正交;
  • 谱定理 $A = Q \Lambda Q^T$ 的几何含义;
  • 二次型作为碗、鞍、山的形状字典;
  • 正定矩阵的判定方法和工程意义;
  • Cholesky 分解:正定矩阵的"开平方";
  • 瑞利商与 PCA 的直接联系;
  • SVD如何把谱定理推广到任意矩阵。

前置知识

  • 特征值与特征向量(第 6 章)
  • 正交性与投影(第 7 章)
  • 矩阵转置与基本性质(第 3 章)

对称矩阵长什么样

实矩阵 $A$ 称为对称的,如果 $A = A^T$,即 $a_{ij} = a_{ji}$ 对所有 $(i, j)$ 成立。换句话说,对角线上的数字可以随便填,但对角线两侧必须互为镜像。

对称矩阵的结构:对角线自由,非对角元素镜像出现

几何直觉:对称矩阵代表的线性变换只沿着某些正交方向做拉伸或压缩,绝不旋转、不剪切、不扭曲。想象用两只手沿两个互相垂直的方向拉一块橡皮泥——它的比例变了,但绝不会被你拧麻花。

弹簧类比:两个质点用弹簧连在一起。如果"推动质点 1 给质点 2 带来 $k$ 牛的力",那"推动质点 2 也会给质点 1 带来 $k$ 牛的力"。这种相互作用的对等性,正是 $A = A^T$ 在物理上的含义。

对称矩阵在哪里出现

对象公式为何对称
协方差$\Sigma = \tfrac{1}{n} X^T X$$(X^T X)^T = X^T X$
海森矩阵$H_{ij} = \partial^2 f / \partial x_i \partial x_j$混合偏导可交换
Gram 矩阵$G_{ij} = \langle x_i, x_j \rangle$内积对称
刚度矩阵$K \vec{x} = \vec{F}$牛顿第三定律
无向图邻接矩阵$a_{ij} = a_{ji}$边没有方向

对称带来的三大超能力

超能力 1:特征值都是实数

定理:实对称矩阵的所有特征值都是实数。

一般矩阵可能旋转空间,旋转矩阵的特征值就是复数($90^\circ$ 旋转的特征值是 $\pm i$)。但对称矩阵只拉伸不旋转,特征值自然不会跑到复数域里去。

证明思路:设 $A \vec{v} = \lambda \vec{v}$,其中 $\vec{v}$ 可能是复向量。考察标量 $\vec{v}^* A \vec{v}$。因为 $A$ 是实对称矩阵,$A^* = A^T = A$,所以

$$ \overline{\vec{v}^* A \vec{v}} \;=\; \vec{v}^T A^T \overline{\vec{v}} \;=\; \vec{v}^T A \overline{\vec{v}} \;=\; \vec{v}^* A \vec{v}. $$

也就是说 $\vec{v}^* A \vec{v} = \lambda \, \vec{v}^* \vec{v}$ 等于自己的共轭,而 $\vec{v}^* \vec{v} > 0$ 是一个正实数,所以 $\lambda = \overline{\lambda}$,即 $\lambda$ 是实数。

超能力 2:特征向量两两正交

定理:对称矩阵中不同特征值对应的特征向量必然正交。

证明:设 $A \vec{v}_1 = \lambda_1 \vec{v}_1$、$A \vec{v}_2 = \lambda_2 \vec{v}_2$,从两个角度计算 $\vec{v}_1^T A \vec{v}_2$:

$$ \vec{v}_1^T (A \vec{v}_2) = \lambda_2 \vec{v}_1^T \vec{v}_2, \qquad (A \vec{v}_1)^T \vec{v}_2 = \lambda_1 \vec{v}_1^T \vec{v}_2. $$

由 $A^T = A$ 知两式相等,相减得 $(\lambda_1 - \lambda_2)\, \vec{v}_1^T \vec{v}_2 = 0$。既然 $\lambda_1 \ne \lambda_2$,必有 $\vec{v}_1 \perp \vec{v}_2$。

如果同一个特征值有重数,对应的特征子空间维数等于重数,可以在子空间内部手动选一组正交基。最终结果是:实对称矩阵总能找到一组完整的正交单位特征向量

超能力 3:谱定理

把上面两条结合,就得到本章的核心定理:

谱定理:每个实对称矩阵 $A$ 都能写成 $A = Q \Lambda Q^T,$ 其中 $Q$ 是正交矩阵($Q^T Q = I$),列向量是单位特征向量;$\Lambda = \mathrm{diag}(\lambda_1, \ldots, \lambda_n)$ 是特征值组成的对角矩阵。

谱定理:对称矩阵的正交特征向量

可以从三个角度理解这个公式:

  1. 在特征向量构成的基下,$A$ 退化成"几个拉伸系数";
  2. $A$ 的作用 = 沿 $n$ 个互相垂直的轴各自做缩放;
  3. $A^k$、$A^{-1}$、$e^A$、$A^{1/2}$ 等等,全部都化归为对角矩阵 $\Lambda$ 上的同名运算。

外积形式:谱定理还可以写成秩 1 矩阵之和

$$ A \;=\; \lambda_1 \vec{q}_1 \vec{q}_1^T + \lambda_2 \vec{q}_2 \vec{q}_2^T + \cdots + \lambda_n \vec{q}_n \vec{q}_n^T. $$

其中 $\vec{q}_i \vec{q}_i^T$ 是投影到第 $i$ 个特征向量方向的秩 1 投影,$\lambda_i$ 是它的"权重"。“谱"这个名字来自光学:白光被棱镜分解为不同纯色(频率),对称矩阵被谱定理分解为不同纯方向(特征向量)乘以对应"亮度”(特征值)。


二次型:能量的几何

定义

$n$ 个变量的二次型是一个齐次二次多项式:

$$ Q(\vec{x}) \;=\; \vec{x}^T A \vec{x} \;=\; \sum_{i, j} a_{ij}\, x_i x_j. $$

我们总是可以假设 $A$ 对称,因为 $\vec{x}^T B \vec{x} = \vec{x}^T \tfrac{B + B^T}{2} \vec{x}$。

例子:$Q(x_1, x_2) = 3 x_1^2 + 4 x_1 x_2 + x_2^2$ 对应

$$ A = \begin{pmatrix} 3 & 2 \\ 2 & 1 \end{pmatrix}, $$

交叉项系数 $4$ 平分到 $a_{12}, a_{21}$ 上各一半,矩阵就对称了。

物理意义:耦合弹簧系统的弹性势能 $E = \tfrac{1}{2} \vec{x}^T K \vec{x}$ 就是一个典型的二次型,矩阵 $K$ 是刚度矩阵。

把眼镜换成"特征值"

把 $\vec{x} = Q \vec{y}$ 代入二次型:

$$ Q(\vec{x}) \;=\; \vec{y}^T \Lambda \vec{y} \;=\; \lambda_1 y_1^2 + \lambda_2 y_2^2 + \cdots + \lambda_n y_n^2. $$

所有交叉项消失,二次型的几何形状完全由特征值的符号决定——这就是主轴定理

特征值符号名称二维形状直觉
全部 $> 0$正定椭圆 / 碗小球稳稳停在碗底
全部 $< 0$负定倒椭圆 / 山小球从山顶滚落
既正又负不定双曲线 / 鞍鞍点:一个方向上是最小,另一个方向上是最大
$\ge 0$ 且至少一个 $= 0$半正定沿某方向是平的

二次型的形状:碗、鞍、山

四种情况完整一览,每张图右下角标注了对应的两个特征值:

四类对称矩阵

标准化举例

考虑 $Q = 3x_1^2 + 2 x_1 x_2 + 3 x_2^2$,对应矩阵 $A = \bigl(\begin{smallmatrix} 3 & 1 \\ 1 & 3 \end{smallmatrix}\bigr)$。解 $\det(A - \lambda I) = 0$ 得 $\lambda_1 = 4$,$\lambda_2 = 2$。在新坐标系下二次型成为

$$ Q = 4 y_1^2 + 2 y_2^2. $$

这是一个椭圆,主轴相对原 $x$ 轴倾斜 $45^\circ$。


正定矩阵

定义

对称矩阵 $A$ 称为正定(positive definite, PD),如果对任意非零向量 $\vec{x}$,

$$ \vec{x}^T A \vec{x} > 0. $$

几何上:能量在远离原点的任何方向上都增加,曲面是一个真正的"碗",原点是它唯一的最小值。

相关概念:

  • 半正定(PSD):$\vec{x}^T A \vec{x} \ge 0$(某些方向上是平的);
  • 负定:$\vec{x}^T A \vec{x} < 0$(山顶);
  • 不定:取值有正有负(鞍)。

四种等价的正定判定

实对称矩阵 $A$,下列条件等价:

  1. 特征值法:所有 $\lambda_i > 0$。
  2. Sylvester 判据:所有顺序主子式为正: $$a_{11} > 0, \quad \begin{vmatrix} a_{11} & a_{12} \\ a_{21} & a_{22}\end{vmatrix} > 0, \quad \ldots, \quad \det(A) > 0.$$
  3. Cholesky 存在:$A = L L^T$,$L$ 是对角元为正的下三角矩阵。
  4. 主元法:高斯消元把 $A$ 化简后得到 $n$ 个正主元。

数值实践中,最可靠的判定方法是直接尝试 Cholesky 分解:成功 $\Leftrightarrow$ 正定,并且顺手得到一个有用的分解。

常用性质

  • 可逆:$\det(A) = \prod \lambda_i > 0$;
  • 对角元为正:取 $\vec{x} = \vec{e}_i$,$a_{ii} = \vec{e}_i^T A \vec{e}_i > 0$;
  • 逆矩阵也正定:$A = Q \Lambda Q^T \Rightarrow A^{-1} = Q \Lambda^{-1} Q^T$,特征值变成 $1/\lambda_i$,仍然为正;
  • 正定矩阵之和仍正定
  • 平方根存在:唯一的正定矩阵 $A^{1/2}$ 满足 $A^{1/2} A^{1/2} = A$;
  • $X^T X$ 总半正定,当且仅当 $X$ 列满秩时正定。

Cholesky 分解:矩阵开方

定义

正定矩阵 $A$ 的 Cholesky 分解

$$ A = L L^T, $$

其中 $L$ 是对角元严格为正的下三角矩阵,存在且唯一。它就像 $\sqrt{4} = 2$ 的矩阵推广:把 $A$ 拆成 $L \times L^T$。

二维公式

对 $A = \bigl(\begin{smallmatrix} a & b \\ b & c \end{smallmatrix}\bigr)$,

$$ L = \begin{pmatrix} \sqrt{a} & 0 \\ b/\sqrt{a} & \sqrt{c - b^2/a} \end{pmatrix}. $$

例子:$A = \bigl(\begin{smallmatrix} 4 & 2 \\ 2 & 3 \end{smallmatrix}\bigr)$:

$$ l_{11} = 2, \quad l_{21} = 1, \quad l_{22} = \sqrt{3 - 1} = \sqrt{2}, \qquad L = \begin{pmatrix} 2 & 0 \\ 1 & \sqrt{2} \end{pmatrix}. $$

验证 $L L^T = A$。

为什么 Cholesky 重要

  • 求解线性方程组 $A \vec{x} = \vec{b}$:先解下三角 $L \vec{y} = \vec{b}$,再解上三角 $L^T \vec{x} = \vec{y}$。比 LU 分解约快一倍,且数值稳定。
  • 生成相关高斯随机数:要采样 $\vec{z} \sim \mathcal{N}(\vec{0}, \Sigma)$,先采样 $\vec{u} \sim \mathcal{N}(\vec{0}, I)$,再计算 $\vec{z} = L \vec{u}$,其中 $\Sigma = L L^T$。验证 $\mathrm{Cov}(\vec{z}) = L L^T = \Sigma$。
  • 正定性检测:如果 Cholesky 在某一步出现负数开方,说明 $A$ 不正定。

主轴:椭球的几何

正定矩阵 $A$ 的水平集 $\vec{x}^T A \vec{x} = 1$ 是一个椭球。它的主轴方向恰好是特征向量 $\vec{q}_i$,对应的半轴长度是 $1/\sqrt{\lambda_i}$(特征值越大,“弹簧越硬”,对应方向上的半轴就越短)。

椭圆的主轴方向 = A 的特征向量

在特征向量基下,椭圆变得轴对齐,交叉项彻底消失——同一个曲面,只是换到了它"自己的"坐标系。

三维上同样的逻辑就是转动惯量的"主轴坐标系":找到刚体惯量张量的特征向量方向,旋转方程就解耦了。


瑞利商

定义

对称矩阵 $A$ 的瑞利商

$$ R(\vec{x}) \;=\; \frac{\vec{x}^T A \vec{x}}{\vec{x}^T \vec{x}}. $$

分子衡量 $A$ 在方向 $\vec{x}$ 上的"拉伸量",分母对长度归一化。

极值性质

$\lambda_{\min} \;\le\; R(\vec{x}) \;\le\; \lambda_{\max} \quad (\vec{x} \ne \vec{0}).$ 最大值 $\lambda_{\max}$ 在最大特征向量方向取得;最小值 $\lambda_{\min}$ 在最小特征向量方向取得。

一行证明:在正交特征基下展开 $\vec{x} = \sum c_i \vec{q}_i$,则 $R(\vec{x}) = \sum \lambda_i c_i^2 / \sum c_i^2$,是特征值的非负权平均,自然落在 $[\lambda_{\min}, \lambda_{\max}]$ 之间。

瑞利商在特征向量方向取得极值

这正是 PCA 的精确版本:方差最大的投影方向是协方差矩阵的最大特征向量,最大方差就是它的最大特征值。最简单的特征值算法 幂迭代 也直接来自这条性质。


白化与解相关

如果协方差 $\Sigma$ 正定,谱定理给出 $\Sigma = Q \Lambda Q^T$,从而

$$ \Sigma^{-1/2} \;=\; Q \Lambda^{-1/2} Q^T. $$

白化变换 $\vec{z} = \Sigma^{-1/2} \vec{x}$ 把数据变成相互独立、单位方差:

$$ \mathrm{Cov}(\vec{z}) \;=\; \Sigma^{-1/2} \, \Sigma \, \Sigma^{-1/2} \;=\; I. $$

很多机器学习算法(线性回归、高斯朴素贝叶斯、ICA)默认假设特征已白化。白化往往一行代码就能极大改善条件数与收敛速度。


应用速览

协方差与 PCA

样本协方差 $\Sigma = \tfrac{1}{n} X^T X$ 是对称半正定矩阵。它的谱分解 = 主成分分析:特征向量是主成分方向,特征值是该方向上的方差。PCA 本身就是"对协方差矩阵做谱分解,保留前 $k$ 个最大成分"。

海森矩阵与最优化

光滑函数 $f$ 在临界点附近的二阶 Taylor 展开为

$$ f(\vec{x}_0 + \vec{h}) \;\approx\; f(\vec{x}_0) + \tfrac{1}{2} \vec{h}^T H \vec{h}. $$

海森矩阵 $H$ 对称,其特征值符号给出多元二阶导数检验:

  • $H$ 正定 $\Rightarrow$ 局部极小;
  • $H$ 负定 $\Rightarrow$ 局部极大;
  • $H$ 不定 $\Rightarrow$ 鞍点。

Ridge 回归

岭回归的解为

$$ \hat{\vec{w}} \;=\; (X^T X + \lambda I)^{-1} X^T \vec{y}. $$

加上 $\lambda I$ 后,对称半正定矩阵 $X^T X$ 的所有特征值各上移 $\lambda$,从而严格正定、条件数变好。几何上,岭回归把损失函数里"平坦的山谷"加固为一个真正的碗,从而恢复了唯一的全局最小值。

振动系统

耦合质点-弹簧系统的动能与势能分别为 $T = \tfrac{1}{2} \dot{\vec{x}}^T M \dot{\vec{x}}$、$V = \tfrac{1}{2} \vec{x}^T K \vec{x}$,$M, K$ 都对称正定。固有频率来自广义特征值问题 $K \vec{v} = \omega^2 M \vec{v}$。对应的特征向量是振型——系统不变形地振动的"自然模式"。一根吉他弦的所有泛音、一座桥的共振频率、一个分子的基频,都是某个刚度矩阵的特征值。

投资组合优化

Markowitz 均值-方差模型在给定目标收益下最小化风险 $\vec{w}^T \Sigma \vec{w}$。$\Sigma$ 正定保证最优解存在且唯一,整个问题是一个良态二次规划。如何估计一个真正正定的 $\Sigma$(收缩估计、因子模型)本身就是一个研究方向。


SVD:第一眼

如果 $A$ 不对称,甚至不是方阵,谱定理就失效了。但它最近的亲戚仍然存在——奇异值分解 (SVD)

$$ A \;=\; U \Sigma V^T, $$

$U, V$ 正交,$\Sigma$ 是非负对角矩阵(奇异值)。任意矩阵都有 SVD。

SVD 预览:任何矩阵把单位圆映成椭圆

两条事实把 SVD 与本章绑在一起:

  • $A$ 的奇异值 = 对称半正定矩阵 $A^T A$ 的特征值开根号;
  • 右奇异向量 $\vec{v}_i$ 是 $A^T A$ 的特征向量,左奇异向量 $\vec{u}_i$ 是 $A A^T$ 的特征向量。

也就是说,SVD 就是把谱定理用在 $A^T A$ 和 $A A^T$ 这两个对称伙伴身上。第 9 章会专门讲它。


Python 实操

谱分解

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
import numpy as np

A = np.array([[3.0, 1.0],
              [1.0, 3.0]])

# eigh 专为对称 / Hermite 矩阵设计:实特征值 + 正交 Q
eigenvalues, Q = np.linalg.eigh(A)
Lambda = np.diag(eigenvalues)

print("特征值:", eigenvalues)
print("Q^T Q (应为 I):\n", Q.T @ Q)
print("重建 Q Lambda Q^T:\n", Q @ Lambda @ Q.T)

Cholesky 分解

1
2
3
4
5
6
A = np.array([[4.0, 2.0],
              [2.0, 3.0]])

L = np.linalg.cholesky(A)
print("L:\n", L)
print("L L^T:\n", L @ L.T)

二次型与主轴

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
import matplotlib.pyplot as plt

A = np.array([[2.0, 1.0],
              [1.0, 3.0]])

g = np.linspace(-3, 3, 200)
X, Y = np.meshgrid(g, g)
Z = A[0, 0] * X**2 + 2 * A[0, 1] * X * Y + A[1, 1] * Y**2

eigvals, eigvecs = np.linalg.eigh(A)

fig, ax = plt.subplots(figsize=(6, 6))
ax.contour(X, Y, Z, levels=15, cmap='viridis')
for i in range(2):
    v = eigvecs[:, i] * 2
    ax.arrow(0, 0, v[0], v[1], head_width=0.1, color='red', linewidth=2)
    ax.text(v[0] * 1.1, v[1] * 1.1, f'$\\lambda$={eigvals[i]:.2f}')
ax.set_aspect('equal')
ax.set_title('二次型等高线与主轴方向')
plt.show()

练习题

热身

  1. 用特征值法和 Sylvester 判据判断 $A = \bigl(\begin{smallmatrix} 2 & 1 \\ 1 & 2 \end{smallmatrix}\bigr)$ 是否正定。
  2. 把 $Q(x_1,x_2) = 5x_1^2 + 4x_1x_2 + 2x_2^2$ 写成 $\vec{x}^T A \vec{x}$ 的形式,并判断 $A$ 的正定性。
  3. 计算 $A = \bigl(\begin{smallmatrix} 9 & 6 \\ 6 & 5 \end{smallmatrix}\bigr)$ 的 Cholesky 分解。

进阶

  1. 证明:若 $A$ 正定,则 $A^{-1}$ 也正定。
  2. 证明:$X^T X$ 总半正定,且当且仅当 $X$ 列满秩时正定。
  3. 对 $Q = 2x_1^2 + 4x_1x_2 + 5x_2^2$:求特征值,写出标准形,并草绘 $Q = 1$ 的等高线。
  4. 证明对称矩阵的迹等于特征值之和,行列式等于特征值之积。
  5. 证明半正定矩阵正定 $\Leftrightarrow$ 可逆。

编程

  1. 不调用 numpy.linalg.cholesky,从零实现 Cholesky 算法,并在随机正定矩阵上验证。
  2. 数值验证谱定理:随机生成对称矩阵,做谱分解,比较 $\| A - Q \Lambda Q^T \|$。
  3. 在二维相关高斯数据上实现 PCA:画出原始数据、主成分方向,以及在第一主成分上的投影。
  4. 实现白化变换:生成相关高斯样本,乘以 $\Sigma^{-1/2}$,验证白化后的协方差近似单位矩阵。

本章小结

概念关键事实重要性
对称矩阵$A = A^T$只拉伸不旋转
实特征值总成立没有复数惊喜
正交特征向量不同 $\lambda$ 必正交干净的分解
谱定理$A = Q \Lambda Q^T$PCA、振型分析的基石
二次型$\vec{x}^T A \vec{x}$碗 / 鞍 / 山
正定$\vec{x}^T A \vec{x} > 0$稳定能量、唯一最小值
瑞利商$\lambda_{\min} \le R \le \lambda_{\max}$PCA 的变分原理
Cholesky$A = L L^T$快速、稳定的"开方"
SVD$A = U \Sigma V^T$把谱定理推广到任意矩阵

系列导航

参考资料

  • Strang, G. (2019). Introduction to Linear Algebra, 第 6 章.
  • Horn, R. A. & Johnson, C. R. (2012). Matrix Analysis, 第 2 版.
  • Boyd, S. & Vandenberghe, L. (2004). Convex Optimization.
  • Golub, G. H. & Van Loan, C. F. (2013). Matrix Computations, 第 4 版.
  • 3Blue1Brown. Essence of Linear Algebra 系列视频.

Liked this piece?

Follow on GitHub for the next one — usually one a week.

GitHub