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中lambda与def用法对比实例分析
Apr 30 Python
python append、extend与insert的区别
Oct 13 Python
利用PyInstaller将python程序.py转为.exe的方法详解
May 03 Python
浅谈python中的__init__、__new__和__call__方法
Jul 18 Python
怎么使用pipenv管理你的python项目
Mar 12 Python
关于python多重赋值的小问题
Apr 17 Python
解决django后台样式丢失,css资源加载失败的问题
Jun 11 Python
python3.7 使用pymssql往sqlserver插入数据的方法
Jul 08 Python
python输出pdf文档的实例
Feb 13 Python
Pycharm安装并配置jupyter notebook的实现
May 18 Python
Python基于unittest实现测试用例执行
Nov 25 Python
教你如何使用Python Tkinter库制作记事本
Jun 10 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 sybase_fetch_array使用方法
2014/04/15 PHP
php环境无法上传文件的解决方法
2014/04/30 PHP
PHP中浮点数计算比较及取整不准确的解决方法
2015/01/09 PHP
PHP中让curl支持sock5的代码实例
2015/01/21 PHP
Zend Framework教程之视图组件Zend_View用法详解
2016/03/05 PHP
Centos 6.5下PHP 5.3安装ffmpeg扩展的步骤详解
2017/03/02 PHP
详解如何实现Laravel的服务容器的方法示例
2019/04/15 PHP
PHP实现的微信公众号扫码模拟登录功能示例
2019/05/30 PHP
基于Jquery的实现回车键Enter切换焦点
2010/09/14 Javascript
ExtJS4 组件化编程,动态加载,面向对象,Direct
2011/05/12 Javascript
jquery滚动组件(vticker.js)实现页面动态数据的滚动效果
2013/07/03 Javascript
jQuery Migrate 1.1.0 Released 注意事项
2014/06/14 Javascript
Javascript中封装window.open解决不兼容问题
2014/09/28 Javascript
jquery.validate使用时遇到的问题
2015/05/25 Javascript
使用Node.js为其他程序编写扩展的基本方法
2015/06/23 Javascript
jquery实现仿JqueryUi可拖动的DIV实例
2015/07/31 Javascript
jquery常用函数与方法汇总
2015/09/01 Javascript
纯javascript移动优先的幻灯片效果
2015/11/02 Javascript
JS基于ocanvas插件实现的简单画板效果代码(附demo源码下载)
2016/04/05 Javascript
JS中绑定事件顺序(事件冒泡与事件捕获区别)
2017/01/24 Javascript
探索webpack模块及webpack3新特性
2017/09/18 Javascript
jQuery实现鼠标响应式淘宝动画效果示例
2018/02/13 jQuery
Vue Promise的axios请求封装详解
2018/08/13 Javascript
使用Vue.js 和Chart.js制作绚丽多彩的图表
2019/06/15 Javascript
[02:10]三分钟回顾完美世界城市挑战赛
2019/01/24 DOTA
python有证书的加密解密实现方法
2014/11/19 Python
Python中map和列表推导效率比较实例分析
2015/06/17 Python
Python使用Tkinter实现机器人走迷宫
2018/01/22 Python
TensorFlow利用saver保存和提取参数的实例
2018/07/26 Python
tensorflow入门:TFRecordDataset变长数据的batch读取详解
2020/01/20 Python
html5构建触屏网站之touch事件介绍
2013/01/07 HTML / CSS
空指针到底是什么
2012/08/07 面试题
介绍一下SQL Server的全文索引
2013/08/15 面试题
医科大学生毕业的自我评价分享
2013/11/12 职场文书
课程设计的心得体会
2014/09/03 职场文书
基于Python实现的购物商城管理系统
2021/04/27 Python