【问题标题】:How to freeze layer parameters in Flux.jl如何在 Flux.jl 中冻结图层参数
【发布时间】:2021-08-28 10:53:21
【问题描述】:

我目前正在研究迁移学习问题,因此我想冻结我的大部分层,这样模型就不会重新训练,并且只修改最后一层的权重。如何选择使用 Flux.jl 冻结哪些层?

【问题讨论】:

    标签: julia flux.jl


    【解决方案1】:

    Flux 提供了一个简单的接口来做到这一点,即只将要修改的层传递给Flux.params() 函数,如下所示:

    m = Chain(
          Dense(784, 64, relu),
          Dense(64, 64, relu),
          Dense(32, 10)
        )
    
    ps = Flux.params(m[3:end])
    

    在上面的示例中,我们选择仅更新最终的Dense 层(这通常是您在迁移学习示例中所做的)。

    您可以在有关迁移学习的 Flux.jl 教程中查看完整示例:https://fluxml.ai/tutorials/2020/10/18/transfer-learning.html

    【讨论】:

      猜你喜欢
      • 2020-04-15
      • 2022-07-25
      • 1970-01-01
      • 1970-01-01
      • 2020-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多