【问题标题】:What is the impact of lr_mult = 0?lr_mult = 0有什么影响?
【发布时间】:2018-10-25 13:42:54
【问题描述】:

我正在查看一些 Caffe 网络构建代码(在 BerkeleyVision pascalcontext-fcn8s net.py 文件中),我找到了这一行:

L.Deconvolution(n.score_fr,
    convolution_param=dict(num_output=60, kernel_size=4, stride=2,
        bias_term=False),
    param=[dict(lr_mult=0)])

我想知道lr_mult = 0 一词的作用。查看文档后,我的第一个猜测是它应该阻止对内核权重的任何更新,但这看起来很奇怪,因为我假设默认初始化是随机的。这是做什么的?是否有其他代码或参数文件正在初始化内核?

【问题讨论】:

    标签: neural-network deep-learning computer-vision caffe image-segmentation


    【解决方案1】:
    1. 你是对的。设置lr_mult=0 会冻结图层的权重。权重将保持固定,并且在整个训练过程中不会从初始值改变。
    2. 如果您按照代码操作,您会看到对surgery.interp 的调用,此函数在训练开始之前设置升级层的初始权重。由于lr_mult=0,权重保持固定为这些值。

    【讨论】:

    • 内核初始化呢?似乎双线性插值将是目标,但我找不到在任何地方完成的地方。
    • @JimBiard 看看我在答案中链接到的函数
    • @JimBiard 如果答案解决了您的问题,请接受 - 答案会占用受访者的宝贵时间
    猜你喜欢
    • 2011-07-06
    • 2012-05-08
    • 2015-08-11
    • 2015-11-05
    • 2012-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多