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 Django批量导入数据
Mar 25 Python
今天 平安夜 Python 送你一顶圣诞帽 @微信官方
Dec 25 Python
Python爬取十篇新闻统计TF-IDF
Jan 03 Python
Python常见的pandas用法demo示例
Mar 16 Python
详解爬虫被封的问题
Apr 23 Python
详解PyCharm+QTDesigner+PyUIC使用教程
Jun 13 Python
pandas删除行删除列增加行增加列的实现
Jul 06 Python
基于python监控程序是否关闭
Jan 14 Python
Python3基本输入与输出操作实例分析
Feb 14 Python
Python编程快速上手——strip()函数的正则表达式实现方法分析
Feb 29 Python
使用anaconda安装pytorch的实现步骤
Sep 03 Python
提高python代码运行效率的一些建议
Sep 29 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
星际争霸教主Flash的ID由来:你永远不会知道他之前的ID是www!
2019/01/18 星际争霸
php字符编码转换之gb2312转为utf8
2013/10/28 PHP
php在数组中查找指定值的方法
2015/03/17 PHP
Joomla实现组件中弹出一个模式(modal)窗口的方法
2016/05/04 PHP
JavaScript弹簧振子超简洁版 完全符合能量守恒,胡克定理
2009/10/25 Javascript
五段实用的js高级技巧
2011/12/20 Javascript
扩展IE中一些不兼容的方法如contains、startWith等等
2014/01/09 Javascript
js中的cookie的读写操作示例详解
2014/04/17 Javascript
教你如何终止JQUERY的$.AJAX请求
2016/02/23 Javascript
用NODE.JS中的流编写工具是要注意的事项
2016/03/01 Javascript
JavaScript中实现键值对应的字典与哈希表结构的示例
2016/06/12 Javascript
基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路详解
2016/07/18 Javascript
JS中利用localStorage防止页面动态添加数据刷新后数据丢失
2017/03/10 Javascript
微信小程序图片轮播组件gallery slider使用方法详解
2018/01/31 Javascript
解决vue 更改计算属性后select选中值不更改的问题
2018/03/02 Javascript
vue中如何让子组件修改父组件数据
2018/06/14 Javascript
vue项目实现github在线预览功能
2018/06/20 Javascript
详解Vue 动态组件与全局事件绑定总结
2018/11/11 Javascript
elementUI 动态生成几行几列的方法示例
2019/07/11 Javascript
微信小程序图片右边加两行文字的代码
2020/04/23 Javascript
[01:50:49]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster BO3 第三场 1月24日
2021/03/11 DOTA
编写自定义的Django模板加载器的简单示例
2015/07/21 Python
Python 的AES加密与解密实现
2019/07/09 Python
python从list列表中选出一个数和其对应的坐标方法
2019/07/20 Python
Pycharm+Python+PyQt5使用详解
2019/09/25 Python
Python数据可视化实现漏斗图过程图解
2020/07/20 Python
女士鞋子、包包和服装在线,第一款10美元:ShoeDazzle
2019/07/26 全球购物
大学生蛋糕店创业计划书
2014/01/13 职场文书
歌唱比赛策划方案
2014/06/06 职场文书
爱护公物演讲稿
2014/09/09 职场文书
会计稽核岗位职责
2015/04/13 职场文书
立春观后感
2015/06/18 职场文书
篮球赛闭幕式主持词
2015/07/03 职场文书
劳动合同变更协议书范本
2019/04/18 职场文书
JavaScript实现班级抽签小程序
2021/05/19 Javascript
详解非极大值抑制算法之Python实现
2021/06/28 Python