matlab SVD分解的相关解释·

来源:互联网 发布:u盘数据恢复 360 编辑:程序博客网 时间:2024/05/22 04:58
 

使用SVD技术的过程是:
(1)对给定集进行奇异值分解,得到奇异矩阵S。
(2)将奇异值居矩阵S中最小的几个值置为0,并将U和V中对应的行和列都置为0;
(3)得到经过特征缩减的新数据集X'=U*S*V。
格式 s = svd (X) %返回矩阵X 的奇异值向量

 

好奇与两者分解的有效性,所以在此记录一下~ 
[U,S,V] = svd (X) %返回一个与X 同大小的对角矩阵S,两个正交矩阵U 和V,
且满足= U*S*V'。若A 为m×n 阵,则U 为m×m 阵,V为n×n 阵。奇异值在S 的对角线上,非负且按降序排列。


[U,S,V] = svd (X,0) %得到一个“有效大小”的分解,只计算出矩阵U 的前n
列,矩阵S 的大小为n×n。 结果中 s 矩阵表示的是奇异值,代表了原矩阵的特性,这样做,可以对数据降维,保留数据特性的基础上做降维,方便做一些特征对比处理,减小计算量,提高匹配精度。

转自:http://www.zdh1909.com/html/matlab/10115.html
原创粉丝点击