多批次LBFGS 该代码是用于神经网络训练的革命性优化器的实现。 它的全名是“带CUDA的多批次L-BFGS优化器”。 如今,著名的机器学习框架(例如Tensorflow)通常提供“基于梯度”的优化器(GradientDescent,AdaGrad),该优化器通过计算梯度并将其应用于网络来发挥作用。 该代码为Tensorflow实现了一个经过优化的优化器,它采用了“多批L-BFGS”算法(一种基于准牛顿算法的变体),我覆盖了Tensorflow的优化器的默认实现,并定义了一种用于梯度计算的拟新方法,该方法结合了二阶信息,其执行方式比默认优化器更好。 此外,我通过介绍CUDA技术来优化此优化器。 我在GPU上分配计算步骤。 它将优化器的性能提高至少20%。
2022-05-09 17:51:35 31KB Python
1
基于Newton法改进的BFGS迭代算法与Newton-CG算法,侯麟,尚晓吉,本文主要研究了数值分析中数值优化与非线性方程组求解这两个重要问题。文中首先概述了数值优化与非线性方程组的关系,然后对BFGS�
2022-04-12 15:44:10 167KB 首发论文
1
L-BFGS 代码,Matlab程序,有限内存的BFGS
2022-03-19 00:01:57 516KB matlab 开发语言
1
fminlbfgs,FMINLBFGS:快速有限的内存优化,matlab代码
2022-02-25 09:09:15 629KB matlab 开发语言
1
包含BFGS拟牛顿算法以及DFP拟牛顿算法包含一个函数文件、梯度文件以及求解函数文件,注释完整。
2022-02-24 10:02:19 4KB matlab 算法 最优化
1
1.分为脚本和程序文件,方便修改和调用 2.注释较多,简单易懂 3.目标函数,精度,迭代次数等条件可修改,兼容性强
2022-02-21 09:12:58 2KB matlab 算法 最优化算法 BFGS
1
针对电力系统经济负荷分配问题,分析了遗传算法与传统数学优化方法的不同优势与特性,提出一种求解电力系统经济负荷分配问题的改进遗传算法.利用极大熵理论将经济负荷分配问题转化为可微问题,将BFGS法引入遗传算法,提出了BFGS 算子,以提高遗传算法的寻优速度与局部搜索能力.同时,应用单纯形交叉算子将种群逐步向最优点进行引导,实现算法的快速寻优.实例研究结果验证了所提出方法的有效性.
1
pylbfgs ## usage的python实现 from lbfgs import * def new_Evaluate ( w , g , n , step ): ... def progress ( x , g , fx , xnorm , gnorm , step , n , k , ls ): ... param = lbfgs_parameters ( new_Evaluate , progress ) lb = lbfgs ( N , x , fx , param ) ret = lb . do_lbfgs () ## API class lbfgs : def __init__ ( self , n , x , ptr_fx , lbfgs_parameters ): n变量数。 x变量数组。 客户端程序可以设置优化的默认值,并通过该数组接收优化结果。 ptr
2022-02-08 15:14:17 4KB Python
1
bfgs.mBFGS算法拟牛顿法程序
2022-01-26 15:42:49 660B BFGS算法
1
注意,正在建设中! 使用普通STL的基本C ++ L-BFGS实现
2022-01-23 13:30:07 21KB C++
1