本站内容由 AI 生成,可能存在错误。如发现问题,欢迎到 GitHub Issues 反馈。

矩阵结构的几何:二次型、正定性与协方差

矩阵结构的几何:二次型、正定性与协方差

更新于 2026-04-23

上一篇(Art. 1A)给了我们描述向量和子空间的几何语言——内积度量对齐、投影做分解、秩衡量独立方向。这些是向量级的工具。

现在我们要问一个更深层的问题:矩阵本身有什么内在结构? 一个矩阵不只是一堆数字排成方阵。不同的矩阵有不同的”形状”——对称、正定、协方差、Gram……这些结构标签意味着什么?为什么 ML 中遇到的矩阵大多是对称半正定的?矩阵的迹和行列式这两个标量数字又凝缩了什么信息?

连接线是二次型(quadratic form)xTAx\mathbf{x}^TA\mathbf{x}——它把矩阵变成一个标量值函数,几何上画出椭圆、双曲线等曲面。正定意味着椭圆不退化——所有方向都在拉伸。协方差矩阵是”数据云的形状描述”,天然半正定。VTVV^TV 度量列之间的相似度,VVTVV^T 把向量投影到列空间。迹和行列式是矩阵的两个最浓缩的”摘要”——总拉伸量和体积缩放。

这六个概念构成了矩阵级的几何语言,为 Art. 2 的特征分解做好最后的铺垫。

二次型:把矩阵变成几何曲面

从矩阵到标量函数

给定一个对称矩阵 ARn×nA \in \mathbb{R}^{n \times n}(即 A=ATA = A^T),二次型(quadratic form)定义为:

f(x)=xTAxf(\mathbf{x}) = \mathbf{x}^TA\mathbf{x}

这是一个从 Rn\mathbb{R}^nR\mathbb{R} 的函数——输入一个向量,输出一个标量。

为什么要求 AA 对称?因为任何矩阵的二次型都等于其对称部分的二次型。具体来说,任意矩阵 BB 都可以唯一分解为对称部分和反对称部分之和:

B=B+BT2对称部分 S+BBT2反对称部分 KB = \underbrace{\frac{B + B^T}{2}}_{\text{对称部分 } S} + \underbrace{\frac{B - B^T}{2}}_{\text{反对称部分 } K}

其中 S=STS = S^TK=KTK = -K^T。关键观察:反对称矩阵对二次型的贡献恒为零。这是因为 xTKx\mathbf{x}^TK\mathbf{x} 是一个标量,标量的转置等于自身:

xTKx=(xTKx)T=xTKTx=xT(K)x=xTKx\mathbf{x}^TK\mathbf{x} = (\mathbf{x}^TK\mathbf{x})^T = \mathbf{x}^TK^T\mathbf{x} = \mathbf{x}^T(-K)\mathbf{x} = -\mathbf{x}^TK\mathbf{x}

一个数等于它自己的负数,只能是零。因此:

二次型只看到对称部分

xTBx=xT ⁣(B+BT2)x\mathbf{x}^TB\mathbf{x} = \mathbf{x}^T\!\left(\frac{B + B^T}{2}\right)\mathbf{x}

反对称部分对二次型贡献恒为零 → 正定性只对对称矩阵讨论。

也就是说,二次型只”看到”矩阵的对称部分——反对称部分完全隐形。所以不失一般性,我们只讨论对称矩阵。

2×22 \times 2 验证:取 B=[1312]B = \begin{bmatrix}1 & 3 \\ 1 & 2\end{bmatrix},对称部分 S=[1222]S = \begin{bmatrix}1 & 2 \\ 2 & 2\end{bmatrix},反对称部分 K=[0110]K = \begin{bmatrix}0 & 1 \\ -1 & 0\end{bmatrix}。对 x=(x1,x2)T\mathbf{x} = (x_1, x_2)^TxTKx=x1x2x2x1=0\mathbf{x}^TK\mathbf{x} = x_1 x_2 - x_2 x_1 = 0 ✓。反对称部分产生的两个交叉项恰好正负抵消。

2D 展开:看清每一项

在二维空间中,设 x=(x1,x2)T\mathbf{x} = (x_1, x_2)^T,对称矩阵 A=[abbc]A = \begin{bmatrix}a & b \\ b & c\end{bmatrix}。展开二次型:

xTAx=(x1x2)[abbc](x1x2)=ax12+2bx1x2+cx22\mathbf{x}^TA\mathbf{x} = \begin{pmatrix}x_1 & x_2\end{pmatrix}\begin{bmatrix}a & b \\ b & c\end{bmatrix}\begin{pmatrix}x_1 \\ x_2\end{pmatrix} = ax_1^2 + 2bx_1x_2 + cx_2^2

逐项含义:

  • ax12ax_1^2:沿 x1x_1 轴的”拉伸”,系数 aa 决定拉伸强度
  • cx22cx_2^2:沿 x2x_2 轴的”拉伸”,系数 cc 决定拉伸强度
  • 2bx1x22bx_1x_2耦合项——两个坐标轴之间的”交叉作用”。b=0b = 0 时两轴独立

等值线的几何:矩阵决定形状

二次型的等值线(contour)是满足 xTAx=c\mathbf{x}^TA\mathbf{x} = c 的所有点的集合。不同的矩阵画出截然不同的几何图形。

例 1:对角正定矩阵 A=[3001]A = \begin{bmatrix}3 & 0 \\ 0 & 1\end{bmatrix}

3x12+x22=13x_1^2 + x_2^2 = 1

这是一个标准椭圆——x1x_1 方向被压得更窄(系数 3 更大),x2x_2 方向更宽。椭圆的轴就沿坐标轴方向。

例 2:对角不定矩阵 A=[2001]A = \begin{bmatrix}2 & 0 \\ 0 & -1\end{bmatrix}

2x12x22=12x_1^2 - x_2^2 = 1

这是一条双曲线——x1x_1 方向的系数为正,x2x_2 方向为负,两个方向的”拉伸”相互矛盾。

例 3:非对角正定矩阵 A=[2112]A = \begin{bmatrix}2 & 1 \\ 1 & 2\end{bmatrix}

2x12+2x1x2+2x22=12x_1^2 + 2x_1x_2 + 2x_2^2 = 1

仍然是椭圆(因为两个方向的系数都为正且足够大),但椭圆旋转了——轴不再沿坐标轴。耦合项 2x1x22x_1x_2 让椭圆倾斜了 45 度。

二次型的等值线:矩阵结构决定几何形状
xᵀAx = c 的等值线由矩阵 A 的性质决定
正定(椭圆)A = [[3, 0], [0, 1]]x₁x₂3x₁² + x₂² = c不定(双曲线)A = [[2, 0], [0, −1]]x₁x₂2x₁² − x₂² = c旋转椭圆A = [[2, 1], [1, 2]]x₁x₂2x₁² + 2x₁x₂ + 2x₂² = c

关键观察:椭圆/双曲线的轴方向和长度,完全由矩阵 AA 决定。 找到这些”天然轴”——让二次型的等值线变成最简单的形式——正是 Art. 2 特征分解要做的事。

二次型为什么重要

二次型不是一个纯数学游戏。在优化中,一个光滑函数在极值点附近的 Taylor 展开恰好是二次型:

f(x)f(x0)+f(x0)T(xx0)+12(xx0)TH(xx0)f(\mathbf{x}) \approx f(\mathbf{x}_0) + \nabla f(\mathbf{x}_0)^T(\mathbf{x} - \mathbf{x}_0) + \frac{1}{2}(\mathbf{x} - \mathbf{x}_0)^T H (\mathbf{x} - \mathbf{x}_0)

在极值点 f=0\nabla f = \mathbf{0},函数的局部行为就由二次型 12dTHd\frac{1}{2}\mathbf{d}^TH\mathbf{d} 决定(HH 是 Hessian 矩阵)。椭圆形等值线意味着碗底(极小值),双曲线意味着鞍点。深度学习中损失函数的地形分析,核心就是在分析这个二次型。

同时,PCA 的优化目标 maxwwTCw\max_{\mathbf{w}} \mathbf{w}^TC\mathbf{w}(约束 w=1\|\mathbf{w}\| = 1)本身就是协方差矩阵 CC 的二次型——在单位球面上找二次型的最大值。

正定与半正定:所有方向都在拉伸

定义

二次型的”形状”引出了矩阵最重要的分类之一:

  • 正定(positive definite):xTAx>0\mathbf{x}^TA\mathbf{x} > 0 对所有 x0\mathbf{x} \neq \mathbf{0}
  • 半正定(positive semidefinite,简写 PSD):xTAx0\mathbf{x}^TA\mathbf{x} \geq 0 对所有 x\mathbf{x}
  • 不定(indefinite):存在 x\mathbf{x} 使 xTAx>0\mathbf{x}^TA\mathbf{x} > 0,也存在 y\mathbf{y} 使 yTAy<0\mathbf{y}^TA\mathbf{y} < 0

直观理解:

  • 正定 = 不管从哪个方向看,二次型都严格为正 = 等值线是封闭椭圆 = 碗形曲面
  • 半正定 = 所有方向都非负,但某些方向可能为零 = 椭圆可能退化成椭圆柱
  • 不定 = 有些方向为正、有些为负 = 等值线是双曲线 = 鞍面
正定 vs 不定:等值线的几何区别
正定 = 封闭椭圆(碗底) 不定 = 双曲线(鞍点)
正定:所有方向都 > 0xᵀAx > 0 对所有 x ≠ 0A = [[2,1],[1,2]]++++++++等值线全是封闭椭圆↔ "碗形"曲面,有唯一最小值不定:有正有负存在 x 使 xᵀAx < 0A = [[1,0],[0,−1]]++等值线是双曲线↔ "鞍面",无最小值

不依赖特征分解的判定方法

判断正定/半正定,有一个非常直接的充分条件:

BTBB^TB 判据A=BTBA = B^TB \Longrightarrow AA 半正定

xTAx=Bx20\mathbf{x}^TA\mathbf{x} = \|B\mathbf{x}\|^2 \geq 0

推论:协方差矩阵(1nXTX\frac{1}{n}X^TX)、Gram 矩阵、Kernel 矩阵都是对称半正定的。

什么时候严格正定?当 Bx=0B\mathbf{x} = \mathbf{0} 只有 x=0\mathbf{x} = \mathbf{0} 这个解时——即 BB 的零空间只包含零向量——BTBB^TB 就是正定的。

另一个简单判据:对角矩阵的正定性直接由对角元素决定。 如果 A=diag(d1,,dn)A = \text{diag}(d_1, \ldots, d_n),则:

xTAx=d1x12+d2x22++dnxn2\mathbf{x}^TA\mathbf{x} = d_1 x_1^2 + d_2 x_2^2 + \cdots + d_n x_n^2

所有 di>0d_i > 0 则正定,所有 di0d_i \geq 0 则半正定,有正有负则不定。

Art. 2 预告:特征分解会揭示一个优雅的等价条件——正定     \iff 所有特征值 >0> 0。这把一般矩阵的正定性判断归结为了对角矩阵的情况。

为什么 ML 关心正定性

正定/半正定不只是数学家的分类游戏,它在 ML 中有直接的实际意义:

  • 协方差矩阵半正定:方差不能为负——这个直觉将在下面的 §4 中精确化
  • Hessian 正定 \Rightarrow 局部极小:优化算法在正定 Hessian 处找到的是碗底,不是鞍点
  • Kernel 矩阵要求半正定:支持向量机、高斯过程等 kernel 方法的数学基础要求 kernel 矩阵 Kij=k(xi,xj)K_{ij} = k(\mathbf{x}_i, \mathbf{x}_j) 是半正定的

对称矩阵:ML 中最常见的结构

在一般线性代数课程中,矩阵可以是任意形状的。但在 ML 中,你遇到的重要方阵绝大多数是对称的。这不是巧合,而是有结构性原因的。

为什么对称矩阵无处不在

ML 中的对称矩阵无处不在
对称 + 半正定是 ML 中最常见的矩阵结构
AᵀA(Gram)列相似度协方差矩阵数据云形状Kernel 矩阵k(xᵢ, xⱼ)图 LaplacianL = D − WHessian二阶导数矩阵对称 + 半正定A = Aᵀ, xᵀAx ≥ 0这些矩阵都是对称半正定的——为什么?因为它们本质上都是 BᵀB 的形式

ATAA^TA 必对称

(ATA)T=AT(AT)T=ATA(A^TA)^T = A^T(A^T)^T = A^TA

结合 BTBB^TB 判据 → ATAA^TA 同时是对称且半正定的。

这一条就解释了大量的对称矩阵来源。以下 ML 中的核心矩阵都是 BTBB^TB(或类似形式):

  1. 协方差矩阵 C=1n1X~TX~C = \frac{1}{n-1}\tilde{X}^T\tilde{X}:中心化数据的 Gram 矩阵,对称且半正定
  2. Gram 矩阵 G=VTVG = V^TV:度量向量集合的两两内积,对称且半正定
  3. Kernel 矩阵 Kij=k(xi,xj)K_{ij} = k(\mathbf{x}_i, \mathbf{x}_j):如果 kernel 函数 kk 满足 Mercer 条件,KK 对称半正定
  4. 图 Laplacian L=DWL = D - WDD 是度数对角矩阵,WW 是邻接矩阵。LL 对称(对无向图)且半正定
  5. Hessian 矩阵:二阶偏导数矩阵 Hij=2fxixjH_{ij} = \frac{\partial^2 f}{\partial x_i \partial x_j},由偏导数交换性保证对称

对称矩阵有什么特殊?

对称矩阵不仅仅是"A=ATA = A^T"这样的代数条件。从几何上看,对称矩阵有一个核心性质:它的二次型等值线一定有互相正交的轴。

回顾前面的例子:[2112]\begin{bmatrix}2 & 1 \\ 1 & 2\end{bmatrix} 的等值线是旋转了 45° 的椭圆。但无论怎么旋转,椭圆的长轴和短轴一定互相垂直——这不是偶然,而是对称性保证的。

边界声明:为什么对称矩阵一定有正交的轴?这背后是谱定理(spectral theorem),将在 Art. 2 特征分解 给出完整答案。本节只需要记住两点:

  1. 对称矩阵在 ML 中无处不在(因为 BTBB^TB 结构)
  2. 对称矩阵有某种内在的正交结构——这使得它们特别适合分析和分解

协方差矩阵:数据云的形状

前三节建立了二次型、正定性和对称性这三个概念。现在把它们统一到一个 ML 中最重要的矩阵上:协方差矩阵(covariance matrix)。

从散点图到椭球

想象在二维平面上撒了一把点——有些像圆形分布,有些像细长的椭圆。协方差矩阵精确地描述了这种”形状”:点云是圆形还是椭圆?椭圆指向哪个方向?椭圆有多扁?

定义

给定 nndd 维数据点 x1,,xn\mathbf{x}_1, \ldots, \mathbf{x}_n,均值为 xˉ=1ni=1nxi\bar{\mathbf{x}} = \frac{1}{n}\sum_{i=1}^n \mathbf{x}_i。中心化数据 x~i=xixˉ\tilde{\mathbf{x}}_i = \mathbf{x}_i - \bar{\mathbf{x}},写成矩阵形式 X~Rn×d\tilde{X} \in \mathbb{R}^{n \times d}(每行是一个中心化样本)。

协方差矩阵定义为:

C=1n1X~TX~C = \frac{1}{n-1}\tilde{X}^T\tilde{X}

这是一个 d×dd \times d 的矩阵。分母 n1n-1(而非 nn)是无偏估计的 Bessel 校正。

逐项解读

CC 的每个元素都有清晰的含义:

Cij=1n1k=1nx~kix~kjC_{ij} = \frac{1}{n-1}\sum_{k=1}^n \tilde{x}_{ki}\,\tilde{x}_{kj}

  • 对角线 Cii=1n1k=1nx~ki2=Var(xi)C_{ii} = \frac{1}{n-1}\sum_{k=1}^n \tilde{x}_{ki}^2 = \text{Var}(x_i):第 ii 个特征的方差——数据在第 ii 个坐标方向上散布的程度
  • 非对角 CijC_{ij} (iji \neq j):第 ii 和第 jj 个特征之间的协方差——两个特征是否”一起变大”或”一个变大另一个变小”
    • Cij>0C_{ij} > 0:正相关(同增同减)
    • Cij=0C_{ij} = 0:不相关
    • Cij<0C_{ij} < 0:负相关

几何意义:vTCv\mathbf{v}^TC\mathbf{v} 就是方向方差

协方差矩阵直接决定了数据云的”形状”。这个说法的精确含义需要分三步理解。

第一步:把高维数据投影到一个方向上。 取任意单位向量 v\mathbf{v}v=1\|\mathbf{v}\| = 1),代表空间中的一个方向。每个中心化样本 x~i\tilde{\mathbf{x}}_iv\mathbf{v} 方向上的投影是一个标量:

pi=x~iTvp_i = \tilde{\mathbf{x}}_i^T \mathbf{v}

nn 个标量 p1,p2,,pnp_1, p_2, \ldots, p_n 描述了数据沿 v\mathbf{v} 方向的分布——它们就是”从 v\mathbf{v} 方向看过去”数据散布的程度。

第二步:这些投影值的方差恰好等于 vTCv\mathbf{v}^TC\mathbf{v} 因为数据已经中心化(均值为零),投影值的均值也为零,所以方差就是平方和除以 n1n-1

Var(投影)=1n1i=1npi2=1n1i=1n(x~iTv)2\text{Var}(\text{投影}) = \frac{1}{n-1}\sum_{i=1}^{n} p_i^2 = \frac{1}{n-1}\sum_{i=1}^{n} (\tilde{\mathbf{x}}_i^T \mathbf{v})^2

nn 个投影值排成向量:X~v=(p1,p2,,pn)T\tilde{X}\mathbf{v} = (p_1, p_2, \ldots, p_n)^T,则

Var(投影)=1n1X~v2=1n1(X~v)T(X~v)=vT1n1X~TX~=Cv=vTCv\text{Var}(\text{投影}) = \frac{1}{n-1}\|\tilde{X}\mathbf{v}\|^2 = \frac{1}{n-1}(\tilde{X}\mathbf{v})^T(\tilde{X}\mathbf{v}) = \mathbf{v}^T\underbrace{\frac{1}{n-1}\tilde{X}^T\tilde{X}}_{= \, C}\mathbf{v} = \mathbf{v}^TC\mathbf{v}

这就是关键等式:vTCv\mathbf{v}^TC\mathbf{v} = 数据在方向 v\mathbf{v} 上的方差。 选不同的方向 v\mathbf{v},二次型给出不同的方差值。数据云在某些方向上”胖”(方差大),在另一些方向上”瘦”(方差小)——这些差异全部编码在 CC 中。

第三步:等值面 vTCv=c\mathbf{v}^TC\mathbf{v} = c 画出椭球。 如果我们把所有方向 v\mathbf{v} 按其方差值”等高着色”,方差相同的方向构成的曲面 vTCv=c\mathbf{v}^TC\mathbf{v} = c 就是一个椭球——和前面 §2 中二次型的等值线完全一致。对高斯分布 N(0,C)\mathcal{N}(\mathbf{0}, C) 来说,概率密度 exp(12xTC1x)\propto \exp(-\frac{1}{2}\mathbf{x}^TC^{-1}\mathbf{x}),等密度曲线 xTC1x=c\mathbf{x}^TC^{-1}\mathbf{x} = c 也是椭球,形状由 CC 决定。

协方差矩阵 = 数据云的形状
椭圆的轴方向 = 数据散布的主方向,轴长度 ∝ 标准差
(1,2)(2,1)(3,3)(4,5)(5,4)均值(3,3)大方差方向小方差方向C = [[2.5, 2], [2, 2.5]]对角线: 方差 = 2.5非对角: 协方差 = 2正相关 → 椭圆沿 45° 倾斜—— 1σ 椭圆- - 2σ 椭圆

椭球的性质完全由 CC 决定:

  • 椭球的轴方向CC 的”天然轴”——即方差最大/最小的正交方向(这正是 PCA 要找的主成分方向,将在 Art. 6 PCA 正式建立)
  • 椭球沿各轴的半径与该方向上的标准差成正比

为什么协方差矩阵一定半正定

上面的推导已经给出了答案——vTCv\mathbf{v}^TC\mathbf{v} 是方差,方差不能为负:

vTCv=1n1X~v20\mathbf{v}^TC\mathbf{v} = \frac{1}{n-1}\|\tilde{X}\mathbf{v}\|^2 \geq 0

这也是 §2 中 BTBB^TB 判据的直接应用(C=1n1X~TX~C = \frac{1}{n-1}\tilde{X}^T\tilde{X},取 B=1n1X~B = \frac{1}{\sqrt{n-1}}\tilde{X})。

直接连接 PCA

PCA 的优化目标”找方差最大的方向”可以精确写成:

maxw=1wTCw\max_{\|\mathbf{w}\|=1} \mathbf{w}^TC\mathbf{w}

这正是在单位球面上最大化协方差矩阵的二次型。Art. 2 特征分解 的特征分解给出答案——最大方差方向是 CC 的最大特征向量。Art. 6(PCA)将展开这个故事的完整版本。

VTVV^TVVVTVV^T:Gram 矩阵与投影矩阵

在讨论协方差矩阵时,我们遇到了 X~TX~\tilde{X}^T\tilde{X}。现在更一般地讨论这对”孪生矩阵”:给定矩阵 VRn×dV \in \mathbb{R}^{n \times d}VTVV^TVVVTVV^T 是两个看起来相似但含义不同的矩阵。

VTVV^TV(Gram 矩阵):列相似度

VTVV^TV 是一个 d×dd \times d 矩阵,它的 (i,j)(i, j) 元素是 VV 的第 ii 列和第 jj 列的内积

(VTV)ij=viTvj(V^TV)_{ij} = \mathbf{v}_i^T\mathbf{v}_j

其中 vi\mathbf{v}_iVV 的第 ii 个列向量。

这就是 Gram 矩阵——它完整编码了列向量之间的两两相似度:

  • 对角线 (VTV)ii=vi2(V^TV)_{ii} = \|\mathbf{v}_i\|^2:第 ii 列的”能量”
  • 非对角 (VTV)ij(V^TV)_{ij}:第 ii 列和第 jj 列的对齐程度

Gram 矩阵一定是对称半正定的(因为它本身就是 BTBB^TB 的形式)。

VVTVV^T(投影矩阵族):投影到列空间

VVTVV^T 是一个 n×nn \times n 矩阵。当 VV 的列是标准正交的(VTV=IV^TV = I)时,P=VVTP = VV^T 就是向 VV 的列空间的正交投影矩阵——正是 Art. 1A 向量空间几何 中讨论过的投影矩阵。

即使列不正交,VVTVV^T 也有明确的几何含义:它把任何向量 x\mathbf{x} 映射为 VV 的列向量的一个线性组合 V(VTx)V(V^T\mathbf{x})——其中 VTxV^T\mathbf{x} 计算了 x\mathbf{x} 与每个列的内积(“在各列方向上的分量”),然后 VV 把这些分量重新组合回原始空间。

VᵀV(Gram 矩阵)vs VVᵀ(投影矩阵)
前者度量列之间的相似度,后者把向量投影到列空间
VᵀV:列相似度矩阵(VᵀV)ᵢⱼ = vᵢ · vⱼx 列x 列y 列y 列108810对角线 = 列的 "能量"(自身内积)非对角 = 列间对齐程度(交叉内积)相似度 8/10 = 0.8 → 强正相关VVᵀ:投影到列空间P = VVᵀ, P² = P列空间方向xPxVVᵀx = 列空间中离 x 最近的点残差 x − Px ⊥ 列空间

核心联系:共享非零特征值

VTVV^TVVVTVV^T 有一个意义深远的性质:它们共享所有非零特征值(含重数)。

这意味着,虽然 VTVV^TVd×dd \times dVVTVV^Tn×nn \times n(尺寸可能差很多),但它们”编码了同样的信息”。区别只在于:

  • VTVV^TV 从”列空间”的视角看
  • VVTVV^T 从”行空间”的视角看

X~TX~\tilde{X}^T\tilde{X} vs X~X~T\tilde{X}\tilde{X}^T:同样的信息,不同的尺寸

回到协方差的场景:X~Rn×d\tilde{X} \in \mathbb{R}^{n \times d}nn 个样本,dd 维特征)。

  • X~TX~\tilde{X}^T\tilde{X}d×dd \times d):特征之间的 Gram 矩阵。除以 n1n-1 就是协方差矩阵 CC。当 dd 较小时,直接处理这个矩阵
  • X~X~T\tilde{X}\tilde{X}^Tn×nn \times n):样本之间的 Gram 矩阵。(i,j)(i, j) 元素是样本 ii 和样本 jj 的内积——度量两个样本的”相似度”

ndn \ll d(样本数远小于特征维度)时,处理 n×nn \times nX~X~T\tilde{X}\tilde{X}^T 比处理 d×dd \times dX~TX~\tilde{X}^T\tilde{X} 便宜得多。这正是 Turk & Pentland(1991)在 Eigenfaces 人脸识别中使用的技巧:图像维度 d=10304d = 10304112×92112 \times 92 像素),但样本数 nn 只有几百。先对小矩阵 X~X~T\tilde{X}\tilde{X}^T 做分解,再用共享非零特征值的性质恢复大矩阵的分解结果。Art. 6(PCA) 将详细展示这个技巧。

迹与行列式:矩阵的两个”摘要数字”

一个 n×nn \times n 矩阵有 n2n^2 个元素。有没有办法用一两个数字浓缩矩阵的关键信息?迹和行列式就是两个最重要的标量摘要。

迹:总拉伸量

矩阵 AA(trace)是对角元素之和:

tr(A)=i=1naii\text{tr}(A) = \sum_{i=1}^n a_{ii}

迹有一个深层身份:迹等于所有特征值之和。 也就是说,迹衡量了矩阵”在所有方向上的拉伸的总量”——不管你选什么坐标系,这个总量是不变的。

迹还有几个非常有用的性质:

  • 循环置换不变性tr(ABC)=tr(BCA)=tr(CAB)\text{tr}(ABC) = \text{tr}(BCA) = \text{tr}(CAB)(但不等于 tr(BAC)\text{tr}(BAC)
  • 转置不变性tr(AT)=tr(A)\text{tr}(A^T) = \text{tr}(A)
  • 线性tr(A+B)=tr(A)+tr(B)\text{tr}(A + B) = \text{tr}(A) + \text{tr}(B)tr(αA)=αtr(A)\text{tr}(\alpha A) = \alpha \cdot \text{tr}(A)

协方差矩阵的迹 = 总方差。 因为 tr(C)=iCii=iVar(xi)\text{tr}(C) = \sum_i C_{ii} = \sum_i \text{Var}(x_i)——对角元素就是各维度的方差。在 PCA 中,保留的方差占总方差的比例就是 i=1kλitr(C)\frac{\sum_{i=1}^k \lambda_i}{\text{tr}(C)}

行列式:体积缩放因子

矩阵 AA行列式(determinant)det(A)\det(A) 衡量的是:AA 作为线性变换,把体积放大或缩小了多少倍。

行列式 = 面积(体积)缩放因子
单位正方形经矩阵变换后,面积变为 |det(A)| 倍
变换前:单位正方形e₁e₂面积 = 1A变换后:平行四边形Ae₁Ae₂面积 = 2.5|det(A)| = |2.5| = 2.5 → 面积放大 2.5 倍

几何直觉:

  • 二维中,det(A)|\det(A)| = 单位正方形变换后的平行四边形面积
  • 三维中,det(A)|\det(A)| = 单位立方体变换后的平行六面体体积
  • det(A)>0\det(A) > 0:保持方向(不翻转)
  • det(A)<0\det(A) < 0:翻转方向(镜像)

行列式也有一个深层身份:行列式等于所有特征值之积。 所以:

det(A)=0    某个特征值为 0    A 不可逆\det(A) = 0 \iff \text{某个特征值为 } 0 \iff A \text{ 不可逆}

这给出了判断矩阵可逆性的一个标量测试。

对于 2×22 \times 2 矩阵,行列式有一个简洁的公式:

det[abcd]=adbc\det\begin{bmatrix}a & b \\ c & d\end{bmatrix} = ad - bc

可以直接验证:A=[210.51.5]A = \begin{bmatrix}2 & 1 \\ 0.5 & 1.5\end{bmatrix}det(A)=2×1.51×0.5=2.5\det(A) = 2 \times 1.5 - 1 \times 0.5 = 2.5——单位正方形变成面积为 2.5 的平行四边形,与上图一致。

协同洞察:加法 vs 乘法

迹和行列式是矩阵的两个互补视角:

tr(A)\text{tr}(A)行列式 det(A)\det(A)
定义对角元素之和(通过置换或递归定义)
特征值关系特征值之特征值之
几何含义总拉伸量体积缩放因子
为零的含义拉伸的”平均”为零矩阵不可逆
协方差矩阵总方差”广义方差”

迹是加法摘要(求和),行列式是乘法摘要(求积)。两者缺一不可——知道了迹但不知道行列式(或反过来),你对矩阵的理解是不完整的。

完整数值例子

把本文的所有概念串在一起,用一个具体的 2D 数据集完整走一遍。

数据

5 个二维数据点:

p1=(1,2),p2=(2,1),p3=(3,3),p4=(4,5),p5=(5,4)\mathbf{p}_1 = (1, 2), \quad \mathbf{p}_2 = (2, 1), \quad \mathbf{p}_3 = (3, 3), \quad \mathbf{p}_4 = (4, 5), \quad \mathbf{p}_5 = (5, 4)

第一步:中心化

均值:xˉ=(1+2+3+4+55,  2+1+3+5+45)=(3,3)\bar{\mathbf{x}} = \left(\frac{1+2+3+4+5}{5},\; \frac{2+1+3+5+4}{5}\right) = (3, 3)

中心化数据(每个点减去均值):

x~1=(2,1),x~2=(1,2),x~3=(0,0),x~4=(1,2),x~5=(2,1)\tilde{\mathbf{x}}_1 = (-2, -1), \quad \tilde{\mathbf{x}}_2 = (-1, -2), \quad \tilde{\mathbf{x}}_3 = (0, 0), \quad \tilde{\mathbf{x}}_4 = (1, 2), \quad \tilde{\mathbf{x}}_5 = (2, 1)

写成矩阵:X~=[2112001221]\tilde{X} = \begin{bmatrix}-2 & -1 \\ -1 & -2 \\ 0 & 0 \\ 1 & 2 \\ 2 & 1\end{bmatrix}

第二步:计算协方差矩阵

X~TX~=[2101212021][2112001221]=[108810]\tilde{X}^T\tilde{X} = \begin{bmatrix}-2&-1&0&1&2 \\ -1&-2&0&2&1\end{bmatrix}\begin{bmatrix}-2&-1\\-1&-2\\0&0\\1&2\\2&1\end{bmatrix} = \begin{bmatrix}10 & 8 \\ 8 & 10\end{bmatrix}

验证:第一行第一列 =(2)2+(1)2+02+12+22=4+1+0+1+4=10= (-2)^2 + (-1)^2 + 0^2 + 1^2 + 2^2 = 4+1+0+1+4 = 10

第一行第二列 =(2)(1)+(1)(2)+00+12+21=2+2+0+2+2=8= (-2)(-1) + (-1)(-2) + 0 \cdot 0 + 1 \cdot 2 + 2 \cdot 1 = 2+2+0+2+2 = 8

协方差矩阵:

C=1n1X~TX~=14[108810]=[2.5222.5]C = \frac{1}{n-1}\tilde{X}^T\tilde{X} = \frac{1}{4}\begin{bmatrix}10 & 8 \\ 8 & 10\end{bmatrix} = \begin{bmatrix}2.5 & 2 \\ 2 & 2.5\end{bmatrix}

解读:

  • 对角元素 C11=C22=2.5C_{11} = C_{22} = 2.5:两个维度的方差相等
  • 非对角元素 C12=C21=2C_{12} = C_{21} = 2强正相关——x1x_1 增大时 x2x_2 也倾向于增大

第三步:验证半正定

BTBB^TB 判据:C=14X~TX~C = \frac{1}{4}\tilde{X}^T\tilde{X},所以对任意 v\mathbf{v}

vTCv=14X~v20\mathbf{v}^TC\mathbf{v} = \frac{1}{4}\|\tilde{X}\mathbf{v}\|^2 \geq 0 \quad \checkmark

具体验证几个方向:

  • v=(1,0)\mathbf{v} = (1, 0)vTCv=2.5>0\mathbf{v}^TC\mathbf{v} = 2.5 > 0
  • v=(0,1)\mathbf{v} = (0, 1)vTCv=2.5>0\mathbf{v}^TC\mathbf{v} = 2.5 > 0
  • v=12(1,1)\mathbf{v} = \frac{1}{\sqrt{2}}(1, 1)vTCv=12(2.5+2+2+2.5)=4.5>0\mathbf{v}^TC\mathbf{v} = \frac{1}{2}(2.5 + 2 + 2 + 2.5) = 4.5 > 0 ✓(最大方差方向
  • v=12(1,1)\mathbf{v} = \frac{1}{\sqrt{2}}(1, -1)vTCv=12(2.522+2.5)=0.5>0\mathbf{v}^TC\mathbf{v} = \frac{1}{2}(2.5 - 2 - 2 + 2.5) = 0.5 > 0 ✓(最小方差方向

注意 4.5 和 0.5 的巨大差异——沿 (1,1)(1,1) 方向数据散布极广,沿 (1,1)(1,-1) 方向数据紧凑。这正是 PCA 发现的:前者是第一主成分方向,后者是第二主成分方向。

第四步:X~TX~\tilde{X}^T\tilde{X} vs X~X~T\tilde{X}\tilde{X}^T

X~TX~\tilde{X}^T\tilde{X}2×22 \times 2)我们已经算了:[108810]\begin{bmatrix}10 & 8 \\ 8 & 10\end{bmatrix}

X~X~T\tilde{X}\tilde{X}^T5×55 \times 5)的每个元素是两个样本的内积:

X~X~T=[5404545054000004505454045]\tilde{X}\tilde{X}^T = \begin{bmatrix}5&4&0&-4&-5\\4&5&0&-5&-4\\0&0&0&0&0\\-4&-5&0&5&4\\-5&-4&0&4&5\end{bmatrix}

验证:(1,1)(1,1) 元素 =(2)2+(1)2=5= (-2)^2 + (-1)^2 = 5 ✓。(1,2)(1,2) 元素 =(2)(1)+(1)(2)=4= (-2)(-1)+(-1)(-2) = 4 ✓。

共享非零特征值验证X~TX~\tilde{X}^T\tilde{X} 的特征值为 18 和 2。X~X~T\tilde{X}\tilde{X}^T5×55 \times 5 矩阵,它的特征值为 18, 2, 0, 0, 0。非零特征值 {18,2}\{18, 2\} 完全一致 ✓

(协方差矩阵 C=14X~TX~C = \frac{1}{4}\tilde{X}^T\tilde{X} 的特征值为 184=4.5\frac{18}{4} = 4.524=0.5\frac{2}{4} = 0.5。)

第五步:迹和行列式

tr(C)=2.5+2.5=5.0=总方差\text{tr}(C) = 2.5 + 2.5 = 5.0 = \text{总方差}

验证:tr(C)=λ1+λ2=4.5+0.5=5.0\text{tr}(C) = \lambda_1 + \lambda_2 = 4.5 + 0.5 = 5.0

det(C)=2.5×2.52×2=6.254=2.25\det(C) = 2.5 \times 2.5 - 2 \times 2 = 6.25 - 4 = 2.25

验证:det(C)=λ1×λ2=4.5×0.5=2.25\det(C) = \lambda_1 \times \lambda_2 = 4.5 \times 0.5 = 2.25

行列式不为零,说明 CC 不仅是半正定的,而且是正定的——两个方向都有非零方差,没有退化。

种子:椭球的轴方向就是特征向量

从 §3 的计算中,我们已经发现了椭球的两个轴方向:(1,1)/2(1,1)/\sqrt{2} 对应方差 4.5,(1,1)/2(1,-1)/\sqrt{2} 对应方差 0.5。这两个方向互相正交,分别是方差最大和最小的方向。

这就是 CC 的特征分解做的事——找到让 CC 变成对角形式的那组正交坐标轴。在新坐标下:

C[4.5000.5]C \to \begin{bmatrix}4.5 & 0 \\ 0 & 0.5\end{bmatrix}

对角矩阵——没有耦合项,两个方向完全独立。这就是特征分解的核心目标:找到让矩阵变成最简形式的坐标系。 Art. 2 特征分解 将给出完整的理论。

总结与展望

本文建立了描述矩阵内在结构的六个核心概念:

概念核心含义在 ML 中的作用
二次型矩阵 → 标量函数 → 几何曲面损失函数局部分析、PCA 目标
正定性所有方向都在拉伸协方差矩阵、Hessian 判断、kernel
对称性A=ATA = A^T,等值线有正交轴几乎所有 ML 核心矩阵都对称
协方差矩阵数据云的形状描述PCA、高斯分布、特征选择
Gram / 投影列相似度 / 子空间投影Eigenfaces 技巧、kernel 方法
迹 / 行列式加法摘要 / 乘法摘要总方差、可逆性判断

至此,Art. 1A 和 1B 共同建立了完整的几何语言——向量级(内积、投影、秩、零空间)和矩阵级(二次型、正定性、协方差、迹、行列式)。

但我们一直在说”找到天然轴”、“让矩阵变成对角形式”,却还没有给出系统的方法。有没有一组”天然坐标轴”,让任何矩阵在新坐标下变成最简单的对角形式?每个方向上的拉伸倍数是多少?

这正是 Art. 2 特征分解 要回答的问题——它将把本文中反复出现的”天然轴”精确化为特征向量,把”拉伸倍数”精确化为特征值,并给出对称矩阵的完整分解定理。