You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

秩亏矩阵QR分解:Julia中对角元零判定公式的求解

Julia中QR分解判定矩阵秩亏的阈值判定方法

在数值计算中,判定QR分解后R矩阵的对角元是否可视为零,核心采用相对阈值准则,而非固定绝对数值——因为绝对阈值会被矩阵的尺度大小干扰,相对准则更具通用性。具体判定公式与逻辑如下:

  1. 对目标矩阵执行QR分解,得到上三角矩阵R,提取其对角元集合{r₁₁, r₂₂, ..., rₙₙ}(Julia中默认输出的R矩阵对角元是降序排列的)。
  2. 计算R矩阵对角元中的最大值:r_max = maximum(abs.(diag(R)))
  3. 计算判定阈值,公式为:
    threshold = n * eps(T) * r_max
    
    其中:
    • n是矩阵的维度(若为m×n矩阵,取较大的维度值)
    • eps(T)是当前计算所用浮点数类型T的机器精度(比如Float64的eps()约为2.22e-16,Float32约为1.19e-7)
    • r_max是R矩阵对角元的最大绝对值
  4. 遍历R的每个对角元r_ii,若abs(r_ii) < threshold,则认为该对角元在数值意义上等价于0,对应矩阵存在线性相关的列/行,可判定为秩亏矩阵。

补充说明:

  • 乘以维度n是为了抵消数值计算过程中累积的误差,这是数值线性代数领域的通用经验修正。
  • 若问题对精度要求更宽松或严格,可调整阈值的系数,比如用sqrt(n)*eps(T)或10n*eps(T),但n*eps(T)是最常用的保守性阈值。

内容的提问来源于stack exchange,提问作者James Rider

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 22:19:22