BFGS算法

本文介绍了在机器学习中常用的优化算法BFGS。BFGS是拟牛顿法的一种,具有全局收敛性和超线性收敛速度。文章详细讲解了拟牛顿法的基本思想,与牛顿法的区别,以及DFP算法的原理。接着深入探讨了BFGS算法的迭代公式,并给出了其在C++和Python中的实现示例。
摘要由CSDN通过智能技术生成

今天,我来讲一种在机器学习中常用到的优化算法,叫做BFGS算法。BFGS算法被认为是数值效果最好的拟牛顿

法,并具有全局收敛性和超线性收敛速度。那么接下来将会详细讲解。

 

Contents

 

   1. 什么是拟牛顿法

   2. 拟牛顿法原理

   3. DFP算法原理

   4. BFGS算法原理

   5. BFGS算法的实现

 

 

1. 什么是拟牛顿法

 

   前面Logisitc回归讲解中,我介绍了牛顿法。牛顿法的特点是:收敛速度快,迭代次数少,但是当Hessian

   矩阵很稠密时,每次迭代的计算量很大。随着数据规模的增大,那么Hessian矩阵会越大,需要的存储空间

    多,计算量也会增大,有时候大到不可计算,所以针对海量数据的计算,牛顿法不再适用

 

   拟牛顿法是在牛顿法的基础上引入了Hessian矩阵的近似矩阵,避免每次迭代都计算Hessian矩阵的逆,它

   的收敛速度介于梯度下降法和牛顿法之间。拟牛顿法跟牛顿法一样,也是不能处理太大规模的数据,因为计算

   量和存储空间会开销很多。拟牛顿法虽然每次迭代不像牛顿法那样保证是最优化的方向&#x

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值