Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2008-04-01
年龄: 41
帖子: 11
声望力: 18 ![]() |
![]()
现在需要做一个奇异值分解,按照数学的方法一步一步自己写的话,不知道怎么才能去掉 负的特征值和它对应的向量。
不知道Matlab有没有自带可以实现的程序,或者做过的高手指点一下。 奇异值分解是线性代数中一种重要的矩阵分解,在信号处理、统计学等领域有重要应用。 定义:设A为m*n阶矩阵,AHA的n个特征值的非负平方根叫作A的奇异值。记为σi(A)。 如果把AHA的特征值记为λi(A),则σi(A)=λi(AHA)^(1/2)。 定理:(奇异值分解)设A为m*n阶复矩阵,则存在m阶酉阵U和n阶酉阵V,使得: A = U*S*V’ 其中S=diag(σi,σ2,……,σr),σi>0 (i=1,…,r),r=rank(A)。 推论:设A为m*n阶实矩阵,则存在m阶正交阵U和n阶正交阵V,使得 A = U*S*V’ 其中S=diag(σi,σ2,……,σr),σi>0 (i=1,…,r),r=rank(A)。 说明: 1、 奇异值分解非常有用,对于矩阵A(m*n),存在U(m*m),V(n*n),S(m*n),满足A = U*S*V’。U和V中分别是A的奇异向量,而S是A的奇异值。AA'的正交单位特征向量组成U,特征值组成S'S,A'A的正交单位特征向量组成V,特征值(与AA'相同)组成SS'。因此,奇异值分解和特征值问题紧密联系。 2、 奇异值分解提供了一些关于A的信息,例如非零奇异值的数目(S的阶数)和A的秩相同,一旦秩r确定,那么U的前r列构成了A的列向量空间的正交基。 关于奇异值分解中当考虑的对象是实矩阵时: S对角元的平方恰为A'A特征值的说明. (对复矩阵类似可得) 从上面我们知道矩阵的奇异值分解为: A=USV, 其中U,V是正交阵(所谓B为正交阵是指B'=B-1, 即B'B=I), S为对角阵. A'A=V'S'U'USV=V'S'SV=V-1S2V 上式中, 一方面因为S是对角阵, S'S=S2, 且S2对角元就是S的对角元的平方. 另一方面注意到A'A是相似与S2的, 因此与S2有相同特征值. 注:下面的符号和上面的有差异,注意区分 SVD步骤: 1、求AHA或AAH 2、求AHA或AAH的特征值及特征向量x1,x2,...xr, r个特征值组成 3、 U=(x1,x2,...xr)地 4、V1=AU1Δr-1,取V2与其正交,则V=(V1,V2) 则 n阶复方阵U的n个列向量是U空间的一个标准正交基,则U是U距阵. 一个简单的充分必要判别准则是 方阵U的转置共扼距阵乘以U 等于单位阵,则U是U距阵 正交向量组的性质 定义1Euclid空间V的一组两两正交的非零向量叫做V的一个正交向量组. 若正交向量组的每一个向量都是单位向量,这个正交组就叫做一个标准正交向量组. 设V是一个n维Euclid空间.若V中n个向量α1,α2,…,αn构成一个正交组,则由定理9.2.1知道这n个向量构成V的一个基.这样的一个基叫做V的一个正交基.若V的一个正交基还是一个标准正交向量组,则称这个基是V的一个标准正交基 |
![]() |
![]() |
|
|
![]() |
||||
主题 | 主题作者 | 版面 | 回复 | 最后发表 |
BMP图像转换成时间序列 | zlnhappy | MATLAB论坛 | 0 | 2008-04-28 17:53 |
【原创】**制作MATLAB资料电子书** | spy1120 | MATLAB论坛 | 21 | 2008-04-23 20:50 |
[求助]genetic programming | chhf4 | MATLAB论坛 | 0 | 2008-03-31 10:59 |
【求助】产生随机数?? | wpy6609 | MATLAB论坛 | 4 | 2007-06-25 22:45 |