0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

介绍机器学习中常用的三种优化算法

汽车玩家 来源:人工智能遇见磐创 作者:Walker 2020-05-04 18:19 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文主要介绍了常用的一些机器学习中常用的优化算法

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

(1)梯度下降法

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

图1梯度下降法

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

介绍机器学习中常用的三种优化算法

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

(2)梯度下降法的变式

通常基于梯度的下降方法又有很多变式,我们主要为大家介绍:随机梯度下降法(SGD), 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矩阵的逆,从而简化了运算的复杂。另外,因为拟牛顿法不需要二阶导数的信息,所以现在拟牛顿法在机器学习实际问题中应用更加的广泛。

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

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 算法
    +关注

    关注

    23

    文章

    4816

    浏览量

    98811
  • 机器学习
    +关注

    关注

    67

    文章

    8570

    浏览量

    137427
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    一篇讲清楚 Claude 的三种使用模式:Chat、Cowork、Code 到底有啥区别?

    一篇讲清楚 Claude 的三种使用模式:Chat、Cowork、Code 到底有啥区别? 很多人第一次接触 Claude 时都会困惑:claude.ai 是网页版聊天,Claude Code
    的头像 发表于 05-18 11:59 148次阅读

    ATE系统中这三种测量卡的架构和功能

    或电流测量卡(V/I 卡)、引脚电子卡(PE 卡)和器件电源卡(DPS 卡)。本篇重点介绍 ATE 系统中这三种卡的架构和功能。
    的头像 发表于 04-09 15:12 285次阅读
    ATE系统中这<b class='flag-5'>三种</b>测量卡的架构和功能

    机器学习特征工程:缩放、编码、聚合、嵌入与自动化

    取值范围仅0到1的列。常用三种缩放器各有适用场景:StandardScaler适合近似正态分布的数据,也是最常见的选择;MinMaxScaler将值压缩到0和1
    的头像 发表于 04-08 14:41 812次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>特征工程:缩放、编码、聚合、嵌入与自动化

    算法工程师需要具备哪些技能?

    算法工程师需要掌握一系列跨学科的技能,涵盖数学基础、编程能力、算法理论、工程实践以及业务理解等多个方面。 以下是具体技能及学习建议: 线性代数核心内容:矩阵运算、特征值分解、向量空间等。应用场
    发表于 02-27 10:53

    请问CW32芯片的三种工作模式是什么?

    CW32芯片的三种工作模式是什么?
    发表于 12-26 06:48

    单片机开发中常用三种软件架构介绍

    消息的显示} 4.事件驱动架构事件驱动架构是一编程范式,其中程序的执行流程由事件(如用户输入、传感器变化、定时器到期等)触发。 在单片机开发中,事件驱动架构通常用于响应外部硬件中断或软件中断。 以下
    发表于 11-26 08:05

    8常用的CRC算法分享

    CRC 计算单元可按所选择的算法和参数配置来生成数据流的 CRC 码。有些应用中,可利用 CRC 技术来验证数据的传输和存储的完整性。 8 常用的 CRC 算法,包括: CRC16_
    发表于 11-13 07:25

    量子机器学习入门:三种数据编码方法对比与应用

    在传统机器学习中数据编码确实相对直观:独热编码处理类别变量,标准化调整数值范围,然后直接输入模型训练。整个过程更像是数据清洗,而非核心算法组件。量子机器
    的头像 发表于 09-15 10:27 1073次阅读
    量子<b class='flag-5'>机器</b><b class='flag-5'>学习</b>入门:<b class='flag-5'>三种</b>数据编码方法对比与应用

    AI 驱动维逆向:点云降噪算法工具与机器学习建模能力的前沿应用

    维逆向工程领域,传统方法在处理复杂数据和构建高精度模型时面临诸多挑战。随着人工智能(AI)技术的发展,点云降噪算法工具与机器学习建模能力的应用,为
    的头像 发表于 08-20 10:00 937次阅读
    AI 驱动<b class='flag-5'>三</b>维逆向:点云降噪<b class='flag-5'>算法</b>工具与<b class='flag-5'>机器</b><b class='flag-5'>学习</b>建模能力的前沿应用

    三种SPWM波形生成算法的分析与实现

    摘要:变频技术作为现代电力电子的核心技术,集现代电子、信息和智能技术于一体。而SPW(正弦波脉宽调制)波的产生和控制则是变频技术的核心之一。本文对SPI波形生成的三种算法-对称规则采样法、不对称规则
    发表于 07-31 13:34

    FPGA在机器学习中的具体应用

    ,越来越多地被应用于机器学习任务中。本文将探讨 FPGA 在机器学习中的应用,特别是在加速神经网络推理、优化
    的头像 发表于 07-16 15:34 3180次阅读

    MEMS中的三种测温方式

    在集成MEMS芯片的环境温度测量领域,热阻、热电堆和PN结原理是三种主流技术。热阻是利用热敏电阻,如金属铂或注入硅的温度电阻系数恒定,即电阻随温度线性变化的特性测温,电阻变化直接对应绝对温度,需恒流源供电。
    的头像 发表于 07-16 13:58 2040次阅读
    MEMS中的<b class='flag-5'>三种</b>测温方式

    开关电源三种控制模式:PWM/PFM/PSM

    摘要 本文详细介绍了开关电源的三种主要调制方式:PWM(脉冲宽度调制)、PFM(脉冲频率调制)和PSM(脉冲跨周期调制)。PWM通过调整脉冲宽度保持恒定频率,适用于重负载,但轻负载效率低。PFM则在
    发表于 06-09 16:11

    HarmonyOS基础组件:Button三种类型的使用

    中的Button相较于Android原生来说,功能比较丰富,扩展性高,减少了开发者的代码数量,简化了使用方式。不仅可以自定义圆角还支持三种样式。 常用属性 名称 参数类型 描述 type
    的头像 发表于 06-09 15:48 2764次阅读
    HarmonyOS基础组件:Button<b class='flag-5'>三种</b>类型的使用

    介绍三种常见的MySQL高可用方案

    在生产环境中,为了确保数据库系统的连续可用性、降低故障恢复时间以及实现业务的无缝切换,高可用(High Availability, HA)方案至关重要。本文将详细介绍三种常见的 MySQL 高可用
    的头像 发表于 05-28 17:16 1524次阅读