加载的 keras 模型没有预测方法

问题描述

在DQN算法中,agent训练成功,模型保存为.h5文件。 代理类有一个名为 load方法,如下所示:

def load(self):
    new_model = load_model('dqn_model.h5')
    if self.epsilon == 0.0:
       self.update_network_parameters()
    return new_model

def update_network_parameters(self):
    self.model.set_weights(self.new_model.get_weights())

我尝试通过创建 new_model 来运行评估步骤,如下所示:

new_model = agent.load()

但是 new_model 没有像 predict 这样的任何方法

解决方法

确保您在调用 agent.load 的类中导入了模型。

from keras.models import Model

此外,就我个人而言,model.predict 不会出现在 Intellisense 中,因此请确保代码在运行时实际上不会编译。如果是,请告诉我们异常错误是什么。