博客
关于我
中科大-凸优化 笔记(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 - 数据描述符(class 内置 get/set/delete方法 )
查看>>
Python - 根据值绘制彩色网格
查看>>
Python - 正则表达式在括号之间获取数字
查看>>
Python - 正则表达式在括号之间获取数字
查看>>
Python - 正则表达式在括号之间获取数字
查看>>
Python - 类 __hash__ 方法和集合
查看>>
Python - 轻松将文本文件内容转换为字典值/键
查看>>
Python - 递归和列表
查看>>
python -- 小数据池 is和 == 再谈编码
查看>>
Python -- 算法实现
查看>>
python --- 元组(tuple)
查看>>
python --- 列表(list)
查看>>
python --- 协程
查看>>
python --- 字符串 str
查看>>
python ----元组方法以及修改细节
查看>>
python ----字典dict
查看>>
python / 解决 pyinstaller 打包后运行时提示找不到模块的问题
查看>>
Python 10 个习惯用法,短平快第一期
查看>>
python 29day--异常处理及socket简介
查看>>
Python 3 中未定义名称“xrange“
查看>>