适应性学习率

news2024/10/6 20:26:51

目录

  • 适应性学习率 Adaptive learning rate
    • 为什么不是临界点仍会导致训练停止
      • 示例一
      • 示例二
    • RMS
    • RMSProp
    • Adam
    • 学习率还和时间有关
      • Learin Rate Decay
      • Warm up

2021 - 类神经网络训练不起来怎么办(三) 自动调整学习率 (Learning Rate)

适应性学习率 Adaptive learning rate

一般训练过程中训练不起来,很少是critical point的问题。大部分都是gradient优化器的问题。

在这里插入图片描述

上图中loss不再变化,但gradient向量值并不会很小,并不在临界点上。 这种现象的出现在gradient($
w_{i+1}=w_i-\eta \times \frac{\partial loss}{\partial w}|_{w=w^0}
$)中主要是因为η太大导致在临界点周围反复横跳,如下图

在这里插入图片描述

为什么不是临界点仍会导致训练停止

在这里插入图片描述

示例一

在这里插入图片描述

起初,gradient比较大,若此时学习率η也比较大,会导致参数在error surface两边震荡更新如上图。

示例二

在这里插入图片描述

起初,gradient比较大,若此时学习率η比较小,则参数更新的程度也会比较小,从而能够到达临界点附近,但因为临界点附近gradient比较小,而此时学习率η也比较小,故参数的更新程度就会比较小,从而无法到达local
minima的位置

📌因此,对于参数的不同位置我们需要设置不同的学习率。当gradient梯度较大时,将学习率设置较小。当gradint梯度较小时,将学习率设置较大

此时gradient优化器公式为:

w i + 1 = w i − η σ i t g i t w_{i+1}=w_i-\frac{\eta}{\sigma^t_i}g^t_i wi+1=wiσitηgit

RMS

RMS即root mean square 此时的sigma规律如下:

在这里插入图片描述

当error surface某点附件的gradient梯度偏大时,sigma值偏大导致
eta/sigma偏小从而实现小程度的参数更新;当error surface某点附件的gradient梯度偏小时,sigma值偏小导致
eta/sigma偏大从而实现大程度的参数更新、

但RMS仍存在一些问题:它是等可能的参照过去现在所有的gradient,但是在实现的过程中我们需要对目前的gradient置以更高或更低的参与可能,从而有了RMSProp

RMSProp

RMSProp在RMS的基础上将sigma定义如下:(引入了新的超参数alpha)

在这里插入图片描述

Adam

目前最常用的优化器,是结合RMSProp和Momentum动量的gradient。其内部实现如下:

在这里插入图片描述

学习率还和时间有关

Learin Rate Decay

在这里插入图片描述

随时间的进行,训练的越来越接近local minima,故让学习率eta逐渐减小,不要出现下图的在local minima处的震荡:

在这里插入图片描述

Warm up

在这里插入图片描述

随时间的进行,学习率eta先增大至最高再逐渐减小,此时超参数还包括何时升至最高值及最高值多少和下降到哪个最低值
(大概解释:一般刚开始时我们过去的gradient较少,因此此时最后的学习率/sigma不是很精准,所以我们设置较小的学习率eta,不要让参数偏太多。随着时间慢慢进行,过去的gradient比较丰富,此时可以设置较大的eta之后再按照Learing
Rate Decay进行

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

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

相关文章

团队协作软件如何整合内容营销

每个内容营销团队都以不同的方式管理他们的流程和工作流程——无论是为成长中的团队扩展编辑流程,还是视频和社交媒体活动规划。优化内容营销项目管理就是降低复杂性和更有效地管理工作。 但是,为什么正确地做到这一点如此重要呢?与对外营…

第一个uni-app程序小结

工院喵开发小结 这是一篇关于uniapp新手写微信小程序的收获和踩坑总结。 目录工院喵开发小结一、架构二、收获1. 一些扩展组件的使用a. uni-uib. uni-listc. 栅格系统d. uni.scss辅助样式e. uni-easyinput 增强输入框f. uni-fab悬浮按钮g. swiper2. api管理3. 页面跳转传参4. …

iOS 语言基础初探 Xcode 工具

前言: 作为 iOS 开发的主要应用工具之一,Xcode 已经越来越被业内认可,本章节将针对此官方开发工具,为同学解读 Xcode 的基本情况,认识 Xcode 的工程体系,带领大家进入 iOS 开发第一步。 🎶文章目…

SAP入门技术分享四:模块化程序

模块化程序1.子程序概要2.子程序定义3.子程序参数(1)传递参数的方法(2)定义参数类型(3)参数与结构体(4)参数与内表4.调用子程序(1)调用程序内部子程序&#x…

vue npm link关联本地组件库

什么是 npm link 就是把你在本地开发好的文件做一个映射和链接,当你在 本地开发一个a项目,你的本地b项目想使用a项目下的组件 这时候就是需要进行npm link链接起来 a项目的运行效果 b项目的运行效果: 想要实现的效果:(在b项目上…

Oracle SQL Developer使用dbms_output.put_line显示输出

dbms输出 点击DBMS输出左侧的号,选择需要输出的数据库,点击确定 与步骤2选择相同数据库,右击数据库,选择打开SQL工作表(T) 在工作表中执行语句 declare --定义,相当于声明属性。t_a varchar2(20);--声明自定义属…

怎么写一篇计算机SCI论文初稿? - 易智编译EaseEditing

一、SCI论文的要求 SCI论文的核心是创新性。对于这个方面来说主要就是针对于论文的观点正确,文字通畅,逻辑严密,结构合理,结论有创新等等。 二、SCI论文格式规范 每一个SCI期刊都有自己特定的宗旨、栏目和专业定位,投…

TCP通信机制:三次握手、四次挥手、滑动窗口

欢迎关注博主 Mindtechnist 或加入【Linux C/C/Python社区】一起探讨和分享Linux C/C/Python/Shell编程、机器人技术、机器学习、机器视觉、嵌入式AI相关领域的知识和技术。 TCP通信机制1. TCP三次握手2. TCP四次挥手3. TCP连接与数据传输过程4. TCP滑动窗口机制5. server服务端…

这套设备管理方案助你效率10倍提升

车间工厂等货物人员密集场所,对消防安全的要求很高。消防设备管理自然是生产制造型企业的核心之一。消防设施的有效管理,既要保证日常巡检工作的有效性,又要在设备出现故障后及时响应。在此基础上还要对整体管理情况进行数据分析,…

振弦采集模块的各种参数操作

振弦采集模块的各种参数操作 固件版本读取 点击指令区【 读取版本】 按钮,读取当前连接模块的固件版本信息,读取到的版本信息显示于按钮右侧。 VMTool 会根据读取到的版本不同对功能和界面做出调整,故此, 在使用 VMTool 时&#…

Workfine新手入门:给图片加水印

哈喽,我是办公助手小W,又到了跟大家分享办公小技巧的时候啦! 最近Workfine5.0最新版本上线后,一直有人问到底有啥新功能啊?与往期版本有何不同呢?小W亲自去体验了一番,最大的一个亮点就是新增了…

90、【树与二叉树】leetcode ——104. 二叉树的最大深度:层次遍历+DFS+子问题分解(C++版本)

解题思路 原题链接:104. 二叉树的最大深度 解题思路 1、迭代法:层次遍历BFS /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), rig…

Blender 物理属性 (二)布料和碰撞

文章目录添加与去除布料查看布料效果布料的预设属性(模拟不同的布料效果)布料与其他物体碰撞布料的自交叉问题布料钉固制作一个窗帘添加与去除布料 1 添加:物体模式选中一个物体,属性栏/物理属性(蓝色圆圈),选择布料 …

程序员转项目经理,需要拒绝的3大习惯。

程序员转项目经理并不容易,需要我们转变思路,并拒绝我们日常3大习惯。 1、拒绝单打独干,转而关注与干系人的沟通协调。 做为技术人员,在确定自我任务后,独自敲代码就好,具有较强的单干性质。而作为项目经理…

前端项目代码统一规范-从eslint、stylelint、husky、lint-staged、commitlint和配合vscode插件一一道来

目前在多人项目开发时发现很多代码不规范的地方,因为每个项目都是多人维护,再加上各种历史代码的不同风格,这些情况很容易就造成了代码规范落地难,项目中出现大量低质量代码,代码格式难统一。所以采用 eslinthuskystyl…

【Vue】移动端项目流程

移动端项目 O 项目技术栈说明 脚手架: Vite 3 还有 vue-cli - 底层 webpack 脚本:typescript路由:vue-router4状态管理器: vuex4 还有 pinia 组件库:vant3.6.3组件API:选项式API 一、Vite 脚手架的使用 …

PostgreSQL复习记录(一):Win10成功安装postgresql14.6的过程记录

到官网下载页面选择合适的版本进行下载,我这里选择Windows版本,跳转到Download PostgreSQL后选择PostgreSQL Version 14.1 Windows x86-64的版本。 1,启动安装程序: 如果只是练习使用,安装时这里可以取消勾选Stack Bu…

戴尔电脑开机屏幕花屏无法启动解决方法

戴尔电脑开机屏幕花屏无法启动解决方法。有用户使用的戴尔电脑开机的时候出现了一些问题,电脑屏幕变成了满屏的马赛克花屏,不能正常启动到桌面页面上了。那么这个问题要如何去做出解决,一起看看操作的方法吧。 准备工作: 1、U盘一…

初步认识 Babel

Babel 官网:https://www.babeljs.cn/docs/1.AST 抽象语法树AST 抽象语法树,是 Babel 的核心在 JavaScript 的世界中,你可以认为抽象语法树(AST)是最底层下面会通过拆解一个普通函数,解释下什么是 AST 抽象语…

node服务从http升级到https(阿里云免费ssl)

升级原因1.各大搜索引擎中,https的网页的权重比一般的http的网页权重要高。2.从用户体验的角度,一个老是被浏览器提醒该网页不可信的网页,总不会让用户感到安心所以将网站从http升级为https是很有必要的用户配置首先介绍一下这次升级的网站使…