欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

errorsk-4nQwBFp0LP8NpyK9WwwoT3BlbkFJyH23SKdFWR1P9Sr63sF8

最编程 2024-08-13 11:18:07
...

作者:禅与计算机程序设计艺术

1.简介

目前很多机器学习、数据挖掘任务都依赖于强大的优化算法,而最流行的优化算法之一就是最优化算法中的L-BFGS算法(Limited memory BFGS)。在此文章中,我们将通过对其历史背景、基本原理、数学公式和具体实现进行阐述,讨论L-BFGS优化算法的优缺点及局限性,并提出改进方向。

1.1 L-BFGS算法简介

(1)算法历史背景

L-BFGS算法(Limited memory BFGS),中文名称为“内存受限的Broyden-Fletcher-Goldfarb-Shanno”算法。它是一种有限差值法(quasi-Newton method),是由伽莫夫、费舍尔、鲁多克斯和森博格等人开发出的一种对海森矩阵(Hessian matrix)进行减小(approximate)的方法。

L-BFGS算法的命名源自它的三个创始人的姓氏首字母,即伽莫夫(Roger Felberg)、费舍尔(Richard Shiefs)和鲁多克斯(Robert Lowe)三位都是牛津大学的教授。当时为了找到更加有效的海森矩阵求解方法,他们联合进行研究,想到把海森矩阵近似为其每一阶导数之和,并加入了正则化项。因此,L-BFGS算法的名字里就带着“BFGS”(Broyden-Fletcher-Goldfarb-Shanno)四个字。

但是,由于L-BFGS算法是基于海森矩阵进行优化的,因而其运算速度非常慢。L-BFGS算法被广泛用在统计模型的参数