相关笔记

本章节笔记:

前置章节汇总:

后续章节:


概览

第28章系统介绍了矩阵运算的核心算法,围绕”求解线性方程组”这一中心问题展开。全章以LUP 分解为基础工具,逐步扩展到矩阵求逆和对称正定矩阵的特殊处理方法。

三节内容从通用到特化:(1) 28.1 节介绍 LUP 分解(),将一般线性方程组 转化为两个三角方程组,在 时间内求解;(2) 28.2 节利用 LUP 分解实现矩阵求逆(高斯-约当消元法),并证明矩阵乘法与矩阵求逆在计算复杂度上的等价关系;(3) 28.3 节针对对称正定矩阵这一重要特殊类,介绍 Cholesky 分解(),比 LU 分解快约 2 倍,并将其应用于最小二乘逼近问题。


知识结构总览

flowchart TD
    CH["第28章 矩阵运算"] --> S1["28.1 求解线性方程组"]
    CH --> S2["28.2 矩阵求逆"]
    CH --> S3["28.3 对称正定矩阵"]

    S1 --> S1A["线性方程组 Ax = b"]
    S1 --> S1B["LUP 分解 PA = LU"]
    S1 --> S1C["前代 Ly = Pb"]
    S1 --> S1D["回代 Ux = y"]
    S1 --> S1E["LUP-SOLVE / LUP-DECOMPOSITION"]

    S2 --> S2A["矩阵可逆性条件"]
    S2 --> S2B["高斯-约当消元法"]
    S2 --> S2C["增广矩阵 [A|I] → [I|A⁻¹]"]
    S2 --> S2D["乘法与求逆的等价关系"]

    S3 --> S3A["对称正定矩阵定义与性质"]
    S3 --> S3B["Cholesky 分解 A = LLᵀ"]
    S3 --> S3C["利用 Cholesky 求解方程组"]
    S3 --> S3D["最小二乘逼近"]
    S3 --> S3E["正规方程组 AᵀAx = Aᵀb"]

    S1B --> S2B
    S1B --> S3B
    S2B --> S3C

    style CH fill:#e1f5fe,stroke:#0288d1,stroke-width:2px
    style S1 fill:#fff3e0,stroke:#ef6c00
    style S2 fill:#e8f5e9,stroke:#2e7d32
    style S3 fill:#fce4ec,stroke:#c62828

核心概念回顾

三节内容对比

维度28.1 求解线性方程组28.2 矩阵求逆28.3 对称正定矩阵
核心问题求解 计算 求解 (A 为 SPD)
核心方法LUP 分解高斯-约当消元法Cholesky 分解
分解形式增广矩阵
时间复杂度
数值稳定性部分主元选取保证较差(实践中避免直接求逆)优秀(正定性保证)
适用范围任意非奇异方阵任意非奇异方阵对称正定矩阵
扩展应用矩阵乘法与求逆等价最小二乘逼近

算法选型指南

  • 一般线性方程组:优先使用 LUP 分解(28.1),数值稳定且高效
  • 需要显式逆矩阵:使用高斯-约当消元法(28.2),但实际中应尽量避免直接求逆
  • 对称正定矩阵:使用 Cholesky 分解(28.3),速度比 LU 快约 2 倍,数值稳定性更好
  • 超定方程组(最小二乘):先构造正规方程组 ,再用 Cholesky 分解求解
  • 大规模稀疏矩阵:考虑迭代法(共轭梯度法等),超出本章范围

核心定理汇总

  1. LUP 分解定理:任何非奇异矩阵 都存在 LUP 分解
  2. 前代-回代复杂度:给定 L、U、π,LUP-SOLVE 运行时间为
  3. LUP 分解复杂度:LUP-DECOMPOSITION 运行时间为
  4. 乘法-求逆等价性:矩阵乘法与矩阵求逆在计算复杂度上等价
  5. Cholesky 分解定理:对称正定矩阵 存在唯一的 Cholesky 分解
  6. Cholesky 复杂度,约为 LU 分解的一半
  7. 正规方程组:最小二乘解 满足 ,其中 是对称正定的

跨章关联

与第4章(分治策略)的关系

  • 4.1 矩阵乘法 介绍了朴素矩阵乘法(),Strassen算法 将其优化到
  • 28.2 节证明矩阵乘法与矩阵求逆的计算复杂度等价:如果 Strassen 乘法可以在 内完成,则矩阵求逆也可以
  • 矩阵乘法的分治思想(将矩阵分块)在分块矩阵求逆中也有应用

与第14章(动态规划)的关系

  • 14.2 矩阵链乘法 中的矩阵乘法与本章的矩阵运算直接相关
  • 最小二乘逼近可以视为一种优化问题,其思想与动态规划的”最优子结构”有相通之处

与第15章(贪心算法)的关系

  • 15.4 离线缓存 中的贪心策略与数值线性代数中的局部最优策略有类比关系

与第27章(在线算法)的关系

  • 两者都关注算法在特定约束下的性能保证
  • 矩阵运算受限于数值精度,在线算法受限于信息不完全

与附录 D(矩阵基础)的关系

  • 附录 D 提供了矩阵的基本定义、运算规则和重要性质
  • 本章是附录 D 的算法化延伸:将矩阵理论转化为可执行的算法

综合复习题


常见误区

误区1:求解 时应该先计算 再乘以

在实际计算中,应该使用 LUP 分解直接求解,而非先求逆。原因:(1) 求逆的计算量约为直接求解的 3 倍;(2) 求逆会放大舍入误差,数值精度更差;(3) 如果 是稀疏矩阵, 通常是稠密的,破坏稀疏性。只有在需要显式使用逆矩阵(如计算方差-协方差矩阵)时才应该求逆。

误区2:Cholesky 分解可以用于任意方阵

Cholesky 分解仅适用于对称正定矩阵。对于一般的非奇异矩阵,应使用 LU 分解(LUP 分解)。如果对非正定矩阵尝试 Cholesky 分解,会在计算对角元素时遇到负数开平方的错误。判断矩阵是否适合 Cholesky 分解的方法:检查所有前 阶主子式的行列式是否为正。

误区3:最小二乘问题总是应该通过正规方程组求解

正规方程组 的条件数是原矩阵 的条件数的平方,这意味着当 接近秩亏时,正规方程组的数值稳定性会显著恶化。对于病态问题,QR 分解(,然后求解 )或 SVD 方法在数值上更稳定,虽然计算量稍大。

误区4:LUP 分解中的置换矩阵 P 可以省略

置换矩阵 的作用是选主元(partial pivoting),保证数值稳定性。如果省略 (即只做 LU 分解),当主元接近零时会产生巨大的舍入误差,甚至导致算法失败。虽然理论上任何非奇异矩阵都存在 LU 分解,但实际计算中必须使用 LUP 分解来保证可靠性。


学习要点总结

学习目标掌握程度对应笔记
理解线性方程组的矩阵表示 ★★★★★28.1 求解线性方程组
掌握 LUP 分解的定义和计算过程★★★★★28.1 求解线性方程组
掌握前代和回代的执行逻辑★★★★★28.1 求解线性方程组
理解 LUP 分解的数值稳定性优势★★★★☆28.1 求解线性方程组
掌握高斯-约当消元法求逆★★★★★28.2 矩阵求逆
理解矩阵乘法与求逆的等价关系★★★★☆28.2 矩阵求逆
了解实践中避免直接求逆的原因★★★★★28.2 矩阵求逆
掌握对称正定矩阵的定义与性质★★★★★28.3 对称正定矩阵
掌握 Cholesky 分解的计算过程★★★★★28.3 对称正定矩阵
掌握最小二乘逼近与正规方程组★★★★★28.3 对称正定矩阵
了解正规方程组的数值稳定性问题★★★★☆28.3 对称正定矩阵

参见Wiki


第28章-矩阵运算 章节汇总