<p>从<code>least_squares</code>的文档来看,<code>leastsq</code>似乎是一个旧的包装器。在</p>
<blockquote>
<p><strong>See also</strong></p>
<p><a href="https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.leastsq.html#scipy.optimize.leastsq" rel="noreferrer">leastsq</a> A legacy wrapper for the MINPACK implementation of the Levenberg-Marquadt algorithm.</p>
</blockquote>
<p>所以您应该使用<code>least_squares</code>。似乎<code>least_squares</code>具有其他功能。其中最重要的是使用的默认“方法”(即算法)不同:</p>
<blockquote>
<ul>
<li><code>trf</code> : Trust Region Reflective algorithm, particularly suitable for large sparse problems with bounds. Generally robust method.</li>
<li><code>dogbox</code> : dogleg algorithm with rectangular trust regions, typical use case is small problems with bounds. Not recommended for problems
with rank-deficient Jacobian.</li>
<li><code>lm</code> : Levenberg-Marquardt algorithm as implemented in MINPACK. Doesn’t handle bounds and sparse Jacobians. Usually the most efficient
method for small unconstrained problems.</li>
</ul>
<p>Default is <code>trf</code>. See Notes for more information.</p>
</blockquote>
<p>旧的<code>leastsq</code>算法只是<code>lm</code>方法的包装器,正如文档所说,它只适用于小的无约束问题。在</p>
<p>您在结果中看到的差异可能是由于所采用的算法的不同。在</p>