Deep learning 如何从解算器协议(CAFFE)更改特定层的学习速率

Deep learning 如何从解算器协议(CAFFE)更改特定层的学习速率,deep-learning,caffe,Deep Learning,Caffe,有人知道如何从解算器协议更改CAFFE中特定层的学习速率吗?我知道有base\u lr,但是我希望以特定层的速率为目标,并通过解算器而不是网络协议来实现 谢谢 每一个需要学习的层(即会话、完全连接等)都有一个特定的lr\u mult参数,可以专门针对该层进行控制lr_mult是“此参数的全局学习率的乘数。” 只需在train\u val.prototxt中为您的图层定义或更改lr\u mult 这对于微调非常有用,因为您可能只希望提高新层的学习速率 有关更多信息,请查看caffe教程。(注意:它

有人知道如何从解算器协议更改CAFFE中特定层的学习速率吗?我知道有
base\u lr
,但是我希望以特定层的速率为目标,并通过解算器而不是网络协议来实现


谢谢

每一个需要学习的层(即会话、完全连接等)都有一个特定的
lr\u mult
参数,可以专门针对该层进行控制
lr_mult
是“此参数的全局学习率的乘数。”

只需在
train\u val.prototxt
中为您的图层定义或更改
lr\u mult

这对于微调非常有用,因为您可能只希望提高新层的学习速率

有关更多信息,请查看caffe教程。(注意:它有点过时,这里使用了弃用的术语
blobs\u lr
,而不是
lr\u mult


编辑:据我所知,无法从
solver.prototxt
定义特定于层的学习速率。因此,假设
solver.prototxt
限制不严格,我建议使用不同的方法来实现相同的结果。

OP特别询问了一种方法,可以从solver.prototxt而不是从train_val.prototxt更改
lr_mult
。那么你的帖子是如何回答这个问题的呢?@shai我认为一个回答是“solver.prototxt不是做出架构级决策的地方;这里是如何正确执行”是一个有效的答案。这个问题几乎是一个X-Y问题;如果没有激励您为什么需要在解算器级别做出此决定,我只能假设OP在这里没有做一些明智的事情