加载共享模型

时间:2020-05-26 03:56:56

标签: python tensorflow keras

我正在写一个模型,我这样写是为了使用 始终使用actor_t进行训练,使用actor_p进行预测,而这两者都使用相同的图层:

actor_p = Model(inputs=inputs_, outputs=policy_)
actor_t = Model(inputs=[inputs_, advantage_, old_policy], outputs=policy_)
actor_t.compile(optimizer=opt_ac, loss=ppo_loss(advantage_, old_policy)) 
return actor_t , actor_p

actor_t中的多余ipnut(advantage_和old_policy_)没有权重,因为它们仅显示在损失函数中。

训练并另存为.h5后,我重新创建模型并按如下方式加载:

tf.keras.models.save_model(actor_p, p+"_actor_ppo.h5")   #p is some path variable
...
actor_p = tf.keras.models.load_model(p+"_actor_ppo.h5")

如您所见,actor_t未保存且未加载,我的假设是actor_t和actor_p在预加载时共享相同的模型,它们也会在后加载时也这样做。

对吗?还是actor_t是构造之后和加载之前的模型,而refref与actor_p不同吗?

0 个答案:

没有答案
相关问题