奇异值分解计算器

免费在线 SVD 计算器,通过奇异值分解将任意实矩阵 A 分解为 U、Σ、Vᵀ 三个矩阵,并使用 Jacobi 特征值算法展示逐步计算过程。

1.1M 次使用 最近更新 · 2026-05-05 本地运行 · 零上传
AD

如何使用奇异值分解计算器

奇异值分解计算器将矩阵分解为 A = UΣVᵀ 并展示每个分量矩阵。输入矩阵维度和元素值,奇异值分解计算器计算 U、Σ、Vᵀ,验证三者乘积能还原 A,并列出每一步计算过程。

  1. 设置维度 — 选择矩阵 A 的行数和列数(1 至 4)。
  2. 输入矩阵 — 在每个格子中填入实数(支持小数)。
  3. 查看分解结果奇异值分解计算器以矩阵形式展示 U、Σ 和 Vᵀ。
  4. 检查验证结果 — 工具显示 UΣVᵀ,可与原矩阵 A 对比确认正确性。
  5. 使用奇异值 — Σ 的对角元素即为奇异值,按从大到小排列。

公式与理论 - 奇异值分解计算器

奇异值分解计算器实现完整 SVD:

A = U Σ Vᵀ

其中:
  U  ∈ ℝ^(m×m)  — 左奇异矩阵(列向量正交归一)
  Σ  ∈ ℝ^(m×n)  — 对角矩阵,Σᵢᵢ = σᵢ,σ₁ ≥ σ₂ ≥ … ≥ 0
  Vᵀ ∈ ℝ^(n×n)  — 右奇异矩阵(行向量正交归一)
符号含义
A输入的 m×n 实矩阵
U左奇异矩阵,列向量为 AAᵀ 的特征向量
Σ矩形对角矩阵,Σᵢᵢ = σᵢ
Vᵀ右奇异矩阵,行向量为 AᵀA 的特征向量
σᵢ奇异值:σᵢ = √λᵢ(AᵀA)

奇异值分解计算器的算法步骤:

  1. 计算 AᵀA(n×n 对称矩阵)。
  2. 对 AᵀA 应用 Jacobi 特征值算法,求全部特征值 λᵢ 和特征向量 vᵢ,这些特征向量构成 V 的列向量。
  3. 按特征值从大到小排序,奇异值 σᵢ = √λᵢ。
  4. 计算左奇异向量:uᵢ = Avᵢ / σᵢ(σᵢ > 0 时)。
  5. 组装 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 的公式。

关于奇异值分解计算器的常见问题

奇异值分解计算器如何计算 SVD?

奇异值分解计算器使用 Jacobi 特征值算法求 AᵀA 的特征向量(右奇异向量 V),将特征值取平方根得奇异值,再通过 U = AVΣ⁻¹ 推导左奇异向量 U。

U、Σ 和 Vᵀ 的维度分别是什么?

对于 m×n 矩阵 A:U 为 m×m,Σ 为 m×n(对角矩阵,对角线为奇异值),Vᵀ 为 n×n。三者的乘积 UΣVᵀ 还原矩阵 A。

如何使用奇异值分解计算器的结果?

可将 SVD 用于低秩近似(只保留前 k 个奇异值/向量)、计算伪逆(A⁺ = VΣ⁺Uᵀ)、求矩阵 2-范数(σ₁),或以 V 的列向量作为 PCA 的主方向。

我的数据会被存储吗?

不会。所有计算均在您的浏览器中完成,不会向服务器发送任何数据。