minimize(method=’L-BFGS-B’)#

scipy.optimize.minimize(fun, x0, args=(), method=None, jac=None, hess=None, hessp=None, bounds=None, constraints=(), tol=None, callback=None, options=None)

使用 L-BFGS-B 演算法最小化一個或多個變數的純量函數。

另請參閱

有關其餘參數的文件,請參閱 scipy.optimize.minimize

選項:
——-
dispNone 或 int

已棄用的選項,先前用於控制問題求解期間螢幕上印出的文字。現在程式碼不會發出任何輸出,且此關鍵字沒有功能。

自版本 1.15.0 起已棄用: 此關鍵字已棄用,並將從 SciPy 1.17.0 中移除。

maxcorint

用於定義有限記憶體矩陣的最大變數度量修正數。(有限記憶體 BFGS 方法不會儲存完整的 Hessian 矩陣,而是使用這麼多項來近似它。)

ftolfloat

(f^k - f^{k+1})/max{|f^k|,|f^{k+1}|,1} <= ftol 時,迭代停止。

gtolfloat

max{|proj g_i | i = 1, ..., n} <= gtol 時,迭代將停止,其中 proj g_i 是投影梯度的第 i 個分量。

epsfloat 或 ndarray

如果 jac 為 None,則為使用正向差分法數值近似 Jacobian 矩陣時使用的絕對步長。

maxfunint

函數評估的最大次數。請注意,由於透過數值微分評估梯度,此函數可能會違反此限制。

maxiterint

最大迭代次數。

iprintint, optional

已棄用的選項,先前用於控制問題求解期間螢幕上印出的文字。現在程式碼不會發出任何輸出,且此關鍵字沒有功能。

自版本 1.15.0 起已棄用: 此關鍵字已棄用,並將從 SciPy 1.17.0 中移除。

maxlsint, optional

最大線搜索步驟數(每次迭代)。預設值為 20。

finite_diff_rel_stepNone or array_like, optional

如果 jac in ['2-point', '3-point', 'cs'],則為用於數值近似 Jacobian 矩陣的相對步長。絕對步長計算為 h = rel_step * sign(x) * max(1, abs(x)),可能會調整以符合邊界。對於 method='3-point'h 的符號會被忽略。如果為 None(預設值),則步長會自動選擇。

注意

選項 ftol 透過 scipy.optimize.minimize 介面公開,但直接呼叫 scipy.optimize.fmin_l_bfgs_b 會直接公開 factr。兩者之間的關係為 ftol = factr * numpy.finfo(float).eps。也就是說,factr 將預設機器浮點精度相乘即可得出 ftol