常用优化算法介绍

158 篇文章 24 订阅
订阅专栏

作者:Walker

在机器学习的世界中,通常我们会发现有很多问题并没有最优的解,或是要计算出最优的解要花费很大的计算量,面对这类问题一般的做法是利用迭代的思想尽可能的逼近问题的最优解。我们把解决此类优化问题的方法叫做优化算法,优化算法本质上是一种数学方法,常见的优化算法包括梯度下降法、牛顿法、Momentum、Nesterov Momentum、Adagrad、Adam等。其实大部分机器学习算法的本质都是建立优化模型,通过优化算法对损失函数(优化的目标函数)进行优化,从而训练出最好的模型。

(1)梯度下降法:
梯度下降法是最常用的一种优化算法。其核心思想是:在当前位置寻找梯度下降最快的方向,来逐渐逼近优化的目标函数。且离目标函数越近,逼近的“步伐”也就越小。梯度下降法本质是一种迭代方法,常用于机器学习算法的模型参数求解。其示意图如下图1所示:

图1梯度下降法

梯度下降法的更新公式为:

其中α为梯度上每次逼近的步长,前边的“-”表示搜索方向为负梯度的方向,L我损失函数。算法更新终止的条件是梯度向量接近于0即可。此外需要特别注意的是,梯度下降法不一定能够找到全局的最优解,很有可能找到的是一个局部最优解。

(2)梯度下降法的变式

通常基于梯度的下降方法又有很多变式,我们主要为大家介绍:随机梯度下降法(SDG)、Momentum、Nesterov Momentum、Adagrad、Adam。

随机梯度下降法是每次使用一批数据进行梯度的计算,而非计算全部数据的梯度,因为如果每次计算全部数据的梯度,会导致运算量加大,运算时间变长,容易陷入局部最优解,而随机梯度下降可能每次不是朝着真正最小的方向,这样反而可以跳出局部的最优解。

Momentum是在随机梯度下降法的基础上,增加了动量(Momentum)的技术。其核心是通过优化相关方向的训练和弱化无关方向的振荡,来加速SGD训练。Momentum的方法能够在一定程度上缓解随机梯度下降法收敛不稳定的问题,并且有一定的摆脱陷入局部最优解的能力。

Nesterov Momentum是基于Momentum的加速算法,相比于传统的动量算法,最大的优化是计算经过动量更新之后的位置梯度。

Adagrad即adaptive gradient,是一种自适应学习率的梯度法。它通过记录并调整每次迭代过程中的前进方向和距离,使得针对不同问题都有一套自适应学习率的方法。Adagrad最大的优势是不需要手动来调整学习率,但与此同时会降低学习率。

Adam即Adaptive Moment Estimation,是能够自适应时刻的估计方法,能够针对每个参数,计算自适应学习率。这是一种综合性的优化方法,在机器学习实际训练中,往往能够取得不错的效果。

(3)牛顿法和拟牛顿法

与上述梯度类型的优化算法最大的不同是,牛顿法是一种二阶收敛算法,所以它的收敛速度相较于一阶算法会更快。牛顿法二阶的意义在于它不仅会沿着梯度最大的方向下降,还会考虑走的下一步坡度是不是也很大,它能够以较远的目光全局的逼近目标函数。其算法的具体步骤为:

1.首先选择接近于函数f(x)的零点x0,并计算f(x0)处的斜率f’(x0)。然后我们求解以下方程,得到比刚刚的x0更加准确的解x1。

2.接下来我们利用x1进行下一轮的迭代,迭代公式如下所示。这样经过反复的迭代过程,我们便能取得函数f(x)的最优解。

牛顿法的迭代示意图如下所示:

图2 牛顿法

虽然牛顿法相较于梯度下降法等优化算法收敛速度更快,但每一步都需要求解复杂的Hessian矩阵,计算非常不易。所以后来美国Argonne国家实验室的物理学家W.C.Davidon又针对牛顿法计算复杂的缺陷提出了拟牛顿法。它的核心思想是使用正定矩阵来近似Hessian矩阵的逆,从而简化了运算的复杂。另外,因为拟牛顿法不需要二阶导数的信息,所以现在拟牛顿法在机器学习实际问题中应用更加的广泛。

【总结】:除了以上几类较为常见的优化算法以外,还有共轭梯度法、启发式优化算法等。在实际的机器学习问题中,往往需要具体问题具体分析,根据每类优化问题的特征,选择合适的优化算法。

各类优化算法综述
weixin_42937161的博客
03-22 7170
目录 优化算法综述 数学规划法 精确算法(exact algorithm) 启发式 VS. 元启发式 启发式算法 元启发式算法 What is the difference between heuristics and meta-heuristics? 多目标智能优化算法 模拟进化算法与传统的精确算法(确定性算法)的区别 优化算法分类 算法介绍 帝国竞争算法(Imperialist Competitive Algorithm,ICA) 分支定界法(Branch and Bound, BB) NSGA-Ⅱ算法
优化算法测试函数MATLAB代码完整版
07-22
在MATLAB环境中,优化算法是解决最优化问题的关键工具,如最小化或最大化目标函数,寻找参数的最佳配置等。这个“优化算法测试函数MATLAB代码完整版”压缩包提供了全面的资源,包括代码、数据以及算法的详细描述,...
结合白鲸优化算法和NSGAII算法实现了多目标白鲸优化算法
09-02
本资源使用matlab实现多目标白鲸优化算法,能够解决无约束条件和有约束条件的多目标优化问题。
五种多目标优化算法(MOFA、NSWOA、MOJS、MOAHA、MOPSO)性能对比(提供MATLAB代码)
IT猿手
02-25 5498
多目标优化算法是用于解决具有多个目标函数的优化问题的一类算法。其求解流程通常包括以下几个步骤:1. 定义问题:首先需要明确问题的目标函数和约束条件。多目标优化问题通常涉及多个目标函数,这些目标函数可能存在冲突,需要在不同目标之间进行权衡。2. 生成初始解集:通过随机生成或者其他混沌映射生成一组初始解集。这些初始解集通常是在可行解空间内随机分布的。3. 评估解集:对初始解集中的每个解进行评估,计算其在各个目标函数上的值。这些值可以用来衡量解的优劣程度。
程序员学长 | 超强!六大优化算法全总结
最新发布
csdn_xmj的博客
08-09 1217
今天我们将详细讨论一下用于训练神经网络(深度学习模型)时使用的一些常见优化技术(优化器)。
常见的优化算法
one_super_doer的博客
08-15 7403
1. 常见的优化算法 1.1 梯度下降算法(batch gradient descent BGD) 每次迭代都需要把所有样本都送入,这样的好处是每次迭代都顾及了全部的样本,做的是全局最优化。 缺点:要放入全部样本,速度慢 1.2 随机梯度下降(Stochastic gradient descent SGD) 针对梯度下降算法训练速度过慢的缺点,随机梯度下降是从样本中随机抽出一组,训练后按梯度更新一次,然后再抽取一组,再更新一次,在样本量极其大的情况下,可能不用训练完所有的样本就可以获得一个损失值在可接受范围
【常见的优化算法介绍
W1530的博客
02-04 6276
常见的优化算法介绍 1. 批量梯度下降算法(batch gradient descent BGD) 每次迭代都需要把所有样本都送入,这样的好处是每次迭代都顾及了全部的样本,做的是全局最优化,但是有可能达到局部最优。 2. 随机梯度下降算法(Stochastic gradient descent SGD) 针对梯度下降算法训练速度过慢的缺点,提出了随机梯度下降算法,随机梯度下降算法算法是从样本中随机抽出一组,训练后按梯度更新一次,然后再抽取一组,再更新一次,在样本量及其大的情况下,可能不用训练完所有的样本就可
常用优化算法
rexyang97的博客
08-02 970
当我们使用机器学习的时候,最开始都是初始化一组参数,然后不断优化迭代,得到最终的结果。所以优化算法也是机器学习中很重要的一个组成部分。 我们之前提到过的梯度下降法,牛顿法这些便是很经典的优化方法。 SGD 首先是stochastic Gradient Descent,随机梯度下降,简称SGD。每次选择一个mini-batch,而不是全部样本,使用梯度下降来更新模型参数。SGD最大的缺点是下降速度慢,而且可能会在沟壑的两边持续震荡,停留在一个局部最优点。 框架 基本上所有的优化算法都有一个固定的框架
5种优化算法EDA(含数据包络分析)
10-01
优化模型EDA在处理大数据时应用很广,这里有5种包含数据包络分析在内的优化算法
果蝇优化算法_果蝇优化算法_基于简单果蝇_果蝇优化_matlab_
10-02
下面将详细介绍果蝇优化算法的基本原理、实现过程以及在MATLAB中的应用。 一、果蝇优化算法基本原理 1. 初始化:算法开始时,随机生成一定数量的果蝇位置,这些位置作为初始解,代表潜在的最优解。 2. 规则模拟:...
普通多目标优化算法代码_多目标优化_普通多目标优化算法代码_
10-01
本文档提供的代码案例是针对多目标优化问题的实现,可能包括了如Pareto优化、Nondominated Sorting Genetic Algorithm (NSGA)系列、Particle Swarm Optimization (PSO)的变种等常见的多目标优化算法。这些算法通过...
白鲸优化算法Beluga whale optimization源代码及原文
06-10
3. **Matlab实现**:Matlab是一种广泛使用的数学计算软件,也是实现优化算法常用平台。BWOA的Matlab源代码可以帮助用户理解算法的工作原理,并方便地将其应用于实际问题中。代码通常包含初始化步骤、迭代过程和...
优化算法
优化算法
08-25 818
优化算法 转自:https://zhuanlan.zhihu.com/p/32230623 主要框架 待优化参数: www 目标函数: f(x)f(x)f(x) 初始学习率: αα\alpha 而后,开始进行迭代优化。 在每个epoch t: 计算目标函数关于当前参数的梯度: gt=∇f(wt)gt=∇f(w...
优化算法总结
贾慧玉的博客
07-25 333
机器学习模型优化常用优化算法总结
多目标优化算法_多目标优化算法介绍工具箱
09-04
多目标优化算法是一类用于解决多目标优化问题的算法。在多目标优化问题中,我们需要同时优化多个目标函数,而这些目标函数通常是矛盾的,不能简单地将它们转换为一个单一的目标函数来优化。因此,传统的单目标优化算法无法直接应用于多目标优化问题。 多目标优化算法的目标是找到一组解集,这些解集中的每个解都是不可被改进的(称为非劣解或帕累托最优解)。这些解集通常构成了一个帕累托前沿(Pareto frontier),它表示了在给定约束条件下所有可能的最优解。 常见的多目标优化算法包括遗传算法(Genetic Algorithm)、粒子群优化算法(Particle Swarm Optimization)、模拟退火算法(Simulated Annealing)、蚁群算法(Ant Colony Optimization)等等。 这些算法可以通过使用不同的启发式搜索策略和优化技术来寻找近似帕累托前沿的解集。它们通常基于评估和比较解集中的解的目标函数值来进行搜索和优化。 关于多目标优化算法介绍和工具箱,你可以参考CSDN上的相关文章和开源工具。CSDN上有很多关于多目标优化算法的教程和实现代码,可以帮助你更好地了解和使用这些算法。
写文章

热门文章

  • 八种样本抽样方法介绍 81910
  • 使用Keras进行深度学习:(六)LSTM和双向LSTM讲解及实践 66811
  • 干货 | 史上最全中文分词工具整理 52646
  • 常用优化算法介绍 51381
  • 深度学习发展史 34610

分类专栏

  • 计算机视觉 1篇
  • OpenCV-Python 51篇
  • 资源干货 1篇
  • Tensorflow系列
  • TensorFlow 93篇
  • facebook 11篇
  • nlp 27篇
  • PyTorch 8篇
  • keras 17篇
  • 人脸识别 9篇
  • 人工智能-神经网络算法 23篇
  • 机器学习 158篇
  • 人工智能 62篇
  • dapp 1篇
  • GAN 1篇

最新评论

  • 用PyTorch实现图像聚类

    普通网友: 能不能教一下怎么新训练?

  • 最便捷的神经网络可视化工具之一--Flashtorch

    椒盐玛奇朵: flashtorch.utils里面没有visualize函数,请问该如如何解决?

  • 新手必备 | 史上最全的PyTorch学习资源汇总

    q-类星体: 我试用了autodl,inscode和炼丹侠的服务器产品,其中炼丹侠的服务器算是相当不错的,炼丹侠的算力市场上架了大批量的A100,和其他几个产品相比这个平台的服务器质量是比较高的,而且价格也不贵,和autodl价格相仿,当前处于内测阶段,免费试用,之后还能薅羊毛,还没服务器的铁子们赶快入手了

  • PyTorch:Bi-LSTM的文本生成

    quzw: https://cloud.tencent.com/developer/article/1759341?from=15425 相同内容,无需付费

  • 使用NLP检测和对抗AI生成的假新闻

    羰陽: 辣鸡网站,转载文章还要会员,我直接去看原文了

最新文章

  • LightGBM 中文文档
  • Numpy的终极备忘录
  • 监督学习和kNN分类初学者教程
2021年1篇
2020年403篇
2019年259篇
2018年109篇
2017年60篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

天下网标王海阳功能性网站优化江苏网站优化推广方案绵阳网站搜索引擎优化河北不坑的外贸网站优化策划深圳seo网站关键词优化技巧诸城网站优化培训泰安网站优化铭盛信息黑龙江网站优化价格表娄底模板网站优化公司潮州网站优化有哪些如何优化网站样板文字网站内部结构优化内容鄱阳seo网站优化株洲网站排名优化遵义网站优化在线咨询眉山网站排名优化河南seo网站优化方法静安网站优化价格唐山商城网站优化宜昌服务好的网站优化方法惠州外贸网站关键词优化费用河源受欢迎的免费网站优化增城seo网站排名优化软件某网站搜索引擎优化概述宁波网站seo优化推广费用传媒网站优化哪家好巴青网站优化网站上线后怎么优化东城区网站seo优化排名php 怎么样优化网站香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化