为了账号安全,请及时绑定邮箱和手机立即绑定

Keras“可训练”范围

Keras“可训练”范围

慕神8447489 2021-09-11 20:17:44
我有两个 Keras 网络。为了便于说明,假设我的模型类似于 GAN。所以,我们有一个鉴别器(D)和一个生成器(G)。显然,为了训练(G),(D)层应该被冻结。如果,我使用冻结它们,D.trainable = False那么我应该在训练 (D) 时反转此参数吗?model.trainableKeras的范围是什么?我见过只改变这个参数状态一次的代码:https : //github.com/nairouz/Keras-GAN/blob/master/gan/gan.py怎么可能呢?有什么解释吗?
查看完整描述

1 回答

?
猛跑小猪

TA贡献1858条经验 获得超8个赞

从我如何“冻结”Keras 层?:

此外,您可以将层的可训练属性设置为实例化TrueFalse实例化之后。要使其生效,您需要compile()在修改可训练属性后调用您的模型。

这同样适用于模型。这意味着当您设置 时D.trainable = False,这在您编译D(或任何其他利用 的模型D)之前不会生效,因此它不会影响您之前编译的模型。


查看完整回答
反对 回复 2021-09-11
  • 1 回答
  • 0 关注
  • 146 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号