博客
关于我
中科大-凸优化 笔记(lec47)-最速下降法
阅读量:320 次
发布时间:2019-03-04

本文共 713 字,大约阅读时间需要 2 分钟。

梯度下降法

梯度下降法是一种广泛应用于优化问题的迭代算法,通过不断调整模型参数使目标函数值逐步减小。其核心思想是沿着目标函数的负梯度方向步进,寻找最优解。具体公式为:

$$x_{k+1} = x_k - \nabla f(x_k)$$

在实际应用中,梯度下降法的收敛速度和最终效果依赖于步长选择和优化策略。为了加快收敛速度,常采用动量项或自适应学习率等方法进行改进。


最速(陡)下降法

最速下降法是梯度下降法的一种变种,采用恒定步长沿着当前点的负梯度方向更新参数。其更新公式与梯度下降法类似,但不考虑动量项或自适应步长。尽管最速下降法的收敛速度较慢,但其实现简单,适用于许多实际问题。


Gradient与Steepest Gradient的变种

为了解决梯度下降法在某些情况下收敛缓慢或无法收敛的问题,研究者提出了多种改进方法。以下是两种常见的变种:


1)坐标轮换法

坐标轮换法是一种处理梯度计算中零点问题的方法。通过轮换目标函数的梯度计算顺序,避免梯度计算过程中出现所有分量同时为零的情况,确保算法能够正常收敛。


2)若$f(x)$在某些点不可微

当目标函数$f(x)$在某些点不可微时,梯度下降法无法直接应用。这种情况下,可以采用插值或近似方法估计不可微点附近的梯度,从而继续优化过程。


例子

假设目标函数$f(x)$在$x_0$处不可微,但其一阶泰勒展开近似为:

$$f(x) \approx f(x_0) + \nabla f(x_0)^T(x - x_0)$$

此时,可以使用梯度近似值$\nabla f(x_0)$代替实际不可微点的梯度,继续进行优化。


下一章传送门

以上内容为本文的全部内容,后续章节请随机访问。

转载地址:http://aepq.baihongyu.com/

你可能感兴趣的文章
Pytest自动化测试框架:mark用法---测试用例分组执行
查看>>
pytest:4种方法实现 - 重复执行用例 - 展示迭代次数
查看>>
Pytest:一个卓有成效的测试工具
查看>>
python
查看>>
Python "HTTP Error 403: Forbidden"
查看>>
python %ns的作用
查看>>
Python + Appium 之 APP 自动化测试,坑点汇总!(建议收藏)
查看>>
Python + Appium 自动化操作微信入门(超详细)
查看>>
Python + Pytest 自动化框架的用例依赖实操
查看>>
Python + requests实现接口自动化测试!
查看>>
python + requests实现的接口自动化测试(超详细~)
查看>>
Python + selenium 如何截图?
查看>>
Python + Selenium 登录QQ邮箱
查看>>
Python + selenium如何做接口自动化测试?
查看>>
Python + selenium如何截图!
查看>>
Python + selenium自动化生成测试报告!
查看>>
Python - C 嵌入式分段错误
查看>>
Python - DM 一个用户 Discord 机器人
查看>>
python - Flask 基础 - 蓝图( Blueprint )(2)
查看>>
python - os.getenv 和 os.environ 看不到我的 bash shell 的环境变量
查看>>