《最优化方法》——无约束具体算法以及KK

简介: 《最优化方法》——无约束具体算法以及KK

4 无约束具体算法


【机器学习之数学】02 梯度下降法、最速下降法、牛顿法、共轭方向法、拟牛顿法 - wuliytTaotao - 博客园 (cnblogs.com)


4.1最速下降法

梯度方向

  • 某点的梯度方向为该点的等值线的法线方向。
  • 沿着梯度方向增加最快,负梯度方向下降最快。


最速下降法就是沿着负梯度方向进行,下面列出它的一般算法。

image.png


一个求偏导公式的推导

35c56d707f964b1288b83f2c29dbf01d.png


最优步长公式的推导

a2fc0e4020a64093a2a7915b632f2280.png


一维搜索(线性搜索)

  • 非精确一维搜索,就是找到一个alpha满足一定条件即可,好比Wolfe-Powell,Armijo, goldstein条件。
  • 精确一维搜索,就是找到一个参数α,使得min:f(x+αd),有插值法,黄金分割法,直接法等等


缺点

由于最速下降法在相继两次迭代中,搜索方向是相互正交的,可见逼近极小点的路线是锯齿形,而且越靠近极小点步长越小,即越走越慢。


收敛速度较慢,所以它不是使用的算法。


4.2 共轭梯度法

image.png

简单举个例子

向量( 1 , 2 , 3 ) T  关于3阶单位方阵的所有线性无关的共轭向量有_________?

image.png

这个期末只要求了解共轭梯度,并未要求计算。在我看来,其余上面梯度下降法最明显的差异就是采用了共轭方向进行迭代。


4.3 牛顿法

最速下降法本质是用线性函数去近似目标函数,收敛速度较慢,若考虑用二次函数近似目标函数则可以得到收敛速度更快的算法,下面写的牛顿法就是如此。

image.png

这里需要计算黑塞矩阵以及求逆的过程。


4.4 拟牛顿法

参考开头的博文链接。


5 约束优化算法


5.1 KKT

参考下面这篇文章

与KKT有关的一篇相关博文

image.png

5.2 例子

image.png


参考资料

1【书籍】最优化方法——李学文 闫桂峰

2 【书籍】最优化方法基础——专祥涛

目录
相关文章
|
9月前
【数值分析】Jacobi、Seidel和Sor迭代法求解线性方程组(附matlab代码)
【数值分析】Jacobi、Seidel和Sor迭代法求解线性方程组(附matlab代码)
【概率论基础】Probability | 数学性概率 | 统计性概率 | 几何概率 | 概率论三大公理
【概率论基础】Probability | 数学性概率 | 统计性概率 | 几何概率 | 概率论三大公理
159 0
|
机器学习/深度学习 传感器 算法
【粘菌算法】基于粘菌算法SMA求解单目标优化问题附matlab代码
【粘菌算法】基于粘菌算法SMA求解单目标优化问题附matlab代码
|
算法
秒懂算法 | 递推方程求解方法
时间复杂度和空间复杂度表示为递推方程的两种求解方法。
435 1
秒懂算法 | 递推方程求解方法
|
机器学习/深度学习 传感器 算法
基于粒子群算法PSO、帝国殖民算法ICA 和萤火虫算法 FA 求解最小生成树附matlab代码
基于粒子群算法PSO、帝国殖民算法ICA 和萤火虫算法 FA 求解最小生成树附matlab代码
|
算法
F#实现Runge–Kutta算法求解常微分方程
不少工程问题中涉及的微分方程,我们很难求出方程的解析解,或者说根本不存在精确的解析解。此时,我们需要利用电脑,结合数值分析的方法来近似求出微分方程的相关解,并研究其性质。通过求出多个自变量的值,并求出对应的解,那么可以绘制出图形来辅助研究方程的特征。本文将介绍F#实现Runge–Kutta算法求解微分方程。
876 0
F#实现Runge–Kutta算法求解常微分方程
【组合数学】递推方程 ( 有重根递推方程求解问题 | 问题提出 )
【组合数学】递推方程 ( 有重根递推方程求解问题 | 问题提出 )
209 0
|
机器学习/深度学习
【组合数学】递推方程 ( 常系数线性非齐次递推方程 的 非齐次部分是 多项式 与 指数 组合方式 | 通解的四种情况 )
【组合数学】递推方程 ( 常系数线性非齐次递推方程 的 非齐次部分是 多项式 与 指数 组合方式 | 通解的四种情况 )
240 0