scipy.optimize.

HessianUpdateStrategy#

class scipy.optimize.HessianUpdateStrategy[源代码]#

用于实现 Hessian 更新策略的接口。

许多优化方法都使用 Hessian(或逆 Hessian)近似,例如拟牛顿法 BFGS、SR1、L-BFGS。然而,其中一些近似实际上不需要存储整个矩阵,或者可以以非常有效的方式计算内部矩阵与给定向量的乘积。此类充当优化算法和拟牛顿更新策略之间的抽象接口,可以自由地实现尽可能有效地存储和更新内部矩阵。不同的初始化和更新过程的选择将导致不同的拟牛顿策略。

派生类中应实现四个方法:initializeupdatedotget_matrix。矩阵乘法运算符 @ 也被定义为调用 dot 方法。

注释

任何实现此接口的类的实例都可以被 minimize 方法接受,并被兼容的求解器用于近似优化算法使用的 Hessian(或逆 Hessian)。

方法

dot(p)

计算内部矩阵与给定向量的乘积。

get_matrix()

返回当前内部矩阵。

initialize(n, approx_type)

初始化内部矩阵。

update(delta_x, delta_grad)

更新内部矩阵。