【发布时间】:2018-04-10 10:17:19
【问题描述】:
我正在将数据拟合到非线性 ODE 系统,以使用 Matlab lsqcurvefit 估计模型参数。
在这个拟合中,拟合很大程度上取决于我用于 lsqcurvefit 的初始猜测。
例如,如果我使用x0=5 作为初始猜测,我将得到 30 的残差范数,而如果我选择 x0=5.2,我得到的残差范数为 1.5。
1) Matlab 中的残差范数 (resnorm) 代表什么?它是平方误差的总和吗?有没有办法决定resnorm 的值范围是可以接受的。
2) 当拟合很大程度上取决于初始猜测时,有没有办法处理这些问题?我怎么知道是否可以从不同的初始猜测中获得更好的拟合?
3)在使用lsqcurvefit时需要检查残差是否正态分布?
【问题讨论】:
-
第一个问题:
resnorm确实是sum((y_measured-y_calculated).^2)。因此 resnorm 本身并不是很有用,您可以将 resorm 除以测量点的数量以获得平均误差。在我看来,resnorm没有好坏之分,这完全取决于所需的精度。
标签: matlab curve-fitting differential-equations estimation non-linear-regression