【问题标题】:How to fix"NameError: name 'load_model' is not defined"如何修复“NameError: name 'load_model' is not defined”
【发布时间】:2019-11-27 23:54:43
【问题描述】:

我正在阅读《Python 深度学习》这本书,但遇到了一个问题。我使用 Pycharm 将模型保存在另一个文件中,当我尝试通过函数“load_model()”加载它时,系统支持“NameError: name 'load_model' is not defined”。 pycharm 2019.1.3 keras 2.2.4 tensorflow 1.13.0

from keras import models
model = load_model('cats_and_dogs_small_2.h5')

使用 TensorFlow 后端。 回溯(最近一次通话最后): 文件“F:/python program/visualizDemo/main.py”,第 2 行,在 模型 = load_model('cats_and_dogs_small_2.h5') NameError: name 'load_model' 没有定义

进程以退出代码 1 结束

【问题讨论】:

  • @krain 我想您在保存模型时可能错过了custom_object 的规范,例如损失函数、度量函数等。我之前也遇到过同样的问题,解决方法就是添加我在 mymodel.save() 中所说的内容。

标签: python-3.x tensorflow keras pycharm


【解决方案1】:

你在这里缺少的是,load_model 函数在模型类中,所以你必须引用模型类。

from keras import models    
model = models.load_model('filename.h5')

为了按照你的方式做,你必须使用 import 如下

from keras.models import load_model

PS:下一行将来可能会对您有所帮助。如果您尝试加载权重,请使用函数:

model.load_weight('weights_file.h5')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-23
    • 1970-01-01
    • 2022-12-02
    • 2013-04-09
    • 2020-09-06
    • 2020-11-07
    • 2017-01-09
    相关资源
    最近更新 更多