最速下降法解析(理解笔记)

我们在高中或本科时期就了解到:当函数存在解析形式且容易进行求导( f ( x ) f(x) f(x)在最优点 x ∗ x^* x附近可微),那么 x* 是局部极小点的必要条件为: d f ( x ∗ ) = 0 df(x^*)=0 df(x)=0
然而,并不是所有的函数都容易求导,或者求导之后进行计算。所以引出了一系列基于最小二乘的优化算法如:“最速下降法(很多情况下也称为梯度下降法)、牛顿法、高斯牛顿法、LM算法”。

下面简单记录一下基本的最速下降法步骤及实例。

最速下降法

在这里插入图片描述
简要介绍:

第一步,选取一个迭代的初始值,设置迭代终止的阈值,第一次迭代 k = 0 k = 0 k=0
第二步,计算函数 f ( x ) f(x) f(x)在迭代 k = 0 k = 0 k=0处的一阶梯度 ▽ f ( x k ) ▽f(x^k) f(xk),如果 ∣ ∣ ▽ f ( x k ) ∣ ∣ < ε ||▽f(x^k)|| < ε f(xk)<ε停止迭代,输出 x k x^k xk,反之,进行下一步。
第三步,找到梯度的反方向 p k = − ▽ f ( x k ) p^{k} = -▽f(x^k) pk=f(xk),作为下降最快的方向。
第四步,假设,在 p k p^{k} pk方向前进了步长: t k t_k tk,使得下式成立:
f ( x k + t k p k ) = m i n f ( x k + t p k ) f(x^k+t_kp^{k}) = min f(x^k+tp^{k}) f(xk+tkpk)=minf(xk+tpk)

即:找到一个最优的步长 t k t_k tk,使得 f ( x k + t k p k ) f(x^k+t_kp^{k}) f(xk+tkpk)最小

接着:
改变 x k + 1 x^{k+1} xk+1的值, x k + 1 = x k + t k p k x^{k+1} = x^{k}+t_kp^{k} xk+1=xk+tkpk
同时, k = k + 1 k = k+1 k=k+1
转入第二步,进行判断进入下一次迭代或输出。

实例

在这里插入图片描述
在这里插入图片描述

上述内容主要参考了大佬的知乎回答:【最优化】一文搞懂最速下降法,这里仅进行记录,巩固自己的理解。

  • 22
    点赞
  • 169
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晓晨的博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值