机器学习优化方法小结

本文总结了机器学习中常用的优化算法,包括梯度下降法,介绍了其优缺点;接着讲解了牛顿法及其变种,如阻尼牛顿法,强调了牛顿法对二阶导数的需求;然后讨论了拟牛顿法,特别是L-BFGS算法,它解决了存储和计算海森矩阵的难题。通过实例和比较,阐述了各种方法在优化过程中的应用和特点。
摘要由CSDN通过智能技术生成
一. 梯度下降法

一阶最优化算法,梯度其实是有方向的。若找到一个函数的局部极小值,必须向函数上当前点对应梯度的反方向的规定步长距离点进行迭代搜索;若向梯度正方向搜索,会接近函数的局部极大值,称为梯度上升法。

优点:
简单易行

缺点:
靠近极小值时速度减慢。

二. 牛顿法,拟牛顿法,L-BGFS

牛顿法是使用函数f(x)的泰勒级数的前面几项来寻找 f(x)=0 的根。
基本思想是:在现有极小点估计值的附件对f(x)做二阶泰勒展开,进而找到极小点的下一个估计值。

例子1. 求函数为0的根

选择接近函数f(x)零点的 x0 ,用泰勒一阶展开表示:

f(x):=f(x0)+f(x0)(xx0)=0

会发现得到 x1=x0f(x0)/f(x0) 更接近方程 f(x)=0 的解,如此迭代,将越来越逼近真实的值。

例子2. 求解最优化问题

牛顿法可用于求解非线性优化问题,假设任务优化一个目标函数,求f的极大极小问题,可转为求解函数的导数f`(x)=0问题, 这样就可以把优化问题视为求解方程根(f’=0).

由于求最值,由极值必要条件可知,f’(x)=0, 利用产生序列 xk 逼近f(x)的极小点。

为了求解f’=0 ,把函数f(x)泰勒展开到2阶形式:

f(x):=f(x0)+f(x0)(xx0)+1/2f′′(x0)(xx0)2

f(x)=f(
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值