QR分解法求解线性最小二乘问题
字数 929 2025-10-29 11:32:03

QR分解法求解线性最小二乘问题

题目描述
给定一个矩阵A ∈ R^(m×n)(m ≥ n)和向量b ∈ R^m,我们希望找到向量x ∈ R^n,使得残差‖Ax - b‖₂最小。这就是线性最小二乘问题。QR分解法通过将矩阵A分解为正交矩阵Q和上三角矩阵R的乘积,将原问题转化为易于求解的三角方程组。

解题过程

1. 问题转化
最小二乘问题min ‖Ax - b‖₂等价于求解正规方程AᵀAx = Aᵀb。但当A条件数较大时,正规方程数值稳定性较差。QR分解法通过直接处理A来避免计算AᵀA。

2. QR分解步骤
首先对A进行QR分解:A = QR,其中:

  • Q ∈ R^(m×m)是正交矩阵(QᵀQ = I)
  • R ∈ R^(m×n)是上三角矩阵

实际计算中常用紧凑形式:A = Q̃R̃,其中Q̃ ∈ R^(m×n)具有标准正交列,R̃ ∈ R^(n×n)是上三角矩阵。

3. 残差变换
将QR分解代入目标函数:
‖Ax - b‖₂ = ‖QRx - b‖₂
由于正交变换不改变2-范数,上式等于:
‖Qᵀ(QRx - b)‖₂ = ‖Rx - Qᵀb‖₂

4. 分块处理
将R和Qᵀb进行分块:
R = [R₁; 0],其中R₁ ∈ R^(n×n)是非奇异上三角矩阵
Qᵀb = [c; d],其中c ∈ R^n,d ∈ R^(m-n)

此时残差可写为:
‖[R₁x - c; -d]‖₂ = √(‖R₁x - c‖₂² + ‖d‖₂²)

5. 求解最小二乘解
最小化上述表达式,只需令‖R₁x - c‖₂ = 0,即求解:
R₁x = c

由于R₁是上三角矩阵,可通过回代法快速求解:

  • 从第n个方程开始:rₙₙxₙ = cₙ ⇒ xₙ = cₙ/rₙₙ
  • 依次向前求解:xᵢ = (cᵢ - Σⱼ₌ᵢ₊₁ⁿ rᵢⱼxⱼ)/rᵢᵢ

6. 残差计算
最小残差为‖d‖₂,反映了拟合误差的大小。

7. 数值稳定性
QR分解法数值稳定性优于正规方程法,因为:

  • 避免了AᵀA的条件数平方效应
  • 正交变换具有良好的数值性质
  • 回代法求解三角方程组稳定可靠

这种方法在最小二乘问题中广泛应用,特别是在数据拟合、参数估计等需要数值稳定性的场合。

QR分解法求解线性最小二乘问题 题目描述 : 给定一个矩阵A ∈ R^(m×n)(m ≥ n)和向量b ∈ R^m,我们希望找到向量x ∈ R^n,使得残差‖Ax - b‖₂最小。这就是线性最小二乘问题。QR分解法通过将矩阵A分解为正交矩阵Q和上三角矩阵R的乘积,将原问题转化为易于求解的三角方程组。 解题过程 : 1. 问题转化 最小二乘问题min ‖Ax - b‖₂等价于求解正规方程AᵀAx = Aᵀb。但当A条件数较大时,正规方程数值稳定性较差。QR分解法通过直接处理A来避免计算AᵀA。 2. QR分解步骤 首先对A进行QR分解:A = QR,其中: Q ∈ R^(m×m)是正交矩阵(QᵀQ = I) R ∈ R^(m×n)是上三角矩阵 实际计算中常用紧凑形式:A = Q̃R̃,其中Q̃ ∈ R^(m×n)具有标准正交列,R̃ ∈ R^(n×n)是上三角矩阵。 3. 残差变换 将QR分解代入目标函数: ‖Ax - b‖₂ = ‖QRx - b‖₂ 由于正交变换不改变2-范数,上式等于: ‖Qᵀ(QRx - b)‖₂ = ‖Rx - Qᵀb‖₂ 4. 分块处理 将R和Qᵀb进行分块: R = [ R₁; 0 ],其中R₁ ∈ R^(n×n)是非奇异上三角矩阵 Qᵀb = [ c; d ],其中c ∈ R^n,d ∈ R^(m-n) 此时残差可写为: ‖[ R₁x - c; -d ]‖₂ = √(‖R₁x - c‖₂² + ‖d‖₂²) 5. 求解最小二乘解 最小化上述表达式,只需令‖R₁x - c‖₂ = 0,即求解: R₁x = c 由于R₁是上三角矩阵,可通过回代法快速求解: 从第n个方程开始:rₙₙxₙ = cₙ ⇒ xₙ = cₙ/rₙₙ 依次向前求解:xᵢ = (cᵢ - Σⱼ₌ᵢ₊₁ⁿ rᵢⱼxⱼ)/rᵢᵢ 6. 残差计算 最小残差为‖d‖₂,反映了拟合误差的大小。 7. 数值稳定性 QR分解法数值稳定性优于正规方程法,因为: 避免了AᵀA的条件数平方效应 正交变换具有良好的数值性质 回代法求解三角方程组稳定可靠 这种方法在最小二乘问题中广泛应用,特别是在数据拟合、参数估计等需要数值稳定性的场合。