keras load model时出现Missing Layer错误的解决方式
问题描述:训练结束后,保存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错误的解决方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
keras 解决加载lstm+crf模型出错的问题
错误展示 new_model = load_model("model.h5") 报错: 1.keras load_model valueError: Unknown Layer :CRF 2.keras load_model valueError: Unknown loss function:crf_loss 错误修改 1.load_model修改源码:custom_objects = None 改为 def load_model(filepath, custom_objects, c
-
关于keras中keras.layers.merge的用法说明
旧版本中: from keras.layers import merge merge6 = merge([layer1,layer2], mode = 'concat', concat_axis = 3) 新版本中: from keras.layers.merge import concatenate merge = concatenate([layer1, layer2], axis=3) 补充知识:keras输入数据的方法:model.fit和model.fit_generator 1.第一
-
keras 获取某层的输入/输出 tensor 尺寸操作
获取单输入尺寸,该层只被使用了一次. import keras from keras.layers import Input, LSTM, Dense, Conv2D from keras.models import Model a = Input(shape=(32, 32, 3)) b = Input(shape=(64, 64, 3)) conv = Conv2D(16, (3, 3), padding='same') conved_a = conv(a) # 到目前为止只有一个输入,以下
-
使用Keras加载含有自定义层或函数的模型操作
当我们导入的模型含有自定义层或者自定义函数时,需要使用custom_objects来指定目标层或目标函数. 例如: 我的一个模型含有自定义层"SincConv1D",需要使用下面的代码导入: from keras.models import load_model model = load_model('model.h5', custom_objects={'SincConv1D': SincConv1D}) 如果不加custom_objects指定目标层Layer,则会出现以下报错:
-
keras load model时出现Missing Layer错误的解决方式
问题描述:训练结束后,保存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() mode
-
Keras load_model 导入错误的解决方式
在使用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指定文件夹中的文件(踩坑) 我们一般保存模型和加载模
-
Ubuntu VPS中wordpress网站打开时提示”建立数据库连接错误”的解决办法
一.发现问题 在尝试编辑博客站点的Wordpress主题时,突然发现博客站点无法连接:刷新后提示"建立数据库连接错误"之类的错误.自然想到是mysql可能出错了,所以就登陆了VPS主机,尝试启动mysql服务,但是提示failed. 二.解决方法 1.打开/var/log/mysql/error.log文件,查看出错日志.在阅读日志时发现第一条错误提示是:[ERROR] Can't open the mysql.plugin table. Please run mysql_upgrad
-
django 连接数据库出现1045错误的解决方式
根据菜鸟教程Django教程学习,运行"python manage.py migrate" 报错,出现 django.db.utils.OperationalError: (1045, "Access denied for user '账号'@'localhost' (using password: YES)") 错误. 这种错误指的是连接数据库时账号密码错误. 1.只需要修改setting.py文件里的DATABASES即可:(按照图中注释修改) DATABASE
-
Vue打包部署到Nginx时,css样式不生效的解决方式
今天在将使用Vue-cli编写的前端项目部署到Nginx的时候发生了一件很困扰的问题: Vue-cli项目在本地 使用 npm run dev的时候,页面样式是可以正常加载出来的,但是我将Vue-cli项目通过npm run build 打包生成的 dist 目录部署到Nginx之后,通过访问是无法加载出来样式的. 于是乎,在网上开始寻找资料,发现大部分前辈的解决方案都是在,config的文件夹中的index.js assetsRoot: path.resolve(__dirname, '../
-
vue中提示$index is not defined错误的解决方式
今天学习Vue中遇到了一个报错信息:$index is not defined,是我写了个for循环在HTML中,然后是因为版本的问题 下面是解决方法: 原来的是 v-for="person in items" v-on:click="deletePerson($index)"//这个仅仅适用于1.0版本,不要采坑了同学们 这个在Vue1.0版本中式适用的可以直接使用$index,但是在2.0是不适合的 在Vue 2.0版本中获取索引我们需要通过 v-for = &
-
Python开发时报TypeError: ‘int‘ object is not iterable错误的解决方式
目录 前言 错误原因 案例1: 案例2: 错误解决方案 案例1解决方案: 案例2解决方案: 结论 前言 当我们编写任何程序时,都会遇到一些错误,会让我们有挫败感,所以我有一个解决方案给你. 今天在这篇文章中,我们将讨论错误类型error: 'int' object is not iterable. 我们将讨论为什么会出现此错误以及此错误的一些可能解决方案.请务必阅读到最后,以节省大量调试此错误的时间. 首先,让我们了解“iterable”(可迭代)一词的含义? 可迭代是我们可以从中获取值并相应地
-
ASP.NET输出PNG图片时出现GDI+一般性错误的解决方法
以下是原文: Code: 复制代码 代码如下: Response.Clear(); Response.ContentType = "image/PNG"; img.Save(Response.OutputStream, ChartFormat.Png); 竟然出现异常,是GDI+一般性错误.但是如果格式是 Code: 复制代码 代码如下: Response.ContentType = "image/jpeg"; 就不会报错. 好在以前遇到过,改成 Code: 复制代
-
@vue/cli4升级@vue/cli5 node.js polyfills错误的解决方式
目录 一.错误描述 二.错误日志 1.日志内容: 2.错误原因 3.解决方法[可以使用的方法] 4.解决办法[存在问题,需要研究还] 总结 一.错误描述 因前端项目做的少,今天用 vue脚手架创建项目选择了 @vue/cli 5.0 版本,在编译项目时出现如下错误: 二.错误日志 1.日志内容: 错误1: error in ./node_modules/jwa/index.js Module not found: Error: Can't resolve 'crypto' in 'H:\iWo
-
让sql2005运行在独立用户下出现 WMI 提供程序错误的解决方式
今天服务器重新安装mssql2005版本,为了安全让mssql2005运行在独立用户下,权限也没错误,但竟然出现了以下错误: --------------------------- WMI 提供程序错误 --------------------------- 警告: 您还有 %1 的时间注销,如果您 在此时间到之后仍没有注销,您的会话 将会断开,任何打开的文件或设备 就可能丢失数据. [0x80070d59] --------------------------- 确定 ------------
随机推荐
- java 利用java反射机制动态加载类的简单实现
- PHP实现的基于单向链表解决约瑟夫环问题示例
- 搞定windows关机慢 等待时间过长的问题
- js动态调用css属性的小规律及实例说明
- Ubuntu下MySQL中文乱码的问题解决
- Python装饰器decorator用法实例
- 不使用Math.random方法生成随机数(随机数生成器)
- PHP中使用localhost连接Mysql不成功的解决方法
- 深入理解JavaScript系列(38):设计模式之职责链模式详解
- react-router4 嵌套路由的使用方法
- 数组与类使用PHP的可变变量名需要的注意的问题
- 归并排序的原理及java代码实现
- 详解Spring MVC拦截器实现session控制
- C#多线程与异步的区别详解
- Python 机器学习库 NumPy入门教程
- 详解python数据结构和算法
- JavaScript中Array方法你该知道的正确打开方法
- 微信小程序WebSocket实现聊天对话功能
- C++判断主机是否处于联网状态
- Golang 函数执行时间统计装饰器的一个实现详解