matlab中的奇异值分解

引言:在线性代数中,我们都知道一个方阵如果相似,那这个矩阵就可以分解成三个简单矩阵的乘积:

        相似矩阵能够将一个复杂矩阵分解成简单矩阵,这样就可以降低计算难度。但并不是任意一个矩阵都存在相似矩阵,不仅要求该矩阵为方阵,还需要满足其他条件。既然不是所有矩阵都能利用相似矩阵分解,那有没有一种分解能够对所有矩阵都存在呢?哎,奇异值分解就是了。


原理:根据矩阵的线性变换,将一个矩阵分解为三个简单矩阵的乘积,即A=U*D*V,V—仅有主对角线上有值,其他全为0,主对角线上的数值称为A的奇异值,且奇异值按照从大到小的顺序进行排列,奇异值=A T *A的特征值开平方。U—左特征向量,将矩阵A*A的转置按照特征值分解,求出的特征向量就构成了U;D—右特征向量,将矩阵AT*A进行特征值分解,求出的特征向量构成的矩阵即为D,其中,U,D矩阵中特征向量的顺序按照奇异值排列的顺序排列。


补充:(1)A的正奇异值个数 = rank(A),且A和A的转置有相同的奇异值;(2)奇异值矩阵中的奇异值按从小到大排列,而且奇异值σ的减少特别的快,在很多情况下,前10%甚至1%的奇异值的和就占了全部的奇异值之和的99%以上了,也就是说较大的部分奇异值就占有所有奇异值的主要信息,用部分奇异值就可以表示全部奇异值。


作用:对数据进行降维,在保留数据主要信息的基础上将高维数据降维低维,便于处理。
应用:(1)消除信息中的冗余信息和降低信息中的噪声;(2)对图片进行压缩。

函数:svd()

格式:[U,V,S ] = svd(A)。

验证一下,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值