最优化方法——梯度下降法、牛顿法、LM算法

28 篇文章 7 订阅
订阅专栏

一、梯度下降法

介绍: 在机器学习中应用十分的广泛,主要目的是通过迭代的方式找到目标函数的最小值(极小值)。其基本思想是:以所处的位置为基准,寻找这个位置最陡峭的地方,然后朝着下降方向走一步,然后又继续以当前位置为基准,再找最陡峭的地方,再走直到最后到达最低处。

梯度: 在单变量的函数中,梯度其实就是函数的微分,代表着函数在某个给定点的切线的斜率
在多变量函数中,梯度是一个向量,向量有方向,梯度的方向就指出了函数在给定点的上升最快的方向。下面举个例子:
在这里插入图片描述
数学表示:
在这里插入图片描述
笔者注: 最优化方法最核心是求解目标函数的极值点(最大值、最小值点),可以通过建立一个代价函数,将该问题转变寻找最合适的曲线拟合点的问题(此时代价函数的极值点即为该曲线的参数)。方法如下:
在这里插入图片描述

参考文章: https://blog.csdn.net/qq_41800366/article/details/86583789

二、牛顿法

介绍: 牛顿法是求解无约束优化问题最早使用的经典方法之一,其基本思想是:用迭代点 x k x_k xk处的一阶导数(梯度)和二阶导数(Hesse阵)对目标函数进行二次函数近似,然后把二次模型的极小值点作为新的迭代点,并不断重复这一过程,直至求得满足精确度的近似极小值点。

1 . 牛顿法的数学推导

在这里插入图片描述

2. 牛顿法的算法步骤

在这里插入图片描述

3. 基于Armijo的阻尼牛顿法

在这里插入图片描述

4. 计算例题

在这里插入图片描述

在这里插入图片描述
参考视频: https://www.bilibili.com/video/BV1AF411z7hg/?spm_id_from=333.788.recommend_more_video.1

三、高斯-牛顿(Gauss-Newton)算法

1.1 推导

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

四、LM算法

1.1 推导

牛顿法虽然收敛速度快,但是需要计算黑塞矩阵(Hessian matrix),对于高维的问题,计算二阶导数会很复杂。因此我们有了Gauss-Newton算法。Gauss-Newton算法不直接计算黑塞矩阵(Hessian matrix),而是通过雅各比矩阵(Jacobian matrix ) 对 黑塞矩阵(Hessian matrix) 进行拟合:
H ≈ J T J H \approx J ^TJ HJTJ
但是,用 雅各比矩阵(Jacobian matrix )拟合黑塞矩阵(Hessian matrix),所计算出来的结果不一定是正定的,即无法保证下降,所以要引入一个对角矩阵与之相加(如果有特征值为负,加上 μ μ μ后就修正为正值):
H ≈ J T J + μ I H≈J^ T J+μI HJTJ+μI
这也就得到了LM算法,将上述式子带入之前的公式,可以得到:
x k + 1 = x k − ( J k T J k + μ I ) − 1 g k x_{k+1} =x_k −(J_k^T J _k +μI)^{−1} g_k xk+1=xk(JkTJk+μI)1gk
所以我们发现,当 μ \mu μ接近于0时,这个算法近似于Gauss-Newton算法;当 μ μ μ很大时,这个算法近似于最速下降法。因此,这也是为什么LM算法称为Gauss-Newton算法与最速下降法的结合。用一张图表示几种算法之间的关系:
在这里插入图片描述

1.2 LM算法步骤

在这里插入图片描述

[Math] 常见的几种最优化方法
weixin_34162695的博客
08-23 6135
  我们每个人都会在我们的生活或者工作中遇到各种各样的最优化问题,比如每个企业和个人都要考虑的一个问题“在一定成本下,如何使利润最大化”等。最优化方法是一种数学方法,它是研究在给定约束之下如何寻求某些因素(的量),以使某一(或某些)指标达到最优的一些学科的总称。随着学习的深入,博主越来越发现最优化方法的重要性,学习和工作中遇到的大多问题都可以建模成一种最优化模型进行求解,比如我们现在学习的机器学习...
最优化算法及实现
01-18
里面包含所有数值优化的代码,及原理说明,很适合初学者学习,和入门算法学习者的进阶资料。有线armijo,wolfe_powell,等常见的数值优化算法
最优化方法总结——梯度下降法、最速下降法、牛顿法、高斯牛顿法LM法、拟牛顿法
Dfreedom.的博客
11-22 1万+
最优化方法总结——梯度下降法、最速下降法、牛顿法、高斯牛顿法LM法、拟牛顿法。总结了算法的迭代公式以及改进的点和解决的问题
梯度下降、牛顿法、高斯牛顿法LM法之间的区别与联系之感性理解
Dwzsa的博客
03-02 5751
文章概述 对于最小二乘问题,求解方法主要有梯度下降法牛顿法、高斯牛顿法LM法,按照这些方法的排序来看,后面一种方法可以说是前面一种方法的改进,每种方法都改进了它前面方法的一些缺点。 最速下降法(也叫梯度下降法)--最简单暴力的方法 问题:我们能求出每一个x处的导数J(函数下降速度与方向), 怎样求这个函数的最小值? 核心思想:沿着函数变小的方向移动, 导数J代表了函数的变化趋势,因此...
优化算法:梯度下降算法
最新发布
FriendshipTang的博客
04-20 908
Python、PyTorch、人工智能、优化算法、梯度下降
非线性优化之牛顿(梯度)下降法、高斯牛顿法LM下降法
sinat_33829806的博客
10-29 1934
本质都是基于梯度下降法牛顿法: 依赖于Hessen矩阵非奇异,收敛较快 高斯 牛顿法:依赖二阶项的jacobian 解决了Hessen非奇异的问题,收敛相对慢 LM下降法:表现是使用一个因子拟合牛顿和高斯牛顿法#coding=utf-8 from numpy import * import sympydef Hessen(f,x,x_value): #行 列表示Hesse矩
【数学与算法】非线性最小二乘法的解法【最速梯度下降法】、【牛顿法】、【高斯牛顿法】、【LM算法
u011754972的博客
10-11 3300
关于非线性优化的问题,可以推荐观看视觉SLAM十四讲视频的第六讲 非线性优化。 如果不明白线性和非线性,可参考这篇博客:线性最小二乘和非线性最小二乘 下面这篇博客写的比较容易让人混淆,尤其是里面的拟合函数f(x)、与F(x)的说法,看懵我了,不推荐看: 非线性最小二乘求解方法详解 非线性最小二乘: 所谓非线性,就是f(x)无法表示为的线性关系,而是某种非线性关系。 这让求解导函数为零的问题变成了一个不断寻找下降增量 ∆xk 的问题。以下就是寻找增量的方法。 下面是对平方展开的: 一阶梯度法(梯度下降
关于梯度下降法牛顿法、高斯-牛顿、LM方法的总结
wuaini_1314的专栏
03-15 1万+
线性最小二乘问题,我们可以通过理论推导可以得到其解析解,但是对于非线性最小二乘问题,则需要依赖迭代优化的方法,。 梯度下降主要是从一阶目标函数的一阶导推导而来的,形象点说,就是每次朝着当前梯度最大的方向收敛;二牛顿法是二阶收敛,每次考虑收敛方向的时候,还会考虑下一次的收敛的方向是否是最大(也就是梯度的梯度)。可以参考下图: 红线为牛顿法,绿线为梯度下降。 高斯-牛顿和LM法则主要是针对非...
最优化算法的介绍及详细介绍
04-21
由于计算机的发展及一些相关领域的不断深入研究,综合评价方法得到了不断的发展和改进。而指标权重系数的确定方法作为综合评价中的重中之重,近几年来也取得了一些新的进展。
最优化算法——常见优化算法分类及总结
热门推荐
测试0901-1
04-07 2万+
之前做特征选择,实现过基于群智能算法进行最优化的搜索,看过一些群智能优化算法的论文,在此做一下总结。 最优化问题  在生活或者工作中存在各种各样的最优化问题,比如每个企业和个人都要考虑的一个问题“在一定成本下,如何使利润最大化”等。最优化方法是一种数学方法,它是研究在给定约束之下如何寻求某些因素(的量),以使某一(或某...
最优化算法
qq_39515621的博客
08-11 1827
最优化算法 1. 一元函数最优化算法 1.1 三分法 普通的三分法是比较常用的求一元函数最值的方法 以求函数 f(x)f(x)f(x) 的最小值为例,假设函数 f(x)f(x)f(x) 在区间 [a,b][a,b][a,b] 上先严格单调递减,后严格单调递增,那么可以通过迭代缩小最值点可能在的区间 [l,r][l,r][l,r] 令 l=a,r=bl=a,r=bl=a,r=b ml=2l+r3,...
数模算法-最优化理论三大经典算法:模拟退火法、神经网络、遗传算法
Dompink的博客
09-02 1万+
这十几年来最优化理论有了飞速发展,模拟退火法、神经网络、遗传算法这三类算法发展很快。 在数学建模竞赛中:比如97年A题的模拟退火算法,00年B题的神经网络分类算法,01年B题这种难题也可 以使用神经网络,还有美国竞赛89年A题也和 BP 算法有关系,当时是86年刚提出BP算法,89年就考了, 说明赛题可能是当今前沿科技的抽象体现。 03 年 B 题伽马刀问题也是目前研究的课题,目前算法最佳
最优化各种搜索算法系列
12-01
最优化算法包括黄金分割法,二次插值法,最速下降法,共轭梯度法,变步长法的C语言设计程序
最优化路径系统有三种算法
04-30
最短路径的算法设计,和整体系统设计,完整代码和数据库
LM 优化算法 Levenberg - Marquardt
10-04
C语言编写LM迭代算法+文档说明,是非线性优化处理很好的方法
蒙特卡罗算法最优化算法
04-20
、蒙特卡罗算法、动态规划、回溯搜索、分治算法、分支定界等计算机算法、、最优化理论三大经典算法等数学建模方法的计算原理和相关程序
牛顿法梯度下降法原理及Python编程应用
12-21
常见的最优化方法梯度下降法牛顿法和拟牛顿法、共轭梯度法等等,本文主要介绍牛顿法梯度下降法原理以及使用Python编程应用问题。 二、应用领域 使用牛顿法梯度下降法,在最优化算法所解决的问题中,有着很...
python使用梯度下降和牛顿法寻找Rosenbrock函数最小值实例
09-17
主要介绍了python使用梯度下降和牛顿法寻找Rosenbrock函数最小值实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
最速梯度下降法,matlab程序详细注解
10-13
最速梯度下降法,有详细的注释matlab程序 最速梯度下降法,有详细的注释matlab程序 最速梯度下降法,有详细的注释matlab程序 最速梯度下降法,有详细的注释matlab程序
最优化--梯度下降法--牛顿法
09-12
最优化是指在一定的约束条件下,寻找一个使目标函数取得最大值或最小值的过程。梯度下降法牛顿法都是最优化问题中常用的方法。梯度下降法是一种迭代优化算法,通过计算目标函数的梯度来不断更新参数的值,直到达到某个停止条件。梯度下降法的思想是沿着目标函数梯度的反方向进行参数调整,以逐步接近最优解。它适用于凸函数和可微函数,并且可以用于求解无约束优化问题和约束优化问题的局部最优解。 牛顿法也是一种迭代优化算法,它利用函数的二阶导数信息(Hessian矩阵)来逼近函数的局部性质,从而更快地收敛到最优解。牛顿法在求解方程根或函数的最小值时非常有效。它经常被用于数学建模、机器学习、数据分析等领域中的参数优化问题,比如最小二乘法、逻辑回归、神经网络等模型的参数优化。 需要注意的是,梯度下降法牛顿法在不同情况下的效果可能会有所不同。梯度下降法在参数空间中沿着梯度方向逐步搜索最优解,对于大规模数据集和高维参数空间比较适用。而牛顿法利用了更多的二阶导数信息,对于曲率较大的函数,在局部区域更容易找到最优解。但是牛顿法在计算复杂度和存储空间上可能会有一定的挑战。因此,在实际应用中,我们需要根据具体问题的特点选择合适的优化方法。

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 使用nuitka打包python代码为exe可执行程序 19858
  • 3Dunity游戏项目实战——第一人称射击游戏 9310
  • matlab对二进制(uint16)图像的读取和显示 8092
  • Scrapy ip代理无响应 7704
  • matlab最优化问题 7039

分类专栏

  • 笔记 28篇
  • 刷题 13篇
  • Error解决 5篇
  • 问题解决 5篇

最新评论

  • 使用nuitka打包python代码为exe可执行程序

    javamasterlzb: FATAL: Error, unknown plug-in 'qt-plugins' referenced.,请问大佬这是什么情况呢

  • 使用nuitka打包python代码为exe可执行程序

    javamasterlzb: 请问需要先自己将其他的py文件放在need里面吗,还是运行之后它自己会放

  • 基于线特征的图像配准

    ha_lee: 特征提取了之后,经过空间变化把特征对齐就配准好了

  • 基于线特征的图像配准

    杰酱: 说好的配准呢,好像没得欸

  • 3Dunity游戏项目实战——第一人称射击游戏

    2401_82835184: 打一枪才扣一滴血,你改一下代码就行了

您愿意向朋友推荐“博客详情页”吗?

  • 强烈不推荐
  • 不推荐
  • 一般般
  • 推荐
  • 强烈推荐
提交

最新文章

  • java八股文补充
  • 《Image Registration Techniques: A Survey》论文解读
  • 《Multi-modal and Multi-spectral Registration for Natural Images》论文解读
2023年13篇
2022年29篇
2021年11篇
2020年6篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值

PHP网站源码黔东南营销网站价格天门网站推广方案报价开封百度竞价包年推广多少钱金华网站改版报价新乡外贸网站制作推荐迪庆网页设计多少钱垦利关键词排名公司文山建网站多少钱丹竹头英文网站建设价格保定建站多少钱鹤壁优化推荐宜昌SEO按天计费哪家好云浮外贸网站设计推荐福州百度竞价包年推广多少钱文山如何制作网站价格安康百度爱采购公司赤峰百度网站优化价格乌海百搜标王多少钱商丘SEO按效果付费推荐那曲高端网站设计价格日照网络广告推广推荐保定百度爱采购孝感网页制作榆林百姓网标王推广多少钱海口品牌网站设计河源网站开发推荐达州SEO按天计费公司大庆高端网站设计价格威海网站设计多少钱同乐百度seo哪家好歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化