caffe 参数设置两次?

caffe param set twice?

我遇到了以下结构:

layer {
  name: "conv2"
  type: "Convolution"
  bottom: "norm1"
  top: "conv2"
  param {
    lr_mult: 1
    decay_mult: 1
  }
  param {
    lr_mult: 2
    decay_mult: 0
  }

1) 谁能解释一下为什么 "param" 设置了两次?

2) 为了微调,我必须全部设置为 0,对吧(我不想改变这一层)?

3) 我应该只在 train_val.prototxt 中更改这些还是在 deploy.prototxt 中也更改这些?

谢谢!

  1. 第一个param控制权重,第二个控制 偏见。
  2. 您可能希望也可能不想将它们全部设置为零。当你这样做时,你就是 "freezing" 这一层,这意味着它的权重和偏差根本不会更新。您可以做的另一件事是减少 lr_multdecay_mult,减少优化器更新它们的剧烈程度。
  3. 仅在训练中,因为在测试中没有优化。