Fast R-CNN 论文中“每层学习率”的含义是什么?

jus*_*ong 3 deep-learning pytorch faster-rcnn

我正在阅读一篇有关 Fast-RCNN 模型的论文。

在“SGD超参数”的论文第2.3节中,它说所有层使用每层权重学习率为1,偏差为2,全局学习率为0.001


“每层学习率”与按层给出不同学习率的“特定层学习率”相同吗?如果是这样,我无法理解它们(“每层学习率”和“全局学习率”)如何同时应用?


我在pytorch中找到了“特定层学习率”的示例。

optim.SGD([
                {'params': model.some_layers.parameters()},
                {'params': model.some_layers.parameters(), 'lr': 1}
            ], lr=1e-3, momentum=0.9)
Run Code Online (Sandbox Code Playgroud)

根据论文,这是正确的方法吗?


抱歉,五月英语

kHa*_*hit 5

该论文中的每层术语有点含糊。他们并不是指特定层的学习率。

所有层的权重学习率为 1,偏差学习率为 2,全局学习率为 0.001。

相关声明是关于 Fast R-CNN 最初编写的 Caffe 框架(github 链接)。

他们的意思是,他们将权重和偏差的学习率乘数分别设置为 1 和 2。

检查prototxt存储库中的任何文件,例如CaffeNet/train.prototxt

  param {
    lr_mult: 1
    decay_mult: 1
  }
  param {
    lr_mult: 2
    decay_mult: 0
  }
Run Code Online (Sandbox Code Playgroud)

因此,有效学习率为base_lr*lr_mult,这里,基本学习率为 0.001,其定义在 中solver.prototxt