python – 从scipy optimize.least_squares方法获取拟合参数的协
发布时间:2020-12-20 13:14:40 所属栏目:Python 来源:网络整理
导读:我使用scipy.optimize的 least_squares method来执行约束非线性最小二乘优化.我想知道如何获得拟合参数的协方差矩阵以获得拟合参数的误差条? 这似乎在curve_fit和leastsq中非常清楚,但对于least_squares方法来说并不那么清楚(至少对我而言). 我一直在做的一
我使用scipy.optimize的
least_squares method来执行约束非线性最小二乘优化.我想知道如何获得拟合参数的协方差矩阵以获得拟合参数的误差条?
这似乎在curve_fit和leastsq中非常清楚,但对于least_squares方法来说并不那么清楚(至少对我而言). 我一直在做的一种方法是因为我知道least_squares返回雅可比矩阵J(这是“jac”返回值),然后我做的是我将Hessian H逼近2 * J ^ T J.最后,协方差矩阵是H ^ { – 1},因此大约是(2 * J ^ TJ)^ { – 1},但我担心这可能是协方差的近似粗糙? 解决方法
curve_fit本身使用来自least_squares,https://github.com/scipy/scipy/blob/2526df72e5d4ca8bad6e2f4b3cbdfbc33e805865/scipy/optimize/minpack.py#L739的jacobian的伪逆
需要注意的一点是,如果结果接近边界,则整个方法都是可疑的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |