Keras load_model 导入错误的解决方式


Posted in Python onJune 09, 2020

在使用Keras load_model时,会出现以下报错:

ImportError: Failed to import pydot. You must install pydot and graphviz for `pydotprint` to work.

解决办法:

$ pip install pydot
$ sudo apt-get install graphviz

补充知识:Keras 保存model到指定文件夹和加载load_model指定文件夹中的文件(踩坑)

我们一般保存模型和加载模型都是通过下面这段代码:

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

而此时保存的路径都是模型训练的路径,当我们在写项目的过程中,需要将代码和result分文件保存,也就是说模型需要保存在自己指定的路径。下面我在说明如何保存和加载时,先简单说一下我的项目文件目录分配:

Keras load_model 导入错误的解决方式

上面是我的项目的文件部署,其中FJmodel中有模型训练和模型加载的代码,reslut中save-model中保存着我一次训练的60个模型。

Keras load_model 导入错误的解决方式

指定路径模型保存:

PATH = "../FengJiCode/result"
 ....
model.save(PATH+"/save-model/"+lags+"_LSTM3.h5")

这里我是使用的是相对路径保存的,而且成功保存60个模型,但是在加载的过程中,我一次按照指定文件名加载,如下代码加载:

#PATH = "../FengJiCode/result"
PATH = 'C://Users/lenovo/Desktop/FengJiCode/FengJiCode/result/save-model/'
 
for i in range(60):
 predictstep = i+1
 lag = "lag"+str(predictstep)
 modelname = lag+"_LSTM3.h5"
 print(modelname)
 string = PATH +modelname
 model = load_model(string)

总会报如下的错误:

OSError: Unable to open file (unable to open file: name = 'C:/Users/lenovo/Desktop/FengJiCode/FengJiCode/result/save-model/lag1_LSTM3.h5', errno = 2, error message = 'No such file or directory', flags = 0, o_flags = 0)

常试了使用绝对路径、相对路径、文件此片读取等方法都是无法成功加载,最后在网上查了很多资料也没有什么相同的问题解决方法,在我的不断尝试中,通过如下方法成功解决;

PATH = r'C:\Users\lenovo\Desktop\FengJiCode15\FengJiCode\result\save-model'
 
for i in range(60):
 predictstep = i+1
 lag = "lag"+str(predictstep)
 modelname = "\\"+lag+"_LSTM3.h5"
 print(modelname)
 string = PATH +modelname
 if os.path.exists(string):
  message = 'OK, the "%s" file exists.'
 else:
  message = 'Sorry, I cannot find the " %s" file.'
 print( message % string)
# print(string)
 model = load_model(string)

路径格式发生了变化,在每次加载前先判断改文件是否存在,成功加载结果:

Keras load_model 导入错误的解决方式

以上这篇Keras load_model 导入错误的解决方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python编程scoketServer实现多线程同步实例代码
Jan 29 Python
基于Python 装饰器装饰类中的方法实例
Apr 21 Python
78行Python代码实现现微信撤回消息功能
Jul 26 Python
Pandas 按索引合并数据集的方法
Nov 15 Python
解决Pandas的DataFrame输出截断和省略的问题
Feb 08 Python
对Python3 * 和 ** 运算符详解
Feb 16 Python
浅谈python3.6的tkinter运行问题
Feb 22 Python
python+logging+yaml实现日志分割
Jul 22 Python
python打包成so文件过程解析
Sep 28 Python
PyTorch 普通卷积和空洞卷积实例
Jan 07 Python
Python scrapy爬取起点中文网小说榜单
Jun 13 Python
Python中可变和不可变对象的深入讲解
Aug 02 Python
如何用python处理excel表格
Jun 09 #Python
使用Keras 实现查看model weights .h5 文件的内容
Jun 09 #Python
Python使用Chrome插件实现爬虫过程图解
Jun 09 #Python
Python导入数值型Excel数据并生成矩阵操作
Jun 09 #Python
Python带参数的装饰器运行原理解析
Jun 09 #Python
Python sorted对list和dict排序
Jun 09 #Python
python初步实现word2vec操作
Jun 09 #Python
You might like
模仿OSO的论坛(二)
2006/10/09 PHP
ThinkPHP中的关联模型注意点
2014/06/16 PHP
php实现的统计字数函数定义与使用示例
2017/07/26 PHP
js 编写规范
2010/03/03 Javascript
基于jquery的direction图片渐变动画效果
2010/05/24 Javascript
Javascript面向对象扩展库代码分享
2012/03/27 Javascript
JQuery中关于jquery.js与jquery.min.js的比较探讨
2013/05/15 Javascript
Javascript中的delete操作符详细介绍
2014/06/06 Javascript
javascript实现复选框超过限制即弹出警告框的方法
2015/02/25 Javascript
批量下载对路网图片并生成html的实现方法
2016/06/07 Javascript
微信小程序 input输入框详解及简单实例
2017/01/10 Javascript
js实现功能比较全面的全选和多选
2017/03/02 Javascript
this在vue和小程序中的使用详解
2019/01/28 Javascript
js tab栏切换代码实例解析
2019/09/03 Javascript
layui use 定义js外部引用函数的方法
2019/09/26 Javascript
jQuery编写QQ简易聊天框
2020/08/27 jQuery
[04:54]DOTA2 2017国际邀请赛:上届冠军WINGS采访短片
2017/08/09 DOTA
[05:20]2018DOTA2亚洲邀请赛主赛事第三日战况回顾 LGD率先挺进胜者组决赛
2018/04/06 DOTA
python reverse反转部分数组的实例
2018/12/13 Python
python实现超市管理系统(后台管理)
2019/10/25 Python
python_array[0][0]与array[0,0]的区别详解
2020/02/18 Python
Python爬虫实例——爬取美团美食数据
2020/07/15 Python
Html5 web本地存储实例详解
2016/07/28 HTML / CSS
美国半成品食材配送服务商:Home Chef
2018/01/25 全球购物
公司任命书范本
2014/06/04 职场文书
分公司总经理岗位职责
2014/07/30 职场文书
2014最新自愿离婚协议书范本
2014/11/19 职场文书
2014年党支部书记工作总结
2014/12/04 职场文书
计算机考试作弊检讨书1000字
2015/01/01 职场文书
2016年大学生寒假社会实践心得体会
2015/10/09 职场文书
2015年终个人政治思想工作总结
2015/11/24 职场文书
领导干部学习十八届五中全会精神心得体会
2016/01/05 职场文书
JS + HTML 罗盘式时钟的实现
2021/05/21 Javascript
windows安装python超详细图文教程
2021/05/21 Python
html+css实现滚动到元素位置显示加载动画效果
2021/08/02 HTML / CSS
Nginx反向代理、重定向
2022/04/13 Servers