第227行: |
第227行: |
| <math>\mathbf{M}^+ = \mathbf{V}\mathbf{\Sigma}^+\mathbf{U}^*</math> | | <math>\mathbf{M}^+ = \mathbf{V}\mathbf{\Sigma}^+\mathbf{U}^*</math> |
| | | |
− | 这里,<math>\mathbf{\Sigma}^+</math> 是 <math>\mathbf{\Sigma}</math> 的伪逆,我们通过将每个非零对角元素取倒数并转置来得到它。伪逆在解决[[线性最小二乘问题 linear least squares problems]]时常常派上用场。 | + | 这里,<math>\mathbf{\Sigma}^+</math> 是 <math>\mathbf{\Sigma}</math> 的伪逆,我们通过将每个非零对角元素取倒数并转置来得到它。伪逆在解决[[线性最小二乘问题]](linear least squares problems)时常常派上用场。 |
| | | |
| ===求解齐次线性方程=== | | ===求解齐次线性方程=== |
| | | |
− | 我们可以将一组[[齐次线性方程 homogeneous linear equations]]表示为 <math>\mathbf{A}\mathbf{x} = \mathbf{0}</math>,其中 <math>\mathbf{A}</math> 是矩阵,<math>\mathbf{x}</math> 是向量。通常,我们已知 <math>\mathbf{A}</math>,需要找出满足方程的非零 <math>\mathbf{x}</math>。这样的 <math>\mathbf{x}</math> 属于 <math>\mathbf{A}</math> 的零空间,也称为 <math>\mathbf{A}</math> 的(右)零向量。我们可以将向量 <math>\mathbf{x}</math> 描述为与 <math>\mathbf{A}</math> 的零奇异值对应的右奇异向量。这意味着,如果 <math>\mathbf{A}</math> 是方阵且没有零奇异值,则方程没有非零解。若有多个零奇异值,那么对应的右奇异向量的任意线性组合都是有效解。类似地,满足 <math>\mathbf{x}^*\mathbf{A} = \mathbf{0}</math> 的非零 <math>\mathbf{x}</math>(其中 <math>\mathbf{x}^*</math> 是 <math>\mathbf{x}</math> 的共轭转置)被称为 <math>\mathbf{A}</math> 的左零向量。
| + | 我们可以将一组齐次线性方程(homogeneous linear equations)表示为 <math>\mathbf{A}\mathbf{x} = \mathbf{0}</math>,其中 <math>\mathbf{A}</math> 是矩阵,<math>\mathbf{x}</math> 是向量。通常,我们已知 <math>\mathbf{A}</math>,需要找出满足方程的非零 <math>\mathbf{x}</math>。这样的 <math>\mathbf{x}</math> 属于 <math>\mathbf{A}</math> 的零空间,也称为 <math>\mathbf{A}</math> 的(右)零向量。我们可以将向量 <math>\mathbf{x}</math> 描述为与 <math>\mathbf{A}</math> 的零奇异值对应的右奇异向量。这意味着,如果 <math>\mathbf{A}</math> 是方阵且没有零奇异值,则方程没有非零解。若有多个零奇异值,那么对应的右奇异向量的任意线性组合都是有效解。类似地,满足 <math>\mathbf{x}^*\mathbf{A} = \mathbf{0}</math> 的非零 <math>\mathbf{x}</math>(其中 <math>\mathbf{x}^*</math> 是 <math>\mathbf{x}</math> 的共轭转置)被称为 <math>\mathbf{A}</math> 的左零向量。 |
| | | |
| ===总体最小二乘最小化=== | | ===总体最小二乘最小化=== |
| | | |
− | [[总体最小二乘 total least squares问题]]旨在找到一个向量 <math>\mathbf{x}</math>,使得在 <math>\|\mathbf{x}\| = 1</math> 的约束下,<math>\mathbf{A}\mathbf{x}</math> 的2-范数2-norm最小。结果表明,解就是 <math>\mathbf{A}</math> 最小奇异值对应的右奇异向量。 | + | [[总体最小二乘问题]](total least squares)旨在找到一个向量 <math>\mathbf{x}</math>,使得在 <math>\|\mathbf{x}\| = 1</math> 的约束下,<math>\mathbf{A}\mathbf{x}</math> 的2-范数2-norm最小。结果表明,解就是 <math>\mathbf{A}</math> 最小奇异值对应的右奇异向量。 |
| | | |
| ===值域、零空间和秩=== | | ===值域、零空间和秩=== |
第241行: |
第241行: |
| SVD还能为矩阵 <math>\mathbf{M}</math> 的值域和零空间提供明确表示。<math>\mathbf{M}</math> 零奇异值对应的右奇异向量张成其零空间,非零奇异值对应的左奇异向量张成其值域。例如,在前面的例子中,零空间由 <math>\mathbf{V}^*</math> 的最后一行张成,值域由 <math>\mathbf{U}</math> 的前三列张成。 | | SVD还能为矩阵 <math>\mathbf{M}</math> 的值域和零空间提供明确表示。<math>\mathbf{M}</math> 零奇异值对应的右奇异向量张成其零空间,非零奇异值对应的左奇异向量张成其值域。例如,在前面的例子中,零空间由 <math>\mathbf{V}^*</math> 的最后一行张成,值域由 <math>\mathbf{U}</math> 的前三列张成。 |
| | | |
− | 因此,<math>\mathbf{M}</math> 的秩等于非零奇异值的个数,也就是 <math>\mathbf{\Sigma}</math> 中非零对角元素的个数。在数值线性代数中,我们可以用奇异值确定矩阵的有效秩,因为[[舍入误差 rounding error]]可能导致秩亏矩阵出现小但非零的奇异值。我们通常认为超过显著间隙的奇异值在数值上等同于零。 | + | 因此,<math>\mathbf{M}</math> 的秩等于非零奇异值的个数,也就是 <math>\mathbf{\Sigma}</math> 中非零对角元素的个数。在数值线性代数中,我们可以用奇异值确定矩阵的有效秩,因为舍入误差(rounding error)可能导致秩亏矩阵出现小但非零的奇异值。我们通常认为超过显著间隙的奇异值在数值上等同于零。 |
| | | |
| ===低秩矩阵近似=== | | ===低秩矩阵近似=== |
第253行: |
第253行: |
| ===可分离模型=== | | ===可分离模型=== |
| | | |
− | 我们可以将SVD视为把矩阵分解成加权、有序的可分离矩阵之和。所谓可分离,指的是矩阵 <math>\mathbf{A}</math> 可以表示为两个向量的[[外积 outer product]] <math>\mathbf{A} = \mathbf{u} \otimes \mathbf{v}</math>,用坐标表示即 <math>A_{ij} = u_i v_j</math>。具体来说,矩阵 <math>\mathbf{M}</math> 的分解如下: | + | 我们可以将SVD视为把矩阵分解成加权、有序的可分离矩阵之和。所谓可分离,指的是矩阵 <math>\mathbf{A}</math> 可以表示为两个向量的外积(outer product)<math>\mathbf{A} = \mathbf{u} \otimes \mathbf{v}</math>,用坐标表示即 <math>A_{ij} = u_i v_j</math>。具体来说,矩阵 <math>\mathbf{M}</math> 的分解如下: |
| | | |
| <math>\mathbf{M} = \sum_i \mathbf{A}_i = \sum_i \sigma_i \mathbf{U}_i \otimes \mathbf{V}_i</math> | | <math>\mathbf{M} = \sum_i \mathbf{A}_i = \sum_i \sigma_i \mathbf{U}_i \otimes \mathbf{V}_i</math> |
第271行: |
第271行: |
| 我们可以利用方阵 <math>\mathbf{A}</math> 的SVD来找出最接近 <math>\mathbf{A}</math> 的正交矩阵 <math>\mathbf{O}</math>。这里,我们用 <math>\mathbf{O} - \mathbf{A}</math> 的Frobenius范数来衡量接近程度。解是 <math>\mathbf{U}\mathbf{V}^*</math> 的乘积。<ref>{{citation| url=https://people.wou.edu/~beavers/Talks/Willamette1106.pdf| title=The Singular Value Decomposition in Symmetric (Lowdin) Orthogonalization and Data Compression}}</ref>这个结果在直觉上是合理的,因为正交矩阵会有分解 <math>\mathbf{U}\mathbf{I}\mathbf{V}^*</math>,其中 <math>\mathbf{I}</math> 是单位矩阵。所以如果 <math>\mathbf{A} = \mathbf{U}\mathbf{\Sigma}\mathbf{V}^*</math>,那么乘积 <math>\mathbf{A} = \mathbf{U}\mathbf{V}^*</math> 相当于用1替换所有奇异值。等价地,解就是极分解 <math>\mathbf{M} = \mathbf{R}\mathbf{P} = \mathbf{P}'\mathbf{R}</math> 中的酉矩阵 <math>\mathbf{R} = \mathbf{U}\mathbf{V}^*</math>,无论拉伸和旋转的顺序如何。 | | 我们可以利用方阵 <math>\mathbf{A}</math> 的SVD来找出最接近 <math>\mathbf{A}</math> 的正交矩阵 <math>\mathbf{O}</math>。这里,我们用 <math>\mathbf{O} - \mathbf{A}</math> 的Frobenius范数来衡量接近程度。解是 <math>\mathbf{U}\mathbf{V}^*</math> 的乘积。<ref>{{citation| url=https://people.wou.edu/~beavers/Talks/Willamette1106.pdf| title=The Singular Value Decomposition in Symmetric (Lowdin) Orthogonalization and Data Compression}}</ref>这个结果在直觉上是合理的,因为正交矩阵会有分解 <math>\mathbf{U}\mathbf{I}\mathbf{V}^*</math>,其中 <math>\mathbf{I}</math> 是单位矩阵。所以如果 <math>\mathbf{A} = \mathbf{U}\mathbf{\Sigma}\mathbf{V}^*</math>,那么乘积 <math>\mathbf{A} = \mathbf{U}\mathbf{V}^*</math> 相当于用1替换所有奇异值。等价地,解就是极分解 <math>\mathbf{M} = \mathbf{R}\mathbf{P} = \mathbf{P}'\mathbf{R}</math> 中的酉矩阵 <math>\mathbf{R} = \mathbf{U}\mathbf{V}^*</math>,无论拉伸和旋转的顺序如何。 |
| | | |
− | 在形状分析中,有一个类似的问题叫做[[正交普鲁克问题 orthogonal Procrustes problem]],它涉及找到一个最接近将 <math>\mathbf{A}</math> 映射到 <math>\mathbf{B}</math> 的正交矩阵 <math>\mathbf{O}</math>。具体来说:
| + | 在形状分析中,有一个类似的问题叫做正交普鲁克问题(orthogonal Procrustes problem),它涉及找到一个最接近将 <math>\mathbf{A}</math> 映射到 <math>\mathbf{B}</math> 的正交矩阵 <math>\mathbf{O}</math>。具体来说: |
| | | |
| <math>\mathbf{O} = \underset{\Omega}{\operatorname{argmin}} \|\mathbf{A}\mathbf{\Omega} - \mathbf{B}\|_F \quad \text{subject to} \quad \mathbf{\Omega}^T\mathbf{\Omega} = \mathbf{I}</math> | | <math>\mathbf{O} = \underset{\Omega}{\operatorname{argmin}} \|\mathbf{A}\mathbf{\Omega} - \mathbf{B}\|_F \quad \text{subject to} \quad \mathbf{\Omega}^T\mathbf{\Omega} = \mathbf{I}</math> |
第289行: |
第289行: |
| ===其他例子=== | | ===其他例子=== |
| | | |
− | 奇异值分解(SVD)在线性[[反问题 inverse problems]]研究中广泛应用,分析Tikhonov正则化等方法时颇有助益。统计学界普遍使用它,与[[主成分分析 principal component analysis]]和[[对应分析 correspondence analysis]]密切相关,信号处理和模式识别领域也常见其身影。此外,它还用于仅输出[[模态分析 modal analysis]],可从奇异向量确定非缩放[[模态形状 mode shapes]]。自然语言文本处理中的[[潜在语义索引 latent semantic indexing]]也离不开它。 | + | 奇异值分解(SVD)在线性[[反问题]](inverse problems)研究中广泛应用,分析Tikhonov正则化等方法时颇有助益。统计学界普遍使用它,与[[主成分分析]](principal component analysis)和[[对应分析]](correspondence analysis)密切相关,信号处理和模式识别领域也常见其身影。此外,它还用于仅输出[[模态分析]](modal analysis),可从奇异向量确定非缩放[[模态形状]](mode shapes)。自然语言文本处理中的[[潜在语义索引]](latent semantic indexing)也离不开它。 |
| | | |
| 在涉及线性或线性化系统的一般数值计算中,常用一个普遍常数来刻画问题的规律性或奇异性,即系统的"条件数" <math>\kappa := \sigma_{\text{max}} / \sigma_{\text{min}}</math>。这个数值通常决定了给定计算方案在这些系统上的误差率或收敛速度。 | | 在涉及线性或线性化系统的一般数值计算中,常用一个普遍常数来刻画问题的规律性或奇异性,即系统的"条件数" <math>\kappa := \sigma_{\text{max}} / \sigma_{\text{min}}</math>。这个数值通常决定了给定计算方案在这些系统上的误差率或收敛速度。 |
| | | |
− | [[量子信息 quantum informatio]]领域中,SVD以Schmidt分解的形式发挥着关键作用。通过它,我们可以自然地分解两个量子系统的状态,从而提供了它们纠缠的充要条件:只要 <math>\mathbf{\Sigma}</math> 矩阵的秩大于1。 | + | [[量子信息]](quantum informatio)领域中,SVD以Schmidt分解的形式发挥着关键作用。通过它,我们可以自然地分解两个量子系统的状态,从而提供了它们纠缠的充要条件:只要 <math>\mathbf{\Sigma}</math> 矩阵的秩大于1。 |
| | | |
− | [[数值天气预报 numerical weather prediction]]中,SVD对大型矩阵也有重要应用。利用Lanczos方法,可以估算在给定初始前向时间段内,对中心数值天气预报线性增长最快的几个扰动。这些扰动实际上是该时间间隔内全球天气线性化传播子对应最大奇异值的奇异向量。在这种情况下,输出奇异向量代表整个天气系统。随后,这些扰动通过完整的非线性模型运行,生成[[集合预报 ensemble forecast]],为当前中心预测周围的不确定性提供了处理方法。 | + | [[数值天气预报]](numerical weather prediction)中,SVD对大型矩阵也有重要应用。利用Lanczos方法,可以估算在给定初始前向时间段内,对中心数值天气预报线性增长最快的几个扰动。这些扰动实际上是该时间间隔内全球天气线性化传播子对应最大奇异值的奇异向量。在这种情况下,输出奇异向量代表整个天气系统。随后,这些扰动通过完整的非线性模型运行,生成[[集合预报]](ensemble forecast),为当前中心预测周围的不确定性提供了处理方法。 |
| | | |
− | 降阶建模中也少不了SVD的身影。降阶建模旨在减少复杂系统中的自由度数量。研究人员将SVD与[[径向基函数 radial basis functions]]结合,用于插值三维非稳态流问题的解。
| + | 降阶建模中也少不了SVD的身影。降阶建模旨在减少复杂系统中的自由度数量。研究人员将SVD与径向基函数(radial basis functions)结合,用于插值三维非稳态流问题的解。 |
| | | |
| 值得一提的是,科学家们已经利用SVD改进了地面引力波干涉仪aLIGO的引力波形建模。SVD有助于提高波形生成的准确性和速度,支持引力波搜索和更新两种不同的波形模型。 | | 值得一提的是,科学家们已经利用SVD改进了地面引力波干涉仪aLIGO的引力波形建模。SVD有助于提高波形生成的准确性和速度,支持引力波搜索和更新两种不同的波形模型。 |