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中的reduce内建函数使用方法指南
Aug 31 Python
python命令行参数解析OptionParser类用法实例
Oct 09 Python
在Python中使用mongoengine操作MongoDB教程
Apr 24 Python
Python实现基于PIL和tesseract的验证码识别功能示例
Jul 11 Python
对pandas中时间窗函数rolling的使用详解
Nov 28 Python
Python 实现数据结构-堆栈和队列的操作方法
Jul 17 Python
python同步两个文件夹下的内容
Aug 29 Python
Python网络编程之使用TCP方式传输文件操作示例
Nov 01 Python
解决python中的幂函数、指数函数问题
Nov 25 Python
Pytorch 实现focal_loss 多类别和二分类示例
Jan 14 Python
Python实现壁纸下载与轮换
Oct 19 Python
Python Django路径配置实现过程解析
Nov 05 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
PHP企业级应用之常见缓存技术篇
2011/01/27 PHP
php中判断文件空目录是否有读写权限的函数代码
2012/08/07 PHP
php打包压缩文件之ZipArchive方法用法分析
2016/04/30 PHP
Yii2 加载css、js 载静态资源的方法
2017/03/10 PHP
PhpStorm连接服务器并实现自动上传功能
2020/12/09 PHP
Git命令之分支详解
2021/03/02 PHP
Javascript常用运算符(Operators)-javascript基础教程
2007/12/14 Javascript
js 动态文字滚动的例子
2011/01/17 Javascript
javascript 文本框水印/占位符(watermark/placeholder)实现方法
2012/01/15 Javascript
jquery获取特定name所有选中的checkbox,支持IE9标准模式
2013/03/18 Javascript
分析Node.js connect ECONNREFUSED错误
2013/04/09 Javascript
jQuery封装的获取Url中的Get参数示例
2013/11/26 Javascript
Angular2 (RC5) 路由与导航详解
2016/09/21 Javascript
HTML页面定时跳转方法解析(2种任选)
2016/12/22 Javascript
Angualrjs和bootstrap相结合实现数据表格table
2017/03/30 Javascript
详解Vue用axios发送post请求自动set cookie
2017/05/10 Javascript
nodejs中art-template模板语法的引入及冲突解决方案
2017/11/07 NodeJs
Vue 按键修饰符处理事件的方法
2018/05/04 Javascript
vuex vue简单使用知识点总结
2019/08/29 Javascript
在vue中阻止浏览器后退的实例
2019/11/06 Javascript
vue随机验证码组件的封装实现
2020/02/19 Javascript
用js实现放大镜效果
2020/10/28 Javascript
[01:13:46]iG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python中变量交换的例子
2014/08/25 Python
Python获取Linux系统下的本机IP地址代码分享
2014/11/07 Python
Python虚拟环境virtualenv的安装与使用详解
2017/05/28 Python
Python编程使用tkinter模块实现计算器软件完整代码示例
2017/11/29 Python
python Flask实现restful api service
2017/12/04 Python
python3反转字符串的3种方法(小结)
2019/11/07 Python
python的range和linspace使用详解
2019/11/27 Python
Python任务调度利器之APScheduler详解
2020/04/02 Python
通过Python扫描代码关键字并进行预警的实现方法
2020/05/24 Python
Python如何急速下载第三方库详解
2020/11/02 Python
研修第一天随笔感言
2014/02/15 职场文书
理发店策划方案
2014/06/05 职场文书
股东合作协议书
2014/09/12 职场文书