超定方程 最小二乘解 奇异值分解(SVD)

本文深入探讨了奇异值分解(SVD)和广义逆(Moore-Pseudo逆)在矩阵理论中的核心应用。通过解析SVD的基本原理,包括U矩阵、V矩阵、Σ矩阵的角色,以及它们在正交输入输出基向量和矩阵特征值之间的关系。此外,文章阐述了Moore-Pseudo逆的概念及其唯一性,并展示了如何利用SVD分解来计算广义逆。最后,文章讨论了线性最小二乘问题的解决方法,特别是在不同情况下如何寻找最优解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 奇异值分解SVD

任意矩阵A (mxn)(这里仅考虑实数矩阵的情况), 都能被奇异值分解为:


其中, Umxm的正交矩阵, Vnxn的正交矩阵, Σr是由r个沿对角线从大到小排列的奇异值(非负)组成的方阵. r就是矩阵A的秩.

V的列向量组成一套对A的正交“输入”或“分析”的基向量,这些向量是ATA的特征向量。

U的列向量组成一套对A的正交“输出”的基向量,这些向量是AAT的特征向量。

Σr对角线上的元素可视为在输入与输出间进行的纯量的"膨胀控制".这些是ATAAAT的特征值的非零平方根.

ATA=VΣrTUUΣrVTV(ΣrTΣrVT

AAT=UΣrVTVΣrTU= U(ΣrΣrTUT

2. Moore-Pseudo逆

任意矩阵A, 若存在矩阵X, 使得:

则称XA的Moore-Pseudo逆, 简称广义逆, 记为A+.

矩阵A的广义逆是唯一的, 并且可以利用A的SVD分解进行计算. 令A的SVD分解为:


不难验证

当矩阵A满秩时,其M-P逆A+可以由表达式计算得到. 特殊地,当A列满秩(即ATA可逆)时,


这个特殊的伪逆构成一个左逆,即A+A = IA满秩(即AAT可逆)时,


这个特殊的伪逆构成一个右逆,即AA+ = I.

3. 线性最小二乘问题

考虑线性方程组Ax=b, 求其最小二乘解.

如果A的秩是n, 则其唯一解是A+b; 如果秩小于n, 则有无穷多解, 其中的最小范数解仍然是A+b. 我们通常关心的也就是这个解.

对于齐次线性方程组Ax=0。当A行数大于列数时,需要求解最小二乘解。在||x||=1的约束下,其最小二乘解为矩阵ATA最小特征值所对应的特征向量。求解方法有两种(matlab):

1)  [V D] = eig(A'*A);DA'*A的特征值对角矩阵,V为对应的特征向量。找到最小特征值对应的V中的特征向量即为最小二乘解。

2)使用SVD分解矩阵A,[U S V] = svd(A); U由A*A'的特征向量组成,V由A'*A的特征向量组成。因此,奇异值矩阵S中最小的奇异值对应的V中的奇异向量即为最小二乘解。

对于超定方程(非齐次线性方程组的一种)的最小二乘解的情况。Ax=b; 当A的行数大于列数时,方程组无解,需要求解最小二乘解。在matlab中使用一个左除命令就可以得到最小二乘意义下的解。matlab: A\b.

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值