转自https://blog.csdn.net/xxy0118/article/details/84333635

  1. Xavier初始化:
  • 条件:正向传播时,激活值的方差保持不变;反向传播时,关于状态值的梯度的方差保持不变。
  • 初始化方法:
    W∼U[−6√ni+ni+1√,6√ni+ni+1√]

W∼U[−ni​+ni+1​​6​​,ni​+ni+1​​6

  • ​​]
  • 假设激活函数关于0对称,且主要针对于全连接神经网络。适用于tanh和softsign
  • 论文地址:Understanding the difficulty of training deep feedforward neural networks
  • 参考资料:
    深度学习之参数初始化(一)——Xavier初始化
  1. He初始化
  • 条件:正向传播时,状态值的方差保持不变;反向传播时,关于激活值的梯度的方差保持不变。
  • 适用于ReLU的初始化方法:
    W∼N[0,2niˆ−−√]

W∼N[0,ni​^​2​

  • ​]
  • 适用于Leaky ReLU的初始化方法:
    W∼N[0,2(1+α2)niˆ−−−−−−−√]
  • W∼N[0,(1+α2)ni​^​2​​]
    niˆ=hi∗wi∗dini​^​=hi​∗wi​∗di​
    其中,hihi​、wiwi​分别表示卷积层中卷积核的高和宽,而didi​当前层卷积核的个数。

    • 疑问:在论文里,当前层卷积核个数di

    di​与当前层输出通道个数outiouti​(下一层输入通道个数ini+1ini+1​)是一致的,即di=outi−1=ini+1di​=outi−1​=ini+1​。但是在tensorflow的实现中,di=ini∗outi

    • di​=ini​∗outi​。在用tensorflow实现He初始化时,应该以哪个为准?(个人倾向前者)
  • 论文地址:Delving Deep into Rectifiers: Surpassing Human-Level Performance on ImageNet Classification
  • 参考资料:
    深度学习之参数初始化(二)——Kaiming初始化
    He初始化论文阅读笔记与实现

Xavier初始化和He初始化相关推荐

  1. 标准K-means算法的缺陷、K-mean++初始化算法、初始化算法步骤、Kmeans++算法实现

    标准K-means算法的缺陷.K-mean++初始化算法.初始化算法步骤.Kmeans++算法实现 目录 标准K-means算法的缺陷.K-mean&

  2. Spark源码剖析 - SparkContext的初始化(八)_初始化管理器BlockManager

    8.初始化管理器BlockManager 无论是Spark的初始化阶段还是任务提交.执行阶段,始终离不开存储体系.Spark为了避免Hadoop读写磁盘的I/O操作成为性能瓶颈,优先将配置信息.计算结 ...

  3. Java静态初始化,实例初始化以及构造方法

    静态初始化:是指执行静态初始化块里面的内容. 实例初始化:是指执行实例初始化块里面的内容. 构造方法:一个名称跟类的名称一样的方法,特殊在于不带返回值. 1.一个对象第一次被创建时,先要加载该对象所属 ...

  4. 初始化全局变量实例说明C语言中初始化和未初始化的全局变量所在不同的段

    本文是一篇关于初始化全局变量的帖子 实例说明C语言中初始化和未初始化的全局变量地点不同的段 一个程序: Makefile: objs := bss.oall: bss bss: $(objs)gcc ...

  5. 28.构造函数中,成员变量一定要通过初始化列表来初始化的?

    首先要明确:如果对象成员是const或者引用的话,必须将其初始化! 构造函数中,成员变量一定要通过初始化列表来初始化的的几种情况! 1)对象成员是const或者引用 #include <iost ...

  6. 复制初始化和直接初始化

    string str("12345"); string str = "12345"; 在写代码时忽然想到这个两个有啥区别呢,其实这个还是c++基础薄弱的原因 于 ...

  7. 【Java4】实例初始化,类初始化,/接口,多态,final/static,权限修饰符/native

    文章目录 1.实例初始化过程:有几个构造器,就会有几个实例初始化方法 2.实例初始化和类初始化结合:先类(静态)后实 3.接口:只有abstract可省 3.1 鸟类案例:Flyable相当于父类的一 ...

  8. C++直接初始化与复制初始化的区别深入解析

    首先:这是原文地址,这个哥们的文章解决了我的问题.谢谢这个哥们了.下面把原文地址放在这里: https://www.jb51.net/article/54773.htm C++中直接初始化与复制初始化 ...

  9. C++中的值初始化和默认初始化

    1.值初始化 顾名思义,就是用数值初始化变量.如果没有给定一个初始值,就会根据变量或类对象的类型提供一个初始值.对于int类型其值初始化后的值为0. 2.默认初始化:如果定义变量时没有指定初值,则变量 ...

  10. 列表初始化和赋值初始化的使用注意事项

    成员变量初始化方式有两种:列表初始化和赋值初始化.如下代码.但是这两种初始化表面上看着相同,但是用法和原理却并不相同.本篇博客主要讨论这两种初始化的使用方法和基本原理. class Test {pub ...

最新文章

  1. 工作10年后,再看String s = new String(xyz) 创建了几个对象?
  2. 实战!工作中常用到哪些设计模式
  3. 删除Linux的依赖库并进入救援模式恢复
  4. python for循环删除
  5. 【数据平台】sklearn库特征工程之特征选择和降维
  6. hapi logs 日志保存代码片段
  7. hbase 伪分布安装 java_HBase基础和伪分布式安装配置
  8. Python求转置矩阵最简便的方法
  9. SQL数据库不用SQL语句能显示全表的内容_Sql性能优化看这一篇就够了
  10. 构造函数与new关键字
  11. ssh连接aix问题与解决
  12. 计算机函数语法,clickhouse 函数语法
  13. Mysql基本增删改查
  14. 算法学习(十九)——A3C
  15. springboot+redis实现文章浏览量记录
  16. 大数据处理系统,分布式存储系统和分布式计算框架介绍
  17. 书籍推荐《麦肯锡教我的写作武器》
  18. 单硬盘win10+ubuntu双系统安装教程
  19. Tomcat中配置多个工程使用不同端口访问问题
  20. 瀑布模型的问题是什么?

热门文章

  1. 如何关闭win10自动更新_如何关闭win10系统自动更新
  2. dataframe 空值替换为0_缓解Pandas中DataFrame占用内存过高
  3. python 新建文件 hdfs_大数据学习(六):Python操作hdfs(包括追加数据文件到hdfs文件)...
  4. 使用CDN之后APACHE日志记录中IP地址不正确的解决方案
  5. 6502汇编 跳转以及返回
  6. 【MVC】Controller的使用
  7. UVA12299 线段树水水水,但别乱开空间= =
  8. 学习是一个漫长不能松懈的过程
  9. ubuntu 18.04安装oh my zsh
  10. @responseBody java_java-如何使用@ResponseBody从Spring Controller返回JSON数据