奇异值计算器

免费在线奇异值计算器,通过 AᵀA 的特征值分解计算任意实矩阵的所有奇异值,按从大到小排序并展示详细步骤。

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

如何使用奇异值计算器

奇异值计算器只需几步即可提取矩阵的全部奇异值。设置矩阵维度,输入元素值,奇异值计算器即显示从大到小排列的所有奇异值,以及详细的中间计算步骤。

  1. 设置维度 — 选择行数和列数(1 至 5)。
  2. 输入矩阵 A — 在每个格子中填入实数。
  3. 查看奇异值奇异值计算器列出 σ₁ ≥ σ₂ ≥ … ≥ σₖ,其中 k = min(m,n)。
  4. 查看谱范数 — 最大奇异值 σ₁ 等于矩阵的 2-范数。
  5. 查看步骤 — 追踪从 A 到 AᵀA、再到特征值、最后到奇异值的完整计算链路。

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

奇异值计算器采用特征值方法计算奇异值:

σᵢ = √λᵢ(AᵀA),λᵢ ≥ 0

其中 λ₁ ≥ λ₂ ≥ … 为 AᵀA(当 m < n 时用 AAᵀ)的特征值。
符号含义
A输入的 m×n 实矩阵
AᵀA 的转置
AᵀAn×n 对称半正定 Gram 矩阵
λᵢAᵀA 的特征值
σᵢA 的奇异值(σᵢ = √λᵢ)
kmin(m,n);奇异值个数

为什么用 AᵀA? AᵀA 始终是对称半正定矩阵,其特征值为实数且非负,取平方根即得奇异值。奇异值计算器使用带 Wilkinson 位移的 Jacobi QR 算法高效稳定地求解这些特征值。

主要关系:

  • ||A||₂ = σ₁(谱范数等于最大奇异值)
  • ||A||F = √(σ₁² + σ₂² + … + σₖ²)(Frobenius 范数)
  • rank(A) = 非零奇异值的个数
  • κ(A) = σ₁ / σₖ(方阵的条件数)

假设与限制

因舍入误差产生的微小负特征值(< −10⁻⁹)在取平方根前被截断为 0。奇异值计算器支持最大 5×5 的矩阵。对于更大的矩阵,请使用专业数值库。

奇异值计算器的应用场景

奇异值计算器在多个学科中具有重要价值:

  • 条件数估算 — 最大奇异值除以最小奇异值,衡量数值敏感性。
  • 矩阵秩 — 统计非零奇异值的个数即为矩阵的秩。
  • PCA 预处理 — 奇异值是主成分方差的平方根;奇异值计算器展示各主成分的相对大小。
  • 数据压缩 — 在低秩近似中,保留最大的 k 个奇异值来控制近似精度。
  • 控制系统 — Hankel 奇异值决定降阶模型的阶数。
  • 机器学习 — 检测近零奇异值以发现特征矩阵中的共线性问题。

使用奇异值计算器获得奇异值后,可通过相对大小阈值判断有效奇异值个数,并利用它们为涉及该矩阵的任何计算提供误差界。

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

奇异值计算器如何计算奇异值?

奇异值计算器构造 AᵀA,使用带 Wilkinson 位移的 Jacobi QR 算法求其特征值,然后取非负平方根并按从大到小排序输出。

奇异值代表什么意义?

奇异值衡量矩阵在不同方向上对单位向量的拉伸程度。最大奇异值等于矩阵的谱范数(2-范数);最大与最小奇异值之比为条件数,衡量数值敏感性。

奇异值计算器的结果与其他工具略有不同,正常吗?

奇异值计算器使用带 Wilkinson 位移的 QR 迭代,数值稳定,但可能与基于 LAPACK 的实现有微小的舍入差异。用于教学时结果精确到 6 位以上小数。

我的数据会被存储吗?

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