TensorFlow 优化器详解:ScipyOptimizerInterface 和 AdamOptimizer
代码中的第一行是使用 ScipyOptimizerInterface 来定义一个优化器 self.optimizer,其使用的优化方法是'L-BFGS-B'。'L-BFGS-B' 是一种基于 Broyden-Fletcher-Goldfarb-Shanno(BFGS)算法的优化方法,它通过近似计算目标函数的 Hessian 矩阵的逆来实现优化。
options 参数是一个字典,用于设置优化器的参数。其中 'maxiter' 表示最大迭代次数,默认为 None;'maxfun' 表示最大函数调用次数,默认为 None;'maxcor' 表示 Hessian 近似计算中存储的历史向量的最大数量,默认为 10;'maxls' 表示线搜索的最大迭代次数,默认为 10;'ftol' 表示函数值相对变化的阈值,默认为 1.0 * np.finfo(float).eps。
第二行是使用 AdamOptimizer 来定义一个优化器 self.optimizer_Adam,并将其应用于 self.loss。AdamOptimizer 是一种基于梯度的优化算法,通过自适应地调整学习率来优化模型。该优化器没有使用额外的参数。
第三行是使用 self.optimizer_Adam 的 minimize 方法来定义一个训练操作 self.train_op_Adam,该操作将最小化 self.loss。这个操作将使用 AdamOptimizer 来更新模型的参数,以减小损失函数的值。
原文地址: https://www.cveoy.top/t/topic/6v8 著作权归作者所有。请勿转载和采集!