当前位置: 首页 > wzjs >正文

永久免费手机网站建设百度资源站长平台

永久免费手机网站建设,百度资源站长平台,行业网站怎么做,logo设计公司前十名参数初始化1. 固定值初始化1.1 全零初始化1.2 全1初始化1.3 任意常数初始化2. 随机初始化3. Xavier 初始化4. He初始化5. 总结神经网络的参数初始化是训练深度学习模型的关键步骤之一。初始化参数(通常是权重和偏置)会对模型的训练速度、收敛性以及最终的…

参数初始化

  • 1. 固定值初始化
    • 1.1 全零初始化
    • 1.2 全1初始化
    • 1.3 任意常数初始化
  • 2. 随机初始化
  • 3. Xavier 初始化
  • 4. He初始化
  • 5. 总结

神经网络的参数初始化是训练深度学习模型的关键步骤之一。初始化参数(通常是权重和偏置)会对模型的训练速度、收敛性以及最终的性能产生重要影响。下面是关于神经网络参数初始化的一些常见方法及其相关知识点。

官方文档参考:https://pytorch.org/docs/stable/nn.init.html

1. 固定值初始化

固定值初始化是指在神经网络训练开始时,将所有权重或偏置初始化为一个特定的常数值。这种初始化方法虽然简单,但在实际深度学习应用中通常并不推荐。

1.1 全零初始化

将神经网络中的所有权重参数初始化为0。

方法:将所有权重初始化为零。

缺点:导致对称性破坏,每个神经元在每一层中都会执行相同的计算,模型无法学习。

应用场景:通常不用来初始化权重,但可以用来初始化偏置。

对称性问题

  • 现象:同一层的所有神经元具有完全相同的初始权重和偏置。
  • 后果:
    • 在反向传播时,所有神经元会收到相同的梯度,导致权重更新完全一致。
    • 无论训练多久,同一层的神经元本质上会保持相同的功能(相当于“一个神经元”的多个副本),极大降低模型的表达能力。

1.2 全1初始化

全1初始化会导致网络中每个神经元接收到相同的输入信号,进而输出相同的值,这就无法进行学习和收敛。所以全1初始化只是一个理论上的初始化方法,但在实际神经网络的训练中并不适用。

1.3 任意常数初始化

将所有参数初始化为某个非零的常数(如 0.1,-1 等)。虽然不同于全0和全1,但这种方法依然不能避免对称性破坏的问题。

2. 随机初始化

方法:将权重初始化为随机的小值,通常从正态分布或均匀分布中采样。

应用场景:这是最基本的初始化方法,通过随机初始化避免对称性破坏。

代码演示:随机分布之均匀初始化

 model=nn.Linear(1,1)#随机均匀分布参数初始化nn.init.uniform_(model.weight)#随机正态分布初始化nn.init.normal_(model.weight,mean=0,std=1)

3. Xavier 初始化

前置知识
Xavier 初始化(由 Xavier Glorot 在 2010 年提出)是一种自适应权重初始化方法,专门为解决神经网络训练初期的梯度消失或爆炸问题而设计。Xavier 初始化也叫做Glorot初始化。Xavier 初始化的核心思想是根据输入和输出的维度来初始化权重,使得每一层的输出的方差保持一致。具体来说,权重的初始化范围取决于前一层的神经元数量(输入维度)和当前层的神经元数量(输出维度)。

方法:根据输入和输出神经元的数量来选择权重的初始值。
Xavier 的数学原理
优点:平衡了输入和输出的方差,适合Sigmoid和 Tanh 激活函数。

应用场景:常用于浅层网络或使用Sigmoid 、Tanh 激活函数的网络。
Xavier初始化代码如下:

  model=nn.Linear(1,1)#xavier均匀分布参数初始化nn.init.xavier_uniform_(model.weight)#xavier正态分布参数初始化nn.init.xavier_normal_(model,weight,mean=0,std=1)

特点:

  • xavier参数初始化:是为了平衡前向传播和反向传播的方差保持一致
  • xavier有两种采样方式:均匀分布,正态分布
  • 一般用在浅层神经网络:可以和sigmoid函数和、Tanh激活函数的网络

4. He初始化

也叫kaiming 初始化。He 初始化的核心思想是调整权重的初始化范围,使得每一层的输出的方差保持一致。与 Xavier 初始化不同,He 初始化专门针对 ReLU 激活函数的特性进行了优化。
He参数初始化数学原理
(3) 两种模式

  • fan_in 模式(默认):优先保证前向传播稳定,方差 2nin\frac{2}{n_{in}}nin2
  • fan_out 模式:优先保证反向传播稳定,方差2nout\frac{2}{n_{out}}nout2

方法:专门为 ReLU 激活函数设计。权重从以下分布中采样:

均匀分布:
W∼U(−6nin,6nin)W\sim\mathrm{U}\left(-\frac{\sqrt{6}}{\sqrt{n_\mathrm{in}}},\frac{\sqrt{6}}{\sqrt{n_\mathrm{in}}}\right) WU(nin6,nin6)
正态分布:
W∼N(0,2nin)W\sim\mathrm{N}\left(0,\frac{2}{n_\mathrm{in}}\right) WN(0,nin2)
其中 ninn_{\text{in}}nin 是当前层的输入神经元数量。

优点:适用于ReLU和Leaky ReLU激活函数。

应用场景:深度网络,尤其是使用 ReLU 激活函数时。
代码如下:

 model=nn.Linear(1,1)# He均匀分布初始化nn.init.kaiming_uniform_(model.weight)#He正态分布初始化nn.init.kaiming.normal_(model.weight,mean=0,std=1)
  • He初始化(kaiming初始化):专门正对ReLu激活函数进行的优化
  • 两种模式:
  • fan_in:优先保证前向传播方差稳定,默认
  • fan_out:优先保证方向传播方差稳定
  • 两个采样方式:均匀分布和正态分布

5. 总结

在使用Torch构建网络模型时,每个网络层的参数都有默认的初始化方法,同时还可以通过以上方法来对网络参数进行初始化。

http://www.dtcms.com/wzjs/450862.html

相关文章:

  • 网站的空间和域名备案九江seo公司
  • 商城网站大概多少钱品牌策划的五个步骤
  • 网站有了订单邮箱提醒代码下载百度地图2022最新版
  • 上海知名网站建设推广公众号
  • 长春制作网站广告优化师
  • 做视频网站服务器多少钱赣州seo推广
  • 商家自己做的商品信息查询网站百度云盘搜索引擎入口
  • 工厂做网站有用吗镇江市网站
  • 设计网站公司 昂 睁湖南岚鸿哈尔滨怎样关键词优化
  • 深圳网站开发培训百度推广登录首页网址
  • 缘震网络网站建设之f套餐seo网站权重
  • 广州有网站建设学校软文怎么写
  • 怎么套用网站模板网络营销推广的基本手段
  • 邢台网站建设包括哪些百度网络推广
  • 做装饰画的行业网站最近的电脑培训班在哪里
  • 个人网站设计界面跨境网站建站
  • 甘孜建设机械网站首页谷歌seo是什么意思
  • 网站设计与开发技术教程百度ocpc怎么优化
  • 重庆点优建设网站公司seo课堂
  • 网站建设代理招标营销推广48个方法
  • 网络设计有哪些怎么做seo网站关键词优化
  • 做网站定金要多少国内重大新闻
  • 独立网站商城怎么做微商软文大全
  • 部队网站建设个人在线网站推广
  • 沈阳哪家做网站好自建网站平台有哪些
  • 化妆品网站建设目标网络营销评价的名词解释
  • 网站后台空间30g要多少钱关键词三年级
  • 网站优化的目的网店推广常用的方法
  • 政府部门网站建设简讯深圳百度推广开户
  • 企业专业网站设计公鞍山seo优化