线性方程组的SVD解法

SVD线性方程组 SVD 对于任一给定的矩阵A(m∗n)\boldsymbol{A}(m*n)A(m∗n),都存在这样的分: A=UDVT\boldsymbol{A}=\boldsymbol{U}\boldsymbol{D}\boldsymbol{V}^TA=UDVT 这里: U\boldsymbol{U}U是一个(m∗m)(m*m)(m∗m)的正交矩阵, D\boldsymbol{D}D是一个(m∗n)(m*n)(m∗n)的对角矩阵, V\boldsymbol{V}V是一个(n∗n)(n*n)(n∗n)的正交矩阵 阅读详情

SVD方法求解线性方程组

本文详细推导如果利用奇异值分解得到 A X = 0 AX=0 AX=0 A X = b AX=b AX=b的解,推导如下。

齐次方程组求解AX=0

对于一个维度为 m × n m\times n m×n的矩阵 A A A来说,我们可以将其进行奇异值分解得到:
A m × n = U m × m W m × n V n × n T A_{m\times n} = U_{m \times m} W_{m\times n}V^T_{n\times n} Am×n=Um×mWm×nVn×nT
我们知道对于齐次线性方程组来说,如果位置量的维度为 n n n,并且 r a n k ( A ) = m > n rank(A)=m>n rank(A)=m>n的话,约束多于位置量个数,一般这种情况我们会使用最小二乘法进行求解:
x + = arg ⁡ min ⁡ ∥ A X ∥ 2 x^{+}=\arg \min\Vert AX\Vert^2 x+=argminAX2
此时, x + x^{+} x+代表最小二乘法最优值。

基于拉格朗日法推导

我们将式(2)转换为一个带等式约束的最优问题:
x + = arg ⁡ min ⁡ ∥ A X ∥ 2 s . t .    ∥ X ∥ 2 = 1 x^{+} = \arg\min\Vert AX \Vert^2 \\ s.t.~~ \Vert X \Vert^2 = 1 x+=argminAX2s.t.  X2=1
我们知道 ∀ k \forall k k那么 k A X = 0 kAX=0 kAX=0,所以我们可以这么限制。
针对式(3)使用拉格朗日乘子法:
L ( X , λ ) = ∥ A X ∥ 2 + λ ( 1 − ∥ X ∥ 2 ) = A X X T A T + λ ( 1 − X T X ) L(X, \lambda) = \Vert AX \Vert^2 + \lambda(1 - \Vert X \Vert^2)\\ = AXX^TA^T + \lambda(1 - X^TX) L(X,λ)=AX2+λ(1X2)=AXXTAT+λ(1XTX)
让朗格朗日函数 L L L λ \lambda λ x x x求导得:
∂ L ∂ λ = 1 − X T X = 0 ∂ L ∂ X = 2 A T A X − 2 λ X = 0 \frac{\partial L}{\partial \lambda} = 1-X^TX = 0\\ \frac{\partial L}{\partial X} = 2A^TAX-2\lambda X = 0 λL=1XTX=0XL

Matlab中求线性方程组——高斯消元法、LU分解法、QR分解法SVD解法、迭代法等 Matlab中求线性方程组有多种方法,常用的包括高斯消元法、LU分解法、QR分解法SVD解法、迭代法等 阅读详情

相关推荐

VSLAM基础(六)————超定线性方程组解法

vslam前端部分基本讲完了,这里在进入后端之前,先讨论下超定线性方程组解法,毕竟在slam问题里我们经常会遇到要超定方程的时候。当然这篇只是介绍一下超定线性方程的解法,非线性方程等到介绍BA时再写吧。 一、Ax=b的解法 对于A矩阵n*m时,一般若n大于m,我们就说这个方程为超定没有,当然我们slam里一般关心最小二乘线性方程组 可能无。即任意一组    都可能使 ...

potxxx的博客 6859

利用SVD(奇异值分)求线性方程组.zip

在MVG(多视图几何)和机器学习领域,求线性方程组几乎是所有算法的根本,本文旨在帮助读者搞懂矩阵线性方程组的关系,并给出利用SVD线性方程组的实战代码。 本资源是博文"【动手学MVG】矩阵线性方程组的关系,求线性方程组实战代码"的完整工程。博文链接:https://blog.csdn.net/a435262767/article/details/108774141

奇异值SVD例题|手算|应用数学

SVD奇异值分的例题和详细步骤,求A的奇异值分的结果。

小星星呜呜55 1141

svd线性方程组

用过svd的方法线性方程组,该处程序是三组方程,然后出结果

SVD线性方程组

线性方程组

wubobupt2的博客 1337

【六】SVD

1.线性空间 线性空间需要满足的条件: 加法封闭(可加性):空间内任意两向量相加(减),结果必须还在空间中。 数乘封闭(齐次性):空间内任意向量乘以标量,结果必须还在空间中。 注意:“数乘封闭”隐含了: 线性空间必须包括零向量(当λ=0时); 线性空间的属性: 维数 基:一组n个线性无关的向量 2.矩阵4个子空间 首先,介绍下矩阵的秩(rank),即矩阵最大线性无关组中包含的向量数 —— 刨除所有因为和其他向量线性相关,而在作为基向量的时候对张成空间的维数“毫无贡献...

火柴的初心的博客 4916

SVD解法齐次线性方程组

这行对应于最小的奇异值,并且给出了Ax0Ax=0Ax0的一个,这个向量vvv是AAA的零空间的基,这意味着Av0Av=0Av0。

mobileUserInf的博客 928

SVD超定方程组

做平差的时候,需要误差方程组,而 有的书本上说线性的误差方程组,并不需要初值。 在查阅了测量平差书本之后,书里描述,一般是需要参数的初始值的。 这就产生了疑问。 因为非线性方程的线性化之后,舍掉了二次项之后的值,会造成平差模型的弱化。因此在进行非线性方程的平差过程中,一般是对改正值进行一个迭代计算,使其精化。 而线性化之后的各参数的系数中,包含了其他的未知参数,因此在计算的过程之...

weixin_34239592的博客 1568

[数学]齐次线性方程组SVD、最小二乘法

AX=0 这是一个齐次线性方程组(一般的非齐次线性方程组AX=b其实也都可以化为齐次方程组的形式,所以比较普遍) 这个方程根据A来分,有几种情况: 1.r(A)=未知数个数(约束刚刚好) 1.1.A是方阵 由克莱姆法则可知: 如果A是n*n的方阵而且r(A)=n,那么该方程组有唯一的零。 1.2.A不是方阵,A是m×n的 由另一个定理:齐次线性方程空间维数 = n - r(

DSbatigol的专栏 2万+

[数学]线性方程组SVD

齐次线性方程组

youngpan1101的博客 6809

线性方程组SVD

转载

asdiiiqqq的博客 92

矩阵方程求

线性方程组的迭代解法 几种矩阵算法: LU分,Cholesky分,QR分SVD,Jordan分 线性方程组的迭代解法 该文档上传于以下地方 https://mp.csdn.net/console/upDetailed

cy413026的博客 3437

线性方程组SVD,正规方程)

齐次线性方程组Ax=b,A是m*n的矩阵,x是n*1,b是m*1。 超定:当m>n时,rank(A)不等于rank(A,b)==>(即b不在A的列向量张成的子空间中),此时不存在精确。 rank(A)=n=rank(A,b)==>(即b在A的列向量张成的子空间中),此时也存在精确 ...

hanshihao1336295654的博客 4741

SVD线性方程组(非齐次

对于任一给定的矩阵A(m * n),都存在这样的分: 其中, U是一个m * m的酉矩阵,S是一个m * n的矩阵,除了主对角线上的元素以外全为0,主对角线上的每个元素都称为奇异值, V是一个n * n的酉矩阵。求线性方程组Ax=b svd(A) = USV',令X=V'x,B=U'b,则有SX=B,由于S是对角阵,可轻易求出X,又由于V是正交阵,则x=V...

xuanshuang的博客 7300

方程AX=b与矩阵:奇异值分SVD) 特征值分 QR分 三角分 LLT分

本文转自大佬博客: https://blog.csdn.net/Hansry/article/details/104174651 1. 前言 本博客主要介绍在SLAM问题中常常出现的一些线性代数相关的知识,很早就想整理一下了,刚好看到Manii 的博客对矩阵的方法进行了总结,以方便求线性方程组AX=B。在基于《计算机视觉—算法与应用》附录A 的内容 ,重点介绍了各种分的适用情况、分的特点。 1.1 为什么要进行矩阵? 1、矩阵可以在...

qq_38167930的博客 3676

线程方程组SVD最小二乘法求

奇异值分SVD)是计算机视觉领域中一种使用最为广泛的矩阵技术。我们已经知道了一个矩阵A可以分为下面这样一种形式: A = VDV' (1),这里V是一个正交矩阵(AA' = I),V' 代表V的转置, D是一个对角矩阵, 对角矩阵A中的每一个对角元都是A的特征值。 对于一个方阵A,我们总能找到一种特征值分的方式,A可以表达为 (1)所示的形式,但当A不是一个方阵时,我们需要知道是否也...

u010796650的博客 1215

线性方程组SVD,QR,Gauss,LU)

曲线拟合过程中,需要求线性方程组,下面谈谈线性方程组的求方法: 1)svd 对于齐次线性方程 A*X =0; 当A的行数大于列数时,就需要求最小二乘,在||X||=1的约束下,其最小二乘矩阵A'A最小特征值所对应的特征向量。求方法有两种(matlab): 1.  [ V D] =eig(A' *A); D为A' *A的特征值对角矩阵,V为对应的特征向量。找到最小特征值对应的

专注 机器学习+人工智能 9529

SVD线性方程组——秘密大起底

奇异值分SVD

zhouliyang1990的专栏 1万+
下一篇: 基础矩阵与本质矩阵推导
YNannnnnNY
博客等级 码龄9年 4粉丝 9原创
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值