博客
关于我
中科大-凸优化 笔记(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/

你可能感兴趣的文章
Python bool() 函数能否为无效参数引发异常?
查看>>
Python C 程序子进程在“for line in iter“处挂起
查看>>
Python Celery:自动化测试平台定时任务必备的三方库
查看>>
python check_output 失败,退出状态为 1,但 Popen 适用于相同的命令
查看>>
Python CONNECT 4 CHECK WIN函数
查看>>
python cos,Python cos(90)和cos(270)不是0
查看>>
python进阶(4):Python 脚本文件重启自身进程
查看>>
python ctypes库中动态链接库加载方式
查看>>
python cv2 图像( np array )转 HObject
查看>>
python进阶(3):文件操作
查看>>
python cv2截取不规则区域图片
查看>>
python CV2裁剪图片并保存
查看>>
python进阶(2):pyecharts使用
查看>>
python cv2读取rtsp实时码流按时生成连续视频文件
查看>>
Python Dataframe Groupby Mean和Std
查看>>
python datetime
查看>>
python datetime笔记
查看>>
python day01
查看>>
python day10
查看>>
Python Day17 Django 03
查看>>