【问题标题】:converting xavier to glorot in tensorflow code在张量流代码中将 xavier 转换为 glorot
【发布时间】:2020-12-29 22:16:54
【问题描述】:

我正在尝试将 tensorflow 代码中的 xavier 初始化程序转换为 glorot 初始化程序。

我不确定以下哪一项(或其他选项)是正确的?

#initializer = tf.contrib.layers.xavier_initializer()
initializer = tf.initializers.glorot_uniform()  
initializer = tf.initializers.GlorotNormal()

【问题讨论】:

  • GlorotNormalGlorotUniform 是两个不同的初始化器。这里没有“正确”的解决方案——你的问题是不恰当的(即使“转换”这个词在这里也没有意义)。
  • 我试图转换的原始代码只是使用 xavier_initializers() 所以我不知道什么是正确的选择,因此我在这里问
  • 那么下面的答案就是您要寻找的答案(请接受它)——确实,Xavier-Glorot 初始化的 original 形式是统一的。

标签: python tensorflow deep-learning tensorflow2.0


【解决方案1】:

基于xavier_initializercode,默认为uniform=True,这表明glorot_uniform 可能是您想要的。

如果你使用 tf2,你可以使用tf.keras.initializers.GlorotUniform()tf.keras.initializers.glorot_uniform 只是它的一个快捷功能:https://www.tensorflow.org/api_docs/python/tf/keras/initializers/GlorotUniform

【讨论】:

    猜你喜欢
    • 2021-08-28
    • 2022-09-29
    • 2021-11-25
    • 1970-01-01
    • 1970-01-01
    • 2023-04-09
    • 1970-01-01
    • 2021-09-22
    • 1970-01-01
    相关资源
    最近更新 更多