网站建设找哪家好/南宁网站建设公司排行

网站建设找哪家好,南宁网站建设公司排行,wordpress小蜜蜂,做外贸翻译用哪个网站常见的优化器 梯度下降(Gradient Descent, GD)局部最小值、全局最小值和鞍点凸函数和非凸函数动量梯度下降(Momentum)自适应学习率优化器AdaGrad(Adaptive Gradient Algorithm)​RMSProp(Root M…

常见的优化器

  • 梯度下降(Gradient Descent, GD)
  • 局部最小值、全局最小值和鞍点
  • 凸函数和非凸函数
  • 动量梯度下降(Momentum)
  • 自适应学习率优化器
    • AdaGrad(Adaptive Gradient Algorithm)​
    • RMSProp(Root Mean Square Propagation)​
    • ​Adam(Adaptive Moment Estimation)​
    • AdamW(Adam with Weight Decay)

在机器学习和深度学习中,优化器用于调整模型参数以最小化损失函数,是训练模型的关键组件。以下是一些常见的优化器:

梯度下降(Gradient Descent, GD)

梯度下降是最基础的优化算法,核心思想是:沿着损失函数梯度的反方向更新参数,即参数的更新方向是损失函数梯度的负方向。(梯度解释:【AI知识】导数,偏导,梯度的解释),梯度下降的公式为:

学习率解释: 表示模型参数更新的步长大小,控制着迭代过程中参数沿着梯度方向调整的幅度。

  • 较大的学习率可以加快收敛速度,但可能导致参数更新过大,错过最优解甚至发散(模型发散是指在数值计算或优化过程中,模型的解或参数随着迭代次数的增加变得不稳定,甚至趋向于无穷大,导致计算结果失去物理意义或无法收敛到预期值)
  • 较小的学习率虽然更新稳定,但收敛速度慢,可能需要更多的训练时间

梯度下降有以下几个变种:

  • 批量梯度下降(Batch Gradient Descent, BGD):使用整个训练数据计算梯度,更新参数。收敛稳定,但计算开销大,每次迭代都需要遍历整个数据集,不适合处理超大规模数据集

  • 随机梯度下降(Stochastic Gradient Descent, SGD):每次迭代随机选择一个训练样本计算梯度,并更新模型参数,计算效率高但收敛不稳定(由于每次更新的方向不同,参数更新过程会有较大波动,可能无法很好地收敛到最优点)

  • 小批量梯度下降(Mini-Batch Gradient Descent):在 BGD 和 SGD 之间折中,每次使用一个小批量(一般大小为 32、64、128 等)样本计算梯度。
    1)相比于 BGD,每次更新的计算量更少,适合大规模数据。
    2)相比于SGD,梯度更新不会剧烈震荡,收敛更平稳。
    3)小批量计算可以并行处理,提高计算效率。
    4)但批量大小(Batch Size)影响训练效果,太大会导致模型训练慢,太小会导致震荡。

局部最小值、全局最小值和鞍点

1. 局部最小值: 是指函数在某个邻域内取得的最小值。局部最小值只是在某个局部范围内最小,不一定是整个函数的最小值(全局最小值)。如果函数可微分,在局部最小值点处,梯度通常为零。

2. 全局最小值: 是指函数在整个定义域内取得的最小值。全局最小值点可能不存在(例如,函数无下界),也可能不唯一(例如,常数函数)。

3.鞍点: 鞍点是指函数在某个点处梯度为零,但该点既不是局部最小值也不是局部最大值。(可以通过 Hessian 矩阵来判断一个点是否为鞍点,我也不懂T T )

鞍点在某些方向上是局部最小值,而在另一些方向上是局部最大值。

在优化问题中,鞍点通常是一个挑战,因为梯度下降算法可能会在鞍点处停滞

凸函数和非凸函数

在数学优化和机器学习中,函数的**凸性(Convexity)**是一个非常重要的概念,凸函数和非凸函数在函数形状和优化性质上有显著区别,它直接影响梯度下降算法的收敛性和是否能找到全局最优解。

1. 凸函数(Convex Function): 函数的任意两个点连成的直线,不会低于函数曲线(即函数曲线在直线的下方或重合)。

此图参考自:凸函数与非凸函数

特征:

  • 单峰(一个最低点),类似于碗的形状(开口向上)
  • 任意局部最优解都是全局最优解
  • 在优化问题中,凸函数通常更容易求解,因为其优化过程具有唯一性和稳定性,使用梯度下降算法能保证找到最优解

2. 非凸函数(Non-Convex Function): 如果一个函数不满足凸函数的定义,即为非凸函数。

特征:

  • 多峰(多个局部最小值),类似于山谷或波浪形状
  • 可能存在多个局部最优点,优化过程中可能会卡在局部最优而非全局最优
  • 优化复杂,需要动量、学习率调整等策略避免陷入局部最优

由上可知,非凸函数优化问题是比较难的,其中局部最小值和鞍点可能会阻碍优化算法找到全局最小值,接下来介绍一些别的优化器算法:

动量梯度下降(Momentum)

动量梯度下降(Momentum Gradient Descent)是一种优化梯度下降的方法,它在参数更新时加入 动量(Momentum) 的概念,使得优化过程更平滑、更快,并能够有效跳过鞍点和局部最优。

梯度下降的问题:

  • 收敛速度慢: 在椭圆形的损失函数里(损失函数在不同方向上的曲率相差很大,在某些方向上变化很快,在另一些方向上变化很慢),梯度下降的方向会不断震荡,导致收敛速度慢

  • 容易陷入局部最优: 在非凸优化问题中,梯度下降可能会卡在局部最优,难以继续下降到更优解

  • 鞍点问题: 在高维空间,梯度在某些方向上很小(如鞍点),优化可能会停滞

什么是动量: 模拟物理中的惯性现象,在优化过程中,不仅考虑当前的梯度的方向,还会保留一部分之前梯度的方向,这被称为“动量”,可利用过去梯度的累积信息来平滑当前更新方向,帮助梯度下降更快地收敛,并减少在某些方向上的震荡。

动量梯度下降的更新规则:

其中 β \beta β是动量因子,用于控制历史梯度的影响程度, β = 0 \beta=0 β=0相当于普通梯度下降(没有动量), β = 0.9 \beta=0.9 β=0.9是一般情况下的推荐值,更新较平滑。

优点:

  • 加入“惯性”,类似于物体运动,之前的梯度会影响当前的梯度,在梯度方向变化时减少震荡,使得优化路径更稳定
  • 在鞍点处不会停滞,因为动量会推动参数继续前进,使得参数能突破局部最优点

缺点:

  • 需要调参:动量因子 β 和学习率 α 需要精心调节,否则可能影响收敛效果
  • 可能错过最优解:由于惯性,动量法可能冲过局部最优解或全局最优解

自适应学习率优化器

这类优化器能根据梯度信息动态调整学习率,提高收敛速度,并避免学习率过大或过小导致的训练问题。

AdaGrad(Adaptive Gradient Algorithm)​

AdaGrad通过累积所有梯度的平方来调整学习率。对于每个参数,学习率会根据其历史梯度的大小进行调整,使得频繁出现较大梯度的参数具有较小的学习率,而梯度较小的参数具有较大的学习率。

​优点: 适合处理稀疏数据,对低频参数更新较大,对高频参数更新较小

​缺点: 随着训练进行,累积梯度平方会越来越大,导致学习率逐渐减小,可能使训练过程变得非常缓慢

RMSProp(Root Mean Square Propagation)​

RMSProp通过计算梯度的指数衰减平均来调整学习率,解决了AdaGrad学习率过快减小的问题,它使用一个衰减率(通常表示为 ρ)来控制历史梯度的影响。

优点: 缓解了AdaGrad学习率过快减小的问题,适合处理非平稳目标和有噪声的梯度。

​缺点: 需要手动调整衰减率参数

​Adam(Adaptive Moment Estimation)​

Adam结合了动量法和RMSProp的优点。它不仅考虑了梯度的一阶矩(即动量),还考虑了梯度的二阶矩(即梯度平方的指数移动平均)。通过这两个矩的估计,Adam能够更有效地调整学习率。

优点: 结合了动量和自适应学习率的优点,收敛速度快,性能好

​缺点: 初始学习率可能过高,导致模型发散

AdamW(Adam with Weight Decay)

AdamW 是 Adam 优化器的一个改进版本,全称为 ​Adam with Weight Decay。它通过将权重衰减(Weight Decay)与梯度更新过程解耦,解决了传统 Adam 优化器中权重衰减与自适应学习率机制之间的冲突问题,从而提升了模型训练的稳定性和泛化性能。

1. 这里先介绍一下什么是权重衰减?

权重衰减(Weight Decay)是 一种正则化技术,主要作用如下:

  • 防止过拟合:减少模型复杂度,避免学习到过拟合的参数。
  • 稳定训练:通过逐步缩小权重,使模型收敛更稳定。
  • 提高泛化能力:让模型在测试集上表现更好。

在优化过程中,权重衰减会在每次参数更新时,对模型的权重施加一个额外的惩罚,使模型参数(权重)逐渐缩小,从而控制模型的复杂度。权重衰减通常是通过 L2 正则化 实现的,即在损失函数中加入 权重的平方和 作为惩罚项:

2. Adam中的权重衰减有什么问题?

传统 Adam 将权重衰减(L2 正则化项)直接添加到损失函数中,导致权重衰减与梯度更新耦合。由于 Adam 的自适应学习率机制,这种耦合会导致权重衰减的实际效果被学习率缩放,降低正则化效果

3. AdamW如何改进?

AdamW 将权重衰减从损失函数中解耦,直接在参数更新步骤中独立应用权重衰减,解决了 Adam 的错误 L2 正则化问题,避免了自适应学习率对权重衰减的干扰

4. 为什么 AdamW 更适合深度学习?

  • 减少 L2 正则化的梯度缩放影响:在大规模深度学习模型(如 BERT、GPT、ResNet)中,Adam 的 L2 正则化可能会导致模型的某些层参数衰减过快或过慢。 AdamW 使权重衰减独立于梯度计算,提高训练稳定性。

  • 更快收敛:由于 AdamW 避免了 L2 正则化的错误影响,使优化器能更快找到最优解。

  • 更好的泛化能力:AdamW 在训练过程中对参数进行正确的权重衰减,减少过拟合,提高泛化能力。

总结: AdamW 通过改进权重衰减的方式,提升了模型的正则化效果和训练稳定性,是当前深度学习中的重要优化器之一

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/73831.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

1.5.5 掌握Scala内建控制结构 - 异常处理

本次实战聚焦于Scala内建控制结构中的异常处理机制。通过具体案例演示了如何使用try-catch-finally结构来处理程序运行中可能出现的异常情况。在try块中调用可能抛出异常的方法,catch块则根据不同异常类型进行捕获并处理,finally块则无论是否发生异常都会…

齿轮热处理学习笔记分享

对于一个做冷加工的人来说,热处理是一个神秘的话题,但是一点都不去了解的话,工作也无法进行。所以抽点时间来学习一下齿轮热处理相关的内容,做成笔记分享给爱学习的小伙伴们,文章较长,需要一些耐心去阅读&a…

Linux中vscode编程,小白入门喂饭级教程

确保Ubuntu联网 因为后面安装VScode需要从互联网下载。 安装GCC 在桌面空白处右键->打开终端 执行命令:gcc -v 在最后一行可以看到gcc version 7.5.0 如果提示Command ‘gcc’ not found,就查一下如何安装gcc,先把gcc安装好。 安装VS…

蓝桥杯真题——洛谷Day13 找规律(修建灌木)、字符串(乘法表)、队列(球票)

目录 找规律 P8781 [蓝桥杯 2022 省 B] 修剪灌木 字符串 P8723 [蓝桥杯 2020 省 AB3] 乘法表 队列 P8641 [蓝桥杯 2016 国 C] 赢球票 找规律 P8781 [蓝桥杯 2022 省 B] 修剪灌木 思路:对某个特定的点来说有向前和向后的情况,即有向前再返回到该位置…

matrix-breakout-2-morpheus 靶机----练习攻略 【仅获取shell】

【此练习仅做到反弹shell】 1.靶机下载地址 https://download.vulnhub.com/matrix-breakout/matrix-breakout-2-morpheus.ova 2. 打开靶机,kali使用nmap扫描同C段的主机 找到靶机ip 确保靶机和kali网卡均为NAT模式 先查看kali的ip nmap 192.168.182.1/24 …

Flutter中Align的使用说明

又失业了,作为一个高龄Android程序员今年找工作真难呀。现在Flutter是必需技能了,所以最近在自学。所用书籍叫《Flutter实战》,如下 如今已看了100多页,发现这本书写得……有点赶吧,好几处讲得不清不楚,而关…

用ASCII字符转化图片

代码 from PIL import Image# 定义 ASCII 字符集,从最暗到最亮 ASCII_CHARS "%#*-:. "def resize_image(image, new_width100):width, height image.sizeratio height / widthnew_height int(new_width * ratio)resized_image image.resize((new_wi…

详解Sympy:符号计算利器

Sympy是一个专注于符号数学计算的数学工具,使得用户可以轻松地进行复杂的符号运算,如求解方程、求导数、积分、级数展开、矩阵运算等。其中比较流行的深度学习框架pytorch的用到了Sympy,主要用于将模型的计算图转换为符号化表达式,以便进行分…

高频SQL 50 题(持续更新)

SQL的编写与运用 0. 写在前面 最近学习了数据库系统概论,其中涉及到了关于SQL语句的编写,感觉理论知识不足以让我掌握相关的编写方式,因此选择刷力扣上的题目进行复习巩固。 时间不是很多,可能不会经常更新,有时间写…

Unity插件-适用于画面传输的FMETP STREAM使用方法(三)基础使用

目录 一、插件介绍 二、组件介绍 三、Game View Streaming 1、使用 FM Network UDP 的基本设置 Server Scene Client Scene 2、使用使用 FM WebSocket 的基本设置 四、Audio Streaming 五、Microphone Streaming 一、插件介绍 ​​​​​​Unity插件-适用于画面传输的…

UI设计中的加载动画:优化用户体验的细节

hello宝子们...我们是艾斯视觉擅长ui设计和前端数字孪生、大数据、三维建模、三维动画10年经验!希望我的分享能帮助到您!如需帮助可以评论关注私信我们一起探讨!致敬感谢感恩! 在数字产品泛滥的今天,用户对体验的要求早已超越功能本身。一个看似简单的加载动画&…

SpringBoot3+Vue3实战(Vue3快速开发登录注册页面并对接后端接口)(4)

目录 一、SpringBoot3Vue3实现基本增删改查。前后端通信交互、配置后端跨域请求。数据批量删除。(博客链接) 二、SpringBoot3Vue3快速开发登录、注册页面并实现对接。 &#xff08;1&#xff09;操作数据表employee(员工信息表)。 <1>修改employee表的字段组成。 <2&g…

Excel(函数篇):IF函数、FREQUNCY函数、截取函数、文本处理函数、日期函数、常用函数详解

目录 IF函数等于判断区间判断与AND函数、OR函数一同使用IFNA函数和IFERROR函数 FREQUNCY函数、分断统计LEFT、RIGHT、MID截取函数FIND函数、LEN函数SUBSTITUTE函数ASC函数、WIDECHAR函数实战&#xff1a;如何获取到表中所有工作簿名称文本处理函数TEXT函数TEXTJOIN函数 日期函数…

生成PDF文件:从html2canvas和jsPdf渲染到Puppeteer矢量图

刚刚实现而已&#xff1a;第一次明白&#xff0c;双击或file:///打开html文件&#xff0c;居然和从localhost:3000打开同一个html文件有本质的区别。 字体居然还能以Base64代码嵌入到网页&#xff0c;只是太大太笨。 需要安装node.js&#xff0c;npm安装更多依赖&#xff1a;…

Modbus TCP到RTU:轻松转换指南!

Modbus TCP 到 RTU&#xff1a;轻松转换指南&#xff01; 在现代工业自动化领域&#xff0c;Modbus TCP和Modbus RTU两种通信协议因其高效、稳定的特点被广泛应用。然而&#xff0c;随着技术的发展和设备升级的需求&#xff0c;经常会遇到需要将这两种协议进行互相转换的场景。…

微信小程序订阅消息发送消息,点击消息进入小程序页面

1、在小程序官网订阅消息选用或创建消息模板获取模板ID可多个 如图&#xff1a; 2、微信小程序前端页面发送请求订阅权限 请求模板id的权限可以是一个可以是多个&#xff0c;用户同意订阅&#xff0c;获取code传递给后端——后端拿到code生成唯一的openid用于发送订阅消息 注…

卷积神经网络 - 卷积层

卷积神经网络一般由卷积层、汇聚层和全连接层构成&#xff0c;本文我们来学习卷积层。 卷积层&#xff08;Convolutional Layer&#xff09;是卷积神经网络&#xff08;CNN&#xff09;的核心组件&#xff0c;专门用于处理具有网格结构的数据&#xff08;如图像、音频、时间序…

Vue3全局化配置(ConfigProvider)

效果如下图&#xff1a; 在线预览 APIs ConfigProvider 参数说明类型默认值theme主题对象Theme{}abstractboolean是否不存在 DOM 包裹元素truetagstringConfigProvider 被渲染成的元素&#xff0c;abstract 为 true 时有效‘div’ Theme Type 名称说明类型默认值common?全…

LabVIEW烟气速度场实时监测

本项目针对燃煤电站烟气流速实时监测需求&#xff0c;探讨了静电传感器结构与速度场超分辨率重建方法&#xff0c;结合LabVIEW多板卡同步采集与实时处理技术&#xff0c;开发出一个高效的烟气速度场实时监测系统。该系统能够在高温、高尘的复杂工况下稳定运行&#xff0c;提供高…

启幕数据结构算法雅航新章,穿梭C++梦幻领域的探索之旅——二叉树序列构造探秘——堆的奥义与实现诗篇

人无完人&#xff0c;持之以恒&#xff0c;方能见真我&#xff01;&#xff01;&#xff01; 共同进步&#xff01;&#xff01; 文章目录 一、堆的定义与结构二、堆的实现1.堆的初始化和销毁堆的初始化堆的销毁 2.向上调整算法和入堆向上调整算法入堆 3.向下调整算法和出堆顶数…