转贴
奇异值分解 (sigular value decomposition,SVD) 是另一种正交矩阵分解法;SVD是最可靠的分解法,但是它比QR
分解法要花上近十倍的计算时间。[U,S,V]=svd(A),其中U和V代表二个相互正交矩阵,而S代表一对角矩阵。 和QR分解法相同者,
原矩阵A不必为正方矩阵。
使用SVD分解法的用途是解最小平方误差法和数据压缩
s = svd(X)
[U,S,V] = svd(X)
[U,S,V] = svd(X,0)
[U,S,V] = svd(X,'econ')
描述:
SVD命令是为了计算矩阵的奇异值分解。
s = svd(X) 返回一个向量的奇异值.
[U,S,V] = svd(X)
产生一个与X维度相同的对角矩阵S,并且降序排列非负对角元素。并且酉矩阵U和V使得X = U*S*V
[U,S,V] = svd(X,0)
如果X是n和m并且m > n,那么奇异值分解计算只有第一个n列U和S是n,n
[U,S,V] = svd(X,'econ')
如果X是n和m并且m > n,等价于svd(X,0)
对于m < n, 只有V的第一个m列是被计算的并且S是m*m.
X = diag(v,k)
以向量v的元素作为矩阵X的第k条对角线元素,当k=0时,v为X的主对角线;当k>0时,v为上方第k条对角线;当k<0时,v为下方第k条对角线。
例: