21. 合理的模型初始化和激活函数

news2024/10/6 1:34:37

1. 让训练更加稳定

在这里插入图片描述

2. 让每层的方差是一个常数

以两个变量为例,均值为零可以让变量于自己的轴对称,那么在二维上整个变量分布就是中心对称,而方差则可以控制各个变量离原点的离散程度,那么就可以把二维变量看成限制在某个圈内。

在梯度计算时(偏导)时,梯度方向大致是向着圆心的,那么梯度步长就有一个较大的可调范围,不会出现z字形的梯度路径。

在这里插入图片描述

3. 权重初始化

在这里插入图片描述

4. 例子:MLP

独立同分布IID(independent and identically distributed)

在这里插入图片描述

  1. 因为是正态分布随机生成的权重,因此第t层的权重矩阵的期望(均值)为0,而方差等于某个初始化的数。
  2. 对于第t层来说,这一层的输入和这一层的权重是相互独立的
  3. 最后一点我的理解如下:

在这里插入图片描述

ps: 当X和Y相互独立时,E(XY)=E(X)E(Y),第一项是0,以及之前假设了第二项是0,最后相乘结果为0

正向方差

方差D(x) = E(X^2 )- E(X) ^ 2

在这里插入图片描述

在这里插入图片描述

反向方差和均值

注意:第一行t-1和t弄反了。
在这里插入图片描述
最后的结果可知,第t层的输出的个数乘以γ要等于1.

5. Xavier初始

在这里插入图片描述
nt-1 * γt = 1保证前项的输出的方差是一致的,nt * γt = 1保证梯度是一样的。

但是nt-1是第t层输入的维度,nt是第t层输出的维度,除非输入的维度和输出的维度一样,不然的话无法同时满足两个条件。

均匀分布 var(x) = 1 / 12(a-b)^2

权重初始化时的方差是根据输入和输出维度来定的。

6. 假设线性的激活函数

在这里插入图片描述
关于期望和方差的公式

反向

在这里插入图片描述
如果希望每一层输出以及梯度的均值为0,方差为固定数的话,只有激活函数f(x)=x满足条件。

7. 检查常用激活函数

在这里插入图片描述
可以看出:tanh,relu以及调整后的sigmoid都可以选取。

8. 总结

  • 合理的权重初始值和激活函数的选取可以提升数值稳定性。

9. 一些Q&A

  1. 出现nan,inf的情况以及怎么解决?
    答:inf 是学习率调得太大了,或者权重初始的值太大了,导致梯度爆炸,nan一般是除以0,梯度已经很小了,梯度除以了0,就会得到nan。

解决:1)合理的初始化权重 2)选择正确的激活函数 3)学习率不要选太大。实际碰到了的话,就把学习率一直往小调整,知道nan或inf不出现。也可以看权重的初始,让方差的区间小一点,一直往小走,使得出现值,再慢慢调大使得训练有进展

  1. 在训练的过程中,如果网络层的输出的中间层特征元素的值突然变成nan了,是发生了梯度爆炸了吗?
    答:是的,nan一般就是梯度太大造成的,梯度太小的话,是训练不动的,没有进展。

  2. sigmoid能引起梯度消失,但是别的情况也会导致梯度消失,用relu代替sigmoid有一定的概率解决梯度消失,但不一定。

  3. 通过把每一层输出的均值和方差做限制,可以理解为限制各层输出值出现极大或极小的异常值。

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

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

相关文章

物联网开发笔记(61)- 使用Micropython开发ESP32开发板之控制3.2寸触摸屏的SD卡(续)

一、目的 这一节我们学习如何使用我们的ESP32开发板来控制3.2寸触摸屏的SD卡。 关键字:3.2寸SPI串口TFT液晶显示屏模块 ILI9341驱动 LCD触摸屏 240*320 XPT2046触摸屏芯片IC 二、环境 ESP32 3.2寸触摸屏SD卡模块 Thonny IDE 几根杜邦线 接线方法: …

[附源码]计算机毕业设计的中点游戏分享网站Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: Springboot mybatis MavenVue等等组成,B/S模式…

一篇文章带你深入了解JavaScript中let+var的特性

暂时性死区 上篇文章我们了解到了let和var之间的细微差别&#xff0c;同时它们之间还有一个区别就是let声明的变量不会在作用域中被提升 <script> //name会被提升console.log(name); //undefinedvar name "Matt"; ​//age不会被提升console.log(age); //…

5.Naocs系列之集群部署

本文学习nacos基于docker的集群部署 1. 新增mysql8 Dockerfile文件 // online/shenjian/nacos/nacosCluster/image/mysql FROM mysql:8.0.30 ADD https://raw.githubusercontent.com/alibaba/nacos/develop/distribution/conf/mysql-schema.sql /docker-entrypoint-initdb.d/…

极客时间Kafka - 13 Kafka 中的高水位和 Leader Epoch 机制

文章目录1. 什么是高水位&#xff1f;2. 高水位的作用3. 高水位更新机制1. Leader 副本高水位更新机制2. Follower 副本高水位更新机制4. 副本同步机制解析5. Leader Epoch你可能听说过高水位&#xff08;High Watermark&#xff09;&#xff0c;但不一定耳闻过 Leader Epoch。…

vxe-table 实现表格填写自动计算且限制数值的复杂操作

vxe-table 实现表格填写自动计算且限制数值复杂操作 效果 演示思路 输入框设置最大值 :max"row.max"输入框调用方法blur"updateFooterEvent(row, $event)" input" if (row[item.field] > row.max) { row[item.field] row.max; } " 上代码…

我们是如何追逐元宇宙、XR等“概念股”浪潮的?

作者&#xff1a;金擘(渚薰) 1.今年我们迈出的第一步 随着淘宝人生小屋项目的正式上线&#xff0c;淘宝人生今年的元宇宙规划初步成型。 加上在 S1 同淘宝直播团队的合作上线的 Disney 毛毛狂欢馆&#xff0c;我们也正式迈出了“元宇宙”技术的第一步。 今年是淘宝人生上线 3…

数智技术,企业绿色低碳转型的催化剂?大咖说新一期每周推荐来袭!

“双碳”战略下&#xff0c;企业会遇到哪些机遇和挑战&#xff1f;中小企业如何实现绿色转型&#xff1f;数字化又在其中发挥了怎样的作用&#xff1f; 介绍&#xff1a; 阿里云能耗云总经理 周文闻 施耐德电气首席数字化设计师 毛春景 “双碳”战略下&#xff0c;企业会遇到…

你写过哪些有趣的python?(附零基础学习资料)

前言 某网站上有个浏览超过400万的问题&#xff1a;可以用 Python 编程语言做哪些神奇好玩的事情&#xff1f; 我先举一个很不专业的栗子… 然后再找几个人抬一堆例子来… 不是很稀饭《复联》嘛&#xff0c;看了《复联4》&#xff0c;就用50行Python代码做了这些&#xff1a;…

Word控件Spire.Doc 【超链接】教程(4):如何修改Word文档中的超文本

Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下&#xff0c;轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具&#xff0c;专注于创建、编辑、转…

【leetcode】从前序与中序遍历序列构造二叉树

一、题目描述 给定两个整数数组 preorder 和 inorder &#xff0c;其中 preorder 是二叉树的先序遍历&#xff0c; inorder 是同一棵树的中序遍历&#xff0c;请构造二叉树并返回其根节点。 示例1&#xff1a; 输入: preorder [3,9,20,15,7], inorder [9,3,15,20,7] 输出:…

rk3399-uboot2017-增加串口通信

一、主要还是解决这个问题&#xff0c;最后没办法&#xff0c;只能进行串口通信&#xff0c;来识别屏幕的类型了。 基本步骤如下&#xff1a; 1. uboot阶段发送串口指令&#xff0c;等待串口回复数据&#xff0c;根据数据识别屏幕类型 2.在bootargs增加一个自定义的参数&…

一个完整的项目是如何开展的:对项目生涯的总结

我正在参加「掘金启航计划」 变量的类型指的是变量的特性或特征&#xff0c;比如表示数字类型、文本类型、集合类型等&#xff0c;表示的是一类数据。 Dart提供以下的内置类型&#xff1a; 数字&#xff1a;int, double (整型(表示整数)&#xff0c;浮点型(表示小数))布尔&a…

程序员如何平衡主业和副业?

什么是副业&#xff1f; 对于副业的定义&#xff0c;每个人都有自己的见解。不过对大部分人来说&#xff0c;副业相对于主业而言&#xff0c;就是工作日朝九晚五的工作称为主业&#xff0c;其他时间做的赚钱的项目或者工作可以称之为副 副业可以是写文章、拍视频、打代码&…

干扰管理学习日志8-------多用户联合_资源卸载_功率分配_计算资源分配

目录一、文章概述二、系统模型环境三、理论模型1.系统目标2.约束条件3.公式推导四、算法设计1.上行链路功率分配策略(1)任务目标(2)伪代码2.中央服务器算力分配策略3.任务卸载策略(1)任务目标(2)卸载集缩小条件(3)卸载集扩充条件(4)策略(5)伪代码五、性能表征本文是对论文《Mul…

[Linux]----初始网络

文章目录前言一、计算机网络的背景重新看待计算机结构网络发展认识"协议"二、网络协议初始软件分层协议分层OSI七层模型TCP/IP五层(四层)模型三、网络传输的基本流程网络和操作系统之间的关系局域网通信的原理四、数据包的封装和分用五、网络中的地址管理认识IP地址认…

2004-2020年全国30省工业污染治理完成投资数据

2004-2020年全国30省工业污染治理完成投资数据 1、时间&#xff1a;2004-2020年 2、范围&#xff1a;包括全国30个省&#xff0c;不含西藏 3、来源&#xff1a;国家统计J 4、缺失情况说明&#xff1a;无缺失 5、指标说明&#xff1a; 目前虽然采取了一系列环境规制相关政…

[附源码]Python计算机毕业设计SSM基于Web学术会议投稿管理系统(程序+LW)

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

二元灰狼优化(BGWO)应用于特征选择任务(Matlab代码实现)

目录 &#x1f4a5;1 概述 &#x1f4da;2 运行结果 &#x1f389;3 参考文献 &#x1f468;‍&#x1f4bb;4 Matlab代码 &#x1f4a5;1 概述 特征选择是当前信息领域,尤其是模式识别领域的研究热点。该代码演示了BGWO如何使用基准数据集Main解决特征选择问题。 &#…

python国际化课程capstone(ML预测ACM队员获奖概率)

目录 前言 原始数据集 爬虫部分 爬取每个队员在buct做题数量 爬取每个队员codeforces的最高分&#xff0c;注册时间&#xff0c;解题数量 爬取每个队员有效做题时间 数据处理部分 模型部分 Linear Regression XGBregressiongridsearchCV调参 Random Forset 前言 刚…