keras load model时出现Missing Layer错误的解决方式


Posted in Python onJune 11, 2020

问题描述:训练结束后,保存model为hdf5和yaml格式的文件

yamlFilename = os.path.join(dir,filename)
yamlModel = model.toyaml()
with open(yamlFilename, "w") as yamlFile:
 yamlFile.write(yamlModel)

随后load model

with open(chkptFilename,'r') as f:
 model_yaml = f.read()
model = KM.model_from_yaml(model_yaml,customs_objects={"dict":dict})
model.load_weights(weightFilename)

但是报错

问题分析:

经过debug分析,原因出在model建立过程中前面lambda层的inbound_node列表中含有后面层,因此从上到下load时,会找不到后面层。重新建立一次model,然后用model.summary() 可以看出其中的原因。

出现这种情况,可能的原因在于,该lambda层在其他py文件中定义,然后import进来,前后多次用到这个lambda层的话,在模型编译过程中,该lambda层可能只编译了一次,前后层共用之,导致后面层结点出现在前面层的inbound_node列表中。

解决办法:

不要在其他py文件中自定义lambda层,直接将其定义在model建立的文件中。或者直接继承Layer层,在其他py文件中重新自定义该层。

补充知识:加载keras模型'tf' is not defined on load_model() - using lambda NameError: name 'tf' is not defined报错

解决方法如下:

import tensorflow as tf
import keras
model = keras.models.load_model('my_model.h5', custom_objects={'tf': tf})

以上这篇keras load model时出现Missing Layer错误的解决方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现rest请求api示例
Apr 22 Python
python任务调度实例分析
May 19 Python
python 系统调用的实例详解
Jul 11 Python
Python实现读取邮箱中的邮件功能示例【含文本及附件】
Aug 05 Python
Python使用min、max函数查找二维数据矩阵中最小、最大值的方法
May 15 Python
Python实现字典(dict)的迭代操作示例
Jun 05 Python
python 顺时针打印矩阵的超简洁代码
Nov 14 Python
Python设计模式之原型模式实例详解
Jan 18 Python
python接口自动化(十七)--Json 数据处理---一次爬坑记(详解)
Apr 18 Python
在Python中过滤Windows文件名中的非法字符方法
Jun 10 Python
django与vue的完美结合_实现前后端的分离开发之后在整合的方法
Aug 12 Python
python使用建议技巧分享(三)
Aug 18 Python
Pyinstaller加密打包应用的示例代码
Jun 11 #Python
解决keras加入lambda层时shape的问题
Jun 11 #Python
python opencv把一张图片嵌入(叠加)到另一张图片上的实现代码
Jun 11 #Python
keras slice layer 层实现方式
Jun 11 #Python
Spring http服务远程调用实现过程解析
Jun 11 #Python
keras Lambda自定义层实现数据的切片方式,Lambda传参数
Jun 11 #Python
python怎么提高计算速度
Jun 11 #Python
You might like
php实现编辑和保存文件的方法
2015/07/20 PHP
php微信开发之带参数二维码的使用
2016/08/03 PHP
PHP下的浮点运算不准的解决方法
2016/10/27 PHP
php使用include 和require引入文件的区别
2017/02/16 PHP
javascript实现划词标记+划词搜索功能
2007/03/06 Javascript
IE6下拉框图层问题探讨及解决
2014/01/03 Javascript
js密码强度校验
2015/11/10 Javascript
AngularJS 日期格式化详解
2015/12/23 Javascript
基于javascript实现图片左右切换效果
2016/01/25 Javascript
Jquery跨浏览器文本复制插件Zero Clipboard的使用方法
2016/02/28 Javascript
基于JavaScript实现文字超出部分隐藏
2016/02/29 Javascript
浅谈bootstrap源码分析之tab(选项卡)
2016/06/06 Javascript
JS实现复制功能
2017/03/01 Javascript
解决Node.js使用MySQL出现connect ECONNREFUSED 127.0.0.1:3306的问题
2017/03/09 Javascript
JavaScript脚本语言是什么_动力节点Java学院整理
2017/06/26 Javascript
Ajax请求时无法重定向的问题解决代码详解
2019/06/21 Javascript
javascript设计模式之装饰者模式
2020/01/30 Javascript
基于python的七种经典排序算法(推荐)
2016/12/08 Python
Python批量合并有合并单元格的Excel文件详解
2018/04/05 Python
Python实现简单层次聚类算法以及可视化
2019/03/18 Python
python中通过selenium简单操作及元素定位知识点总结
2019/09/10 Python
Python xml、字典、json、类四种数据类型如何实现互相转换
2020/05/27 Python
浅谈keras2 predict和fit_generator的坑
2020/06/17 Python
Python-openCV开运算实例
2020/07/05 Python
Python开发入门——迭代的基本使用
2020/09/03 Python
Spy++的使用方法及下载教程
2021/01/29 Python
使用CSS禁止textarea调整大小功能的方法
2015/03/13 HTML / CSS
CSS3实现div从下往上滑入滑出效果示例
2020/04/28 HTML / CSS
如何开发一个JQuery插件
2016/07/28 面试题
小学生安全演讲稿
2014/04/25 职场文书
教师四风自我剖析材料
2014/09/30 职场文书
企业财务人员岗位职责
2015/04/14 职场文书
护士旷工检讨书
2015/08/15 职场文书
再读《皇帝的新衣》的读后感悟!
2019/08/07 职场文书
JS数组的常用方法整理
2021/03/31 Javascript
常用的文件对应的MIME类型汇总
2022/04/26 HTML / CSS