【问题标题】:caffe batchnorm layer affect base_lr?caffe batchnorm 层影响 base_lr?
【发布时间】:2017-02-17 11:23:28
【问题描述】:

在caffe框架下看到如下代码。整个代码都在尝试写caffetrain_val.prototxtsolver.prototxt

# Use different initial learning rate.
if use_batchnorm:
    base_lr = 0.0004
else:
    base_lr = 0.00004

为什么基础学习率不同?

【问题讨论】:

    标签: neural-network normalization caffe


    【解决方案1】:

    如果this paper 有帮助,你可以试试。 他们说如果你不使用归一化,你需要“更仔细地”训练,这意味着使用较低的学习率。

    浏览第一页,我可以想象它是这样工作的:

    对于某些非线性,有一个“良好的输入值范围”,批范数会将值带入该范围。高输入值不好并导致饱和(函数中的小斜率和“消失的梯度”)。

    因此,如果您不进行归一化,则需要采取更小的步骤 - 更低的学习率 - 以避免“跳入”导致网络内高值的权重。并且还要更加小心如何初始化权重。我想如果你使用 ReLus,那不是什么大问题。但是,如果其他人对 ReLus 有不同的体验,请纠正我。

    【讨论】:

      猜你喜欢
      • 2017-07-25
      • 2017-05-27
      • 1970-01-01
      • 1970-01-01
      • 2017-02-15
      • 2017-10-29
      • 2018-11-21
      • 2021-07-26
      相关资源
      最近更新 更多