######################## 拟牛顿_BFGS算法#######################
#算法描述:
'''
BFGS算法与DFP步骤基本相同,区别在于更新公式的差异
'''
def bfgs(fun,gfun,hess,x0):
#功能:用BFGS族算法求解无约束问题:min fun(x)
#输入:x0是初始点,fun,gfun分别是目标函数和梯度
#输出:x,val分别是近似最优点和最优解,k是迭代次数
maxk = 1e5#最大迭代次数
rho = 0.55#非线性搜索中的B因子
sigma = 0.4#非线性搜索中的δ因子
epsilon = 1e-5#设定迭代终止得的阈值
k = 0#初始化迭代次数
n = np.shape(x0)[0]#用于初始化海森单位矩阵和校正部分
#海森矩阵可以初始化为单位矩阵
机器学习算法__1__牛顿法,拟牛顿法,DFP,BFGS,L-BFGS 原理及代码详解(3)
最新推荐文章于 2020-01-10 22:20:01 发布