如何使用奇异值分解计算器
奇异值分解计算器将矩阵分解为 A = UΣVᵀ 并展示每个分量矩阵。输入矩阵维度和元素值,奇异值分解计算器计算 U、Σ、Vᵀ,验证三者乘积能还原 A,并列出每一步计算过程。
- 设置维度 — 选择矩阵 A 的行数和列数(1 至 4)。
- 输入矩阵 — 在每个格子中填入实数(支持小数)。
- 查看分解结果 — 奇异值分解计算器以矩阵形式展示 U、Σ 和 Vᵀ。
- 检查验证结果 — 工具显示 UΣVᵀ,可与原矩阵 A 对比确认正确性。
- 使用奇异值 — Σ 的对角元素即为奇异值,按从大到小排列。
公式与理论 - 奇异值分解计算器
奇异值分解计算器实现完整 SVD:
A = U Σ Vᵀ
其中:
U ∈ ℝ^(m×m) — 左奇异矩阵(列向量正交归一)
Σ ∈ ℝ^(m×n) — 对角矩阵,Σᵢᵢ = σᵢ,σ₁ ≥ σ₂ ≥ … ≥ 0
Vᵀ ∈ ℝ^(n×n) — 右奇异矩阵(行向量正交归一)
| 符号 | 含义 |
|---|---|
| A | 输入的 m×n 实矩阵 |
| U | 左奇异矩阵,列向量为 AAᵀ 的特征向量 |
| Σ | 矩形对角矩阵,Σᵢᵢ = σᵢ |
| Vᵀ | 右奇异矩阵,行向量为 AᵀA 的特征向量 |
| σᵢ | 奇异值:σᵢ = √λᵢ(AᵀA) |
奇异值分解计算器的算法步骤:
- 计算 AᵀA(n×n 对称矩阵)。
- 对 AᵀA 应用 Jacobi 特征值算法,求全部特征值 λᵢ 和特征向量 vᵢ,这些特征向量构成 V 的列向量。
- 按特征值从大到小排序,奇异值 σᵢ = √λᵢ。
- 计算左奇异向量:uᵢ = Avᵢ / σᵢ(σᵢ > 0 时)。
- 组装 U、Σ 和 Vᵀ,计算验证乘积 UΣVᵀ。
常用衍生量:
- 低秩近似:
A_k ≈ σ₁u₁v₁ᵀ + … + σₖuₖvₖᵀ - 伪逆:
A⁺ = VΣ⁺Uᵀ(Σ⁺ 将非零 σᵢ 替换为 1/σᵢ) - 2-范数:
||A||₂ = σ₁ - Frobenius 范数:
||A||F = √(Σσᵢ²)
假设与限制
奇异值分解计算器支持最大 4×4 的实矩阵。Jacobi 算法最多迭代 200 次,对小型稠密矩阵完全足够。接近零的奇异值(< 10⁻⁹)对应的左奇异向量被置为零向量。生产环境中应始终使用经过充分测试的数值库(如 NumPy、LAPACK)进行 SVD 计算。
奇异值分解计算器的应用场景
奇异值分解计算器广泛应用于数据科学、工程和数学领域:
- 降维 / PCA — Vᵀ 的行向量为主方向,奇异值大小反映各方向解释的方差。
- 低秩矩阵近似 — 截断至前 k 项进行数据压缩或去噪。
- 最小二乘与伪逆 — 计算 A⁺ = VΣ⁺Uᵀ,在最小二乘意义下求解 Ax = b。
- 条件数 — κ(A) = σ_max / σ_min,衡量线性系统的数值敏感性。
- 潜在语义分析(LSA) — 对词-文档矩阵做 SVD,发现隐含主题。
- 图像压缩 — 用 k 个主奇异值/向量表示图像矩阵。
奇异值分解计算器提供全部三个因子矩阵,方便您试验秩截断、验证 U 和 V 的正交性,以及直接应用各种基于 SVD 的公式。