如何将最小二乘法应用于 Levenberg-Marquardt 算法的内置模型

How to apply the least squares method to built-in models of Levenberg-Marquardt algorithm

我正在尝试使用 lmfit 的内置 Voigt 模型对我的数据应用最小二乘法。

但我必须调用 Minimizer class 来应用最小二乘法,这需要一个函数。

而且我没有功能,因为我使用了lmfit提供的内置模型。我没有为 Voigt 模型使用的简单函数。

你有什么建议?

最小化器class:(http://lmfit.github.io/lmfit-py/fitting.html#module-Minimizer

我最初试图更改默认情况下为 10^-7 的最小二乘的 xtol、ftol 和 gtol 值,为此我认为我需要调用 Minimizer class。但是,我可以简单地通过将它们添加到 model.fit:

来更改 tol 值
output = model.fit(input_y, parameters, x=input_x, \
      fit_kws={"ftol":1e-22, "xtol":1e-10, "gtol":1e-22})

这里输出的是使用 lmfit 的模型。