线性代数教程 · 第5章

特征值与特征向量

在变换中保持方向的特殊向量

← Linear Algebra Tutorial

5.1 特征分解的直觉

《线性代数的本质》将特征向量定义为:线性映射下保持方向不变的向量。特征值则是该向量被拉伸的倍数。

Ax = λx 的含义是:x 经过 A 变换后,只是长度变了 λ 倍,方向不变。

核心洞察

特征分解告诉我们,一个复杂的线性映射,可以看作是在某些"特殊方向"上的简单伸缩。如果矩阵有 n 个线性无关的特征向量,整个空间就被这些"主轴"分解了。

图 5-1:特征向量在变换下保持方向
示例:对称矩阵的特征值

矩阵 A = [[2, 1], [1, 2]] 是对称的,其特征值为 λ1=3, λ2=1,对应的特征向量为 v1=(1,1)T, v2=(1,-1)T。注意特征向量互相正交 —— 这是对称矩阵的美妙性质。

% MATLAB:特征值分解 A = [2 1; 1 2]; [V, D] = eig(A); % V: 特征向量矩阵, D: 对角特征值矩阵 % D = [1 0; 0 3], V 的列是特征向量 % 验证 A = V*D*V^{-1} A_reconstructed = V * D * inv(V); norm(A - A_reconstructed); % ≈ 0 % 验证特征向量正交(对称矩阵) V(:,1)' * V(:,2); % ≈ 0

特征多项式

特征值是特征方程 det(A - λI) = 0 的根。这个多项式称为特征多项式,次数为 n(矩阵的维数)。

p(λ) = det(A - λI) = (λ₁ - λ)(λ₂ - λ)...(λₙ - λ)

特征多项式的系数与矩阵的迹(对角线元素之和)和行列式密切相关:

5.2 对角化

若矩阵 A 有 n 个线性无关的特征向量,则 A = VDV-1,其中 D 是对角矩阵。这称为 特征分解或对角化

对角化的威力在于简化计算:

示例:斐波那契数列的矩阵形式

斐波那契数列 Fn+2 = Fn+1 + Fn 可以写成:

Fn+1
Fn
=
11
10
Fn
Fn-1

通过特征分解,可以得到通项公式(Binet 公式)。

何时可对角化?

矩阵可对角化当且仅当有 n 个线性无关的特征向量。对称矩阵、正规矩阵总是可对角化。若几何重数小于代数重数,则不可对角化,需要若尔当标准型。

例1:求矩阵的特征值和特征向量

求矩阵 A = [[4,1],[2,3]] 的特征值和特征向量。

第一步:列特征方程
det(A - λI) = det([[4-λ, 1],[2, 3-λ]]) = (4-λ)(3-λ) - 2 = λ² - 7λ + 10 = 0
第二步:求解特征方程
λ² - 7λ + 10 = (λ-5)(λ-2) = 0 → λ₁ = 5, λ₂ = 2
第三步:求 λ₁ = 5 对应的特征向量
(A - 5I)v = [[-1,1],[2,-2]]v = 0 → -v1 + v2 = 0 → v1 = (1,1)T

将 λ₁ = 5 代入 (A - λI)v = 0,解出特征向量方向。

第四步:求 λ₂ = 2 对应的特征向量
(A - 2I)v = [[2,1],[2,1]]v = 0 → 2v1 + v2 = 0 → v2 = (1,-2)T
λ1 = 5, v1 = (1,1)T; λ2 = 2, v2 = (1,-2)T
例2:矩阵对角化并计算 A⁵

对角化 A = [[4,1],[2,3]] 并利用对角化计算 A⁵。

第一步:写出对角化形式
A = VDV-1, V = [[1,1],[1,-2]], D = [[5,0],[0,2]]

由例1,特征值和特征向量已知,V 的列是特征向量,D 的对角元素是对应特征值。

第二步:计算 V-1
V-1 = (1/-3)[[-2,-1],[-1,1]] = [[2/3, 1/3],[1/3, -1/3]]

对 2×2 矩阵 [[a,b],[c,d]],其逆矩阵为 (1/(ad-bc))[[d,-b],[-c,a]]。

第三步:利用 A5 = VD5V-1
A5 = [[1,1],[1,-2]] × [[55,0],[0,25]] × V-1

对角矩阵的幂运算非常简单:只需将每个对角元素取对应次幂。

第四步:计算 D⁵
D⁵ = [[5⁵,0],[0,2⁵]] = [[3125,0],[0,32]]
第五步:完成矩阵乘法
VD⁵ = [[3125,32],[3125,-64]]

再右乘 V-1 得到最终结果。

A⁵ = [[2081,1053],[2106,1051]](可用 MATLAB 验证)。
例3:判断矩阵是否正定

判断矩阵 A = [[2,-1],[-1,2]] 是否正定。

第一步:确认对称性

AT = A,A 是对称矩阵。对于实对称矩阵,正定性的判别可以通过特征值进行。

第二步:计算特征值
det(A - λI) = (2-λ)² - 1 = λ² - 4λ + 3 = (λ-1)(λ-3) = 0
第三步:判断特征值符号
λ₁ = 3 > 0, λ₂ = 1 > 0

所有特征值均为正数。根据正定性判别定理:实对称矩阵正定当且仅当所有特征值大于零。

A 正定(所有特征值大于零)。

5.3 工程应用:主成分分析

PCA(主成分分析)是特征值分解最著名的应用。数据的协方差矩阵的特征向量定义了方差最大的方向

工程实例:图像降维与去噪

将图像块看作高维向量,计算协方差矩阵,取最大特征值对应的特征向量作为"主成分"。保留前 k 个主成分即可重建图像,实现压缩和去噪。

人脸识别:Eigenfaces 方法将人脸图像投影到协方差矩阵的特征向量("特征脸")上,用少量系数表示一张脸,实现高效识别。

% MATLAB:PCA 降维示例 % 生成二维相关数据 X = mvnrnd([0;0], [1 0.8; 0.8 1], 100); % 计算协方差矩阵并特征分解 C = cov(X); [V, D] = eig(C); % V 的列是主成分方向 % 投影到第一主成分 pc1 = V(:,2); % 最大特征值对应的特征向量 projected = X * pc1; % 可视化 scatter(X(:,1), X(:,2), 'b.'); hold on; quiver(0, 0, pc1(1)*2, pc1(2)*2, 'r', 'LineWidth', 2); legend('数据点','第一主成分'); axis equal;