最小二乘与伪逆矩阵:从超定/欠定方程到2种几何投影视角解析

引言:线性方程组求解的困境与突破

当我们面对一组线性方程时,理想情况下希望找到精确满足所有方程的解。但现实中常遇到两种特殊情形:一是方程数量多于未知数(超定系统),二是方程数量少于未知数(欠定系统)。这两种情况在工程测量、数据拟合和信号处理等领域极为常见。

传统逆矩阵方法在此类问题中束手无策——超定系统通常无精确解,而欠定系统则存在无穷多解。此时需要更强大的数学工具: 最小二乘法 解决超定系统的近似求解, 伪逆矩阵 则统一处理两类问题。本文将从几何投影的视角,揭示这两种方法背后的统一逻辑。

1. 超定系统与列空间投影

1.1 超定方程的最小二乘解

考虑测量问题:为确定某物理量,进行多次测量得到方程组Ax=b,其中测量次数多于未知量个数。这类方程通常无解,因为向量b可能不在矩阵A的列空间中。

最小二乘法的核心思想 :寻找使残差平方和最小的解,即:

min ||Ax - b||²

通过求导可得正规方程:

AᵀAx = Aᵀb

当A列满秩时,解得:

x = (AᵀA)⁻¹Aᵀb

1.2 列空间投影的几何解释

从几何角度看,最小二乘解实际上是将b投影到A的列空间:

Proj_col(A)(b) = A(AᵀA)⁻¹Aᵀb

其中投影矩阵P = A(AᵀA)⁻¹Aᵀ具有性质:

  • P² = P(幂等性)
  • Pᵀ = P(对称性)

关键理解:当b∉col(A)时,我们找到col(A)中离b最近的点作为近似解,这正是投影的几何意义。

2. 欠定系统与行空间投影

2.1 欠定方程的最小范数解

当方程数少于未知量时,系统Ax=b存在无穷多解。此时需要附加条件选择最优解——通常要求解具有最小欧氏范数。

最小范数解可通过伪逆矩阵求得:

x = Aᵀ(AAᵀ)⁻¹b

2.2 行空间投影的几何视角

欠定情况下,解空间是仿射空间。最小范数解位于A的行空间中,可通过投影解释:

Proj_row(A)(x) = Aᵀ(AAᵀ)⁻¹Ax

投影矩阵Q = Aᵀ(AAᵀ)⁻¹A同样满足:

  • Q² = Q
  • Qᵀ = Q

3. 伪逆矩阵:统一的数学框架

3.1 Moore-Penrose伪逆定义

对于任意矩阵A∈ℝ^(m×n),伪逆A⁺是唯一满足以下条件的矩阵:

  1. AA⁺A = A
  2. A⁺AA⁺ = A⁺
  3. (AA⁺)ᵀ = AA⁺
  4. (A⁺A)ᵀ = A⁺A

3.2 奇异值分解(SVD)计算法

通过SVD分解A=UΣVᵀ,伪逆可表示为:

A⁺ = VΣ⁺Uᵀ

其中Σ⁺是将Σ转置后非零元素取倒数得到。

3.3 统一求解框架

伪逆矩阵为两类问题提供统一解法:

  • 超定系统:x = A⁺b 给出最小二乘解
  • 欠定系统:x = A⁺b 给出最小范数解

4. 应用实例与数值计算

4.1 Python实现伪逆求解

import numpy as np

# 超定系统示例
A_over = np.array([[1, 2], [3, 4], [5, 6]])
b_over = np.array([7, 8, 9])
x_over = np.linalg.pinv(A_over) @ b_over  # 最小二乘解

# 欠定系统示例
A_under = np.array([[1, 2, 3], [4, 5, 6]])
b_under = np.array([7, 8])
x_under = np.linalg.pinv(A_under) @ b_under  # 最小范数解

4.2 实际应用对比

应用场景 问题类型 解决方法 几何解释
GPS定位 超定系统 最小二乘法 列空间投影
图像重建 欠定系统 最小范数解 行空间投影
推荐系统 混合系统 伪逆矩阵 同时考虑两种投影

5. 深入理解:四个基本子空间

完整理解伪逆需要掌握矩阵的四个基本子空间:

  1. 列空间 col(A):Ax的取值范围
  2. 零空间 null(A):Ax=0的解空间
  3. 行空间 row(A):Aᵀx的取值范围
  4. 左零空间 null(Aᵀ):Aᵀx=0的解空间

伪逆的本质是在这四个子空间上执行特定操作:

  • 将b投影到col(A)
  • 在row(A)中寻找解
  • 忽略null(A)和null(Aᵀ)的贡献

6. 数值稳定性与正则化

当矩阵条件数较大时,直接计算伪逆可能数值不稳定。常用改进方法:

Tikhonov正则化 :

x = (AᵀA + αI)⁻¹Aᵀb

参数α>0控制正则化强度。

截断SVD : 保留前k个奇异值,其余置零:

U, s, Vt = np.linalg.svd(A)
s_trunc = np.where(s > threshold, s, 0)
A_pinv = Vt.T @ np.diag(1/s_trunc) @ U.T

7. 现代应用与扩展

伪逆矩阵在机器学习中广泛应用:

  • 线性回归的闭式解
  • 主成分分析(PCA)
  • 推荐系统中的矩阵补全
  • 神经网络的正则化

在深度学习中,伪逆概念被推广到:

  • 卷积操作的广义逆
  • 自动微分框架中的线性求解
  • 对抗样本生成

理解这些高级应用的基础,正是本文介绍的几何投影视角和统一数学框架。

Logo

码道开发者社区,聚焦华为云码道 CodeArts 代码智能体,沉淀 Agent、Skill、鸿蒙开发实战内容,供开发者查阅资料、交流技术、分享工程实践

更多推荐