python-3.x - 如何修复“NameError: name 'load_model' is not defined”
问题描述
我正在阅读《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' is not defined
进程以退出代码 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')
推荐阅读
- html - 缺少有效的 YouTube API 密钥
- xml - 使用单个 XSLT 生成不同的输出文件
- sql - 查找表中每个实体的最大 N 值的最有效 SQL 查询是什么
- laravel - 在 Laravel 中执行 CRUD 的单个函数
- php - php file_put_content 到 aws S3
- dart - Angular Dart:如果用户未登录,则将用户重定向到登录页面
- angular - 如何在角度 6 中单击从一个组件到另一个组件的按钮时获取复选框的选中值
- arduino - 功能音和IRremote
- chart.js - ChartJS X 轴上的日期不显示任何图表
- c++ - 使用贪心算法没有得到所需的背包问题输出