主要内容

奇异值

一个奇异值和相应的奇异向量一个矩形矩阵一个分别是一个标量吗σ和一双向量uv满足

一个 v = σ u 一个 H u = σ v ,

在哪里 一个 H 的厄密共轭转置一个。奇异向量uv通常的标准比例1。同样,如果uv是奇异向量的一个,然后- u- v是奇异向量的一个

奇异值σ总是真实的,非负,即使一个是复杂的。与一个对角矩阵的奇异值Σ和对应的奇异向量形成两个正交矩阵的列UV,你获得了方程

一个 V = U Σ 一个 H U = V Σ

UV把第一个等式乘以,酉矩阵吗 V H 右边的收益率奇异值分解方程

一个 = U Σ V H

奇异值分解的——- - - - - -n矩阵包括:

  • ——- - - - - -矩阵U

  • ——- - - - - -n矩阵Σ

  • n——- - - - - -n矩阵V

换句话说,UV都是方形,Σ一样的尺寸吗一个。如果一个有许多比列(行m > n),然后由此产生——- - - - - -矩阵U很大。然而,大多数的列U是乘以0Σ。在这种情况下,经济分解产生,因此节省了时间和存储——- - - - - -nU,一个n——- - - - - -nΣ和相同的V:

经济分解,列U可以忽略,如果他们用零对角矩阵的奇异值。

特征值分解是分析一个矩阵的适当的工具当它代表一个向量空间的映射到本身,是一个常微分方程。然而,奇异值分解是分析一个适当的工具将从一个向量空间映射到另一个向量空间,可能有不同的维度。大多数系统的线性方程组属于第二个类别。

如果一个是广场,对称正定,那么它的特征值和奇异值分解是相同的。但是,正如一个离开对称和积极的明确性,两者的区别分解增加。特别是,一个真正的矩阵的奇异值分解一直是真实的,但真正的特征值分解,非对称矩阵可能是复杂的。

例如矩阵

2 = 9 4 6 8 7

完整的奇异值分解

[U, V] =圣言(A) U = 0.6105 -0.7174 0.3355 0.6646 0.2336 -0.7098 0.4308 0.6563 0.6194 14.9359 S = 0 0 5.1883 0 0 V = 0.6925 -0.7214 0.7214 0.6925

您可以验证U * * V”等于一个在舍入误差。对于这个小问题,经济规模分解只是略小。

(U, V) =圣言(0),U = 0.6105 -0.7174 0.6646 0.2336 0.4308 0.6563 5.1883 S = 14.9359 0 0 V = 0.6925 -0.7214 0.7214 0.6925

再一次,U * * V”等于一个在舍入误差。

批处理计算计算

如果你需要大量的矩阵分解,有相同的大小,是低效的在一个循环中执行所有的分解圣言会。相反,您可以将所有的矩阵变成一个多维数组和使用pagesvd进行奇异值分解在所有数组的页面通过一个函数调用。

函数 使用
pagesvd 使用pagesvd进行奇异值分解页面的多维数组。这是一个有效的方式来执行圣大的矩阵集合都有相同的大小。

例如,考虑三个2×2的矩阵的集合。连接的矩阵变成2-by-2-by-3数组函数。

(0 = 1;1 0];B = [1 0;0 1];C = [0 1;1 0];X =猫(3 A, B, C);

现在,使用pagesvd同时执行三个分解。

[U, V] = pagesvd (X);

每一页的X在输出中,有相应的页面U,年代,V。例如,矩阵一个在第一页的X,并给出其分解U (:: 1) * S (:,: 1) * V (:,: 1)”

低秩计算近似

对于大型稀疏矩阵,使用圣言会计算所有的奇异值和奇异向量并不总是实用。举个例子,如果你需要知道几个最大的奇异值,然后计算的所有奇异值5000 - 5000稀疏矩阵是额外的工作。

在这种情况下,只有一个子集的奇异值和奇异向量是必需的,圣言会svdsketch功能优先于圣言会

函数 使用
圣言会 使用圣言会计算排名k近似的圣言。您可以指定是否应该最大的奇异值的子集,最小的,或者最接近到一个特定的数字。圣言会一般计算最好的排名k近似。
svdsketch 使用svdsketch输入矩阵的计算部分计算满足指定的公差。而圣言会要求您指定等级,svdsketch自适应确定矩阵的秩素描基础上指定的公差。排名,k近似,svdsketch最终使用满足公差,但不像圣言会,它不能保证是最好的一个可能的。

例如,考虑一个1000 -,- 1000随机稀疏矩阵的密度约为30%。

n = 1000;一个= sprand (n, n, 0.3);

六大奇异值

S =圣言(A) = 130.2184 16.4358 16.4119 - 16.3688 16.3242 - 16.2838

同时,六名最小奇异值

S =圣言(6“最小”)S = 0.0740 0.0574 0.0388 0.0282 0.0131 - 0.0066

对于较小的矩阵,可以装入内存作为完整的矩阵,完整的(一个),使用圣言(全(A))也可能更快圣言会svdsketch。然而,对于真正的大型稀疏矩阵,使用圣言会svdsketch成为必要。

另请参阅

||||

相关的话题