【问题标题】:Xavier and he_normal initialization differenceXavier 和 he_normal 初始化的区别
【发布时间】:2018-07-16 09:48:07
【问题描述】:

keras 中的 He normal 和 Xavier normal 初始化器有什么区别。两者似乎都根据输入数据的变化来初始化权重。对两者之间的区别有什么直观的解释吗?

【问题讨论】:

  • 很遗憾,这不是编程问题,它更适合统计或数据科学 SE。

标签: machine-learning keras neural-network deep-learning initialization


【解决方案1】:

this discussion on Stats.SE:

综上所述,机器学习从业者的主要区别如下:

  • 他的初始化对于激活 ReLu 的层效果更好。
  • Xavier 初始化对于具有 sigmoid 激活的层效果更好。

【讨论】:

  • 感谢您的回复
  • 如果 input 和 relu 之间存在批量标准化,我应该使用 He 初始化吗?
  • 注册。 Xavier,具体来说应该是 tanh,而不是逻辑 sigmoid。 tanh 和logistic sigmoid 都是sigmoid 函数,但通常“sigmoid”表示“logistic sigmoid”
【解决方案2】:
每种激活函数类型

权重(内核)初始化参数:

  1. Xavier/Glorot 初始化:无,双曲线 Tan (tanh), 逻辑(sigmoid),softmax。
  2. He 初始化:整流线性激活单元 (ReLU) 和 变体。
  3. LeCun 初始化:缩放指数线性单元 (SELU)

应用程序...

keras.layers.Dense(10, activation="relu", kernel_initializer="he_normal")

这里是 Xavier Glorot、Yoshua Bengio 的研究论文链接,主题为“了解训练深度前馈神经网络的难度”,如果您想了解权重初始化背后的重要性和数学原理。 http://proceedings.mlr.press/v9/glorot10a.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-28
    • 1970-01-01
    • 2010-11-06
    相关资源
    最近更新 更多