gpt4 book ai didi

python - "model.trainable = False"在 Keras 中是什么意思?

转载 作者:行者123 更新时间:2023-12-03 20:27:21 32 4
gpt4 key购买 nike

我想在 Keras 中卡住一个预先训练好的网络。我找到了 base.trainable = False在文档中。但我不明白它是如何工作的。
len(model.trainable_weights)我发现我有 30 个可训练的重量。怎么可能?网络显示总可训练参数:16,812,353。
冷冻后我有 4 个可训练的重量。
也许我不明白参数和权重之间的区别。不幸的是,我是深度学习的初学者。也许有人可以帮助我。

最佳答案

一个 Keras Modeltrainable by default - 您有两种方法可以卡住所有重量:

  • model.trainable = False编译模型前
  • for layer in model.layers: layer.trainable = False - 编译前后工作

  • (1) 必须在编译前完成,因为 Keras 对待 model.trainable作为编译时的 bool 标志,并在后台执行 (2)。完成上述任一操作后,您应该看到:

    print(model.trainable_weights)
    # []

    关于文档,可能已经过时 - 请参阅上面的链接源代码,最新。

    关于python - "model.trainable = False"在 Keras 中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58224816/

    32 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com