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

如何计算多参数拟合的不确定性?基于reduced chi_squared的方法求解

双参数函数拟合基于约化卡方(reduced χ²)的不确定性计算流程

前置要求

  • 已完成双参数模型y = f(x; a, b)的最小二乘拟合,得到最优参数组合(a_opt, b_opt),以及对应的最小原始卡方值χ²_min
  • 计算约化卡方基准值:χ²_red_min = χ²_min / ν,其中ν = N - 2为自由度,N是测量数据点总数,2是拟合参数个数

注意:合理拟合的χ²_red_min应在1附近,若远大于1说明模型与数据匹配度差,远小于1说明测量误差被高估,两种情况都会导致不确定性计算结果失真,需先调整误差设置或模型再继续计算。

核心计算步骤

1. 确定约化卡方增量阈值

1σ置信水平下,双参数拟合对应的原始卡方增量固定为Δχ² = 2.30,对应约化卡方的增量阈值为Δχ²_red = 2.30 / ν。
我们需要找到所有满足χ²_red(a,b) ≤ χ²_red_min + Δχ²_red的参数组合(a,b),这些参数的取值范围就是置信度为1σ的不确定域。

若需要更高置信度,可替换对应原始卡方增量:2σ对应Δχ²=6.18,3σ对应Δχ²=11.8,换算成约化卡方增量统一除以自由度ν即可。

2. 单参数不确定性扫描

固定其中一个参数,优化另一个参数的取值,即可逐个计算两个参数的独立不确定性:

  • 固定参数a为某一偏离a_opt的取值,拟合得到当前a下b的最优值,计算该参数组合对应的约化卡方χ²_red
  • 逐步增大a的取值,直到χ²_red刚好等于χ²_red_min + Δχ²_red,此时a与a_opt的差值即为a的上偏差
  • 逐步减小a的取值,重复上述操作得到a的下偏差
  • 用相同逻辑固定b,扫描得到b的上下偏差

3. (可选)双参数联合置信域绘制

如果需要展示两个参数的相关性,可遍历参数空间,收集所有满足χ²_red(a,b) = χ²_red_min + Δχ²_red的(a,b)坐标点,这些点组成的闭合椭圆就是双参数的1σ联合置信域,椭圆的倾斜程度直接反映两个拟合参数的相关性大小。

结果验证

你可以用拟合输出的协方差矩阵结果做交叉验证:从协方差矩阵中提取的参数标准差,应与你扫描得到的对称单侧不确定性基本一致,偏差过大一般是扫描步长设置不合理、Δχ²阈值取错两个原因导致的。

参考伪代码

# 输入测量数据
x, y, y_err = 实验测量数据集
# 基础拟合得到最优参数和最小卡方
a_opt, b_opt, chi2_min = 最小二乘拟合函数(模型, x, y, y_err)
nu = len(x) - 2
chi2_red_min = chi2_min / nu
delta_chi2_red = 2.30 / nu # 1σ置信水平对应约化卡方增量

# 扫描参数a的上下偏差
a_upper = a_opt
while 计算卡方(模型, a_upper, 拟合最优b(a_upper), x, y, y_err)/nu <= chi2_red_min + delta_chi2_red:
    a_upper += 0.01 # 步长可根据参数实际量级调整
a_lower = a_opt
while 计算卡方(模型, a_lower, 拟合最优b(a_lower), x, y, y_err)/nu <= chi2_red_min + delta_chi2_red:
    a_lower -= 0.01
a_err = [a_opt - a_lower, a_upper - a_opt]

# 相同逻辑计算参数b的偏差即可

内容的提问来源于stack exchange,提问作者rashed a564

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 23:45:04