陈宝林《最优化理论与算法》超详细学习笔记 (一)————第十章 使用导数的最优化方法(最速下降法、牛顿法、阻尼牛顿法)

本文详细介绍了最优化理论中的三种使用导数的方法:最速下降法、牛顿法及阻尼牛顿法。最速下降法通过负梯度方向寻找最小值点,牛顿法则通过二阶导数求解函数零点,而阻尼牛顿法结合两者优点,确保每次迭代函数值下降或不变,具有全局收敛性。
摘要由CSDN通过智能技术生成

陈宝林《最优化理论与算法》超详细学习笔记 (一)————第十章 使用导数的最优化方法(最速下降法、牛顿法、阻尼牛顿法)

写在前面

最优化理论与算法是一个重要的数学分支,顾名思义,这是一门研究在众多解决方案中确定什么样的方案是最优方案以及如何找到最优方案的学科。现如今,随着计算机科学的飞速发展,最优化理论与算法也迅速发展起来,成为了求解的有力工具,发挥着越来越来的作用。于是,为了给机器学习提供有力的理论支撑,现以清华大学出版社出版、 陈宝林编著的《最优化理论与算法》 为教材,开始学习这门课。学习的顺序根据同时在学习的《机器学习》的需要有所调整。

第十章 使用导数的最优化方法

在解决无约束问题的算法中,大致可以分为两类:一类要利用目标函数的导数,另一类只用到目标函数,称为直接方法。本章学习的是前一类使用导数的最优化方法中的最速下降法牛顿法阻尼牛顿法

最速下降法

为了求解目标函数的最小值时,从点 x 0 x_0 x0出发,我们可以自然地想到沿着函数值在 x 0 x_0 x0点下降最快的方向有利于尽快找到极小值点,于是数学家们根据这一思想提出了最速下降法
对于刚刚说的“下降最快方向”,根据高等数学知识,一般地(指欧式度量意义)在负梯度方向下为最速下降方向,即:
d = − ∇ f ( x ) \textbf{d}=-∇f(\textbf{x}) d=f(x)
回到刚开始的设想,现在我们找到了下降最快的方向来寻找最小值点,显然我们要经过多次寻找来逐渐逼近极小值点,所以要从 x 0 \textbf{x}_0 x0沿最速下降方向搜索多远找到下一个点 x 1 \textbf{x}_1 x1呢?
我们不妨假设变量𝜆,称为一维搜索的步长
x 1 = x 0 + λ d 0 \textbf{x}_1=\textbf{x}_0+\lambda \textbf{d}_0 x1=x0+λd0
也就是说 x 1 x_1 x1是关于𝜆的变量,那么 f ( x 1 ) f(\textbf{x}_1) f(x1)也是关于𝜆的变量,由于求目标函数的最小值,所以我们在此令 f ( x 1 ) f(\textbf{x}_1) f(x1)取最小值,求此时的𝜆,即:
λ 0 = argmax ⁡ λ f ( x 1 ) \mathop{\lambda _0=\underset{\lambda}{\operatorname{argmax}} f(x_1)} λ0=λargmaxf(x1)

于是,我们可以得到,以此类推:
x 2 = x 1 + λ 1 d 1 \textbf{x}_2=\textbf{x}_1+\lambda _1 \textbf{d}_1 x2=x1+λ1d1
… … ……
当最速下降方向的模足够小时,我们认为已经足够逼近最小值点,即:
∥ d k ∥ < ϵ \| \textbf{d}_k\|<\epsilon dk<ϵ
停止迭代,最小值点为 x k \textbf{x}_k xk

所以,最速下降算法步骤为:

  1. 给定初始点 x 0 \textbf{x}_0 x0,允许误差 ϵ > 0 \epsilon>0 ϵ>0,置 k = 0 k=0 k=0
  2. 计算搜索方向 d k = − ∇ f ( x k ) \textbf{d}_k=-∇f(\textbf{x}_k) dk=f(xk)
  3. 如果 ∥ d k ∥ < ϵ \| \textbf{d}_k\|<\epsilon dk<ϵ,则停止运算;否则,从 x k \textbf{x}_k x
  • 5
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值