解决Tensorflow2.0 tf.keras.Model.load_weights() 报错处理问题


Posted in Python onJune 12, 2020

错误描述:

1、保存模型:model.save_weights('./model.h5')

2、脚本重启

3、加载模型:model.load_weights('./model.h5')

4、模型报错:ValueError: You are trying to load a weight file containing 12 layers into a model with 0 layers.

问题分析:

模型创建后还没有编译,一般是在模型加载前调用model.build(input_shape), 但我通过Dataset将输入已经变为dict格式了,暂时没找这样输入怎么匹配input_shape参数

解决方法:

model.fit(train_dataset, epochs=0)

将epochs设为0,这样模型在编译的同时不会训练数据,减少耗费的时间,之后就可以正常加载保存的参数了

补充知识:调用Kears中kears.model.load_model方法遇到的问题和解决方法

之前一直使用tf和pytorch,就算是tf也是tf.estimator用得比较多,很少使用keras,最近尝试使用kears快速训练和部署一些分类任务,在使用load_model的时候遇到一些问题

问题1:

SystemError: unknown opcode

原因是因为模型定义用到了lambda

gap = Lambda(lambda x: x[0]/x[1], name = 'RescaleGAP')([gap_features, gap_mask])

我在python3.5的环境训练的模型,python3.6的环境load模型。两个环境的lambda有差异,这个问题。

问题2:

ValueError: Unknown metric function:****

我的错误是

ValueError: Unknown metric function:top_2_accuracy

因为在构建模型时,使用了自己定义的top_2_accuracy方法,所以在load_model时需要将top_2_accuracy做为参数传进去

from keras.models import load_model
from keras.metrics import top_k_categorical_accuracy
 
def top_2_accuracy(in_gt, in_pred):
  return top_k_categorical_accuracy(in_gt, in_pred, k=2)
 
model = load_model("model.h5",custom_objects={'top_2_accuracy': top_2_accuracy})

以上这篇解决Tensorflow2.0 tf.keras.Model.load_weights() 报错处理问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之深入变量和引用对象
Sep 24 Python
Python中使用Queue和Condition进行线程同步的方法
Jan 19 Python
Python断言assert的用法代码解析
Feb 03 Python
使用python绘制3维正态分布图的方法
Dec 29 Python
django框架使用orm实现批量更新数据的方法
Jun 21 Python
python点击鼠标获取坐标(Graphics)
Aug 10 Python
djano一对一、多对多、分页实例代码
Aug 16 Python
Python3使用PySynth制作音乐的方法
Sep 09 Python
用python中的matplotlib绘制方程图像代码
Nov 21 Python
Python 实现自动获取种子磁力链接方式
Jan 16 Python
如何利用python正则表达式匹配版本信息
Dec 09 Python
python使用XPath解析数据爬取起点小说网数据
Apr 22 Python
python + selenium 刷B站播放量的实例代码
Jun 12 #Python
解决Keras自带数据集与预训练model下载太慢问题
Jun 12 #Python
keras导入weights方式
Jun 12 #Python
keras读取h5文件load_weights、load代码操作
Jun 12 #Python
Python matplotlib 绘制双Y轴曲线图的示例代码
Jun 12 #Python
keras的siamese(孪生网络)实现案例
Jun 12 #Python
基于python实现模拟数据结构模型
Jun 12 #Python
You might like
基于php iconv函数的使用详解
2013/06/09 PHP
PHP中使用smarty生成静态文件的例子
2014/04/24 PHP
PHP简单实现“相关文章推荐”功能的方法
2014/07/19 PHP
CI(CodeIgniter)框架中URL特殊字符处理与SQL注入隐患分析
2019/02/28 PHP
js 日期转换成中文格式的函数
2009/07/07 Javascript
Extjs中使用extend(js继承) 的代码
2012/03/15 Javascript
js实现右下角可关闭最小化div(可用于展示推荐内容)
2013/06/24 Javascript
JS注释所产生的bug 即使注释也会执行
2013/11/19 Javascript
Flash图片上传组件 swfupload使用指南
2015/03/14 Javascript
JS解析XML文件和XML字符串详解
2015/04/17 Javascript
jquery实现通用的内容渐显Tab选项卡效果
2015/09/07 Javascript
js 截取或者替换字符串中的数字实现方法
2016/06/13 Javascript
详解angular中通过$location获取路径(参数)的写法
2017/03/21 Javascript
利用HBuilder打包前端开发webapp为apk的方法
2017/11/13 Javascript
css配合JavaScript实现tab标签切换效果
2018/10/11 Javascript
vue基础之data存储数据及v-for循环用法示例
2019/03/08 Javascript
使用jquery的cookie实现登录页记住用户名和密码的方法
2019/03/13 jQuery
Vue自定义表单内容检查rules实例
2020/10/30 Javascript
[03:52]显微镜下的DOTA2第三期——英雄在无聊的时候干什么
2014/06/20 DOTA
Python 爬虫学习笔记之多线程爬虫
2016/09/21 Python
python操作日志的封装方法(两种方法)
2019/05/23 Python
python Pandas如何对数据集随机抽样
2019/07/29 Python
Pytorch 神经网络—自定义数据集上实现教程
2020/01/07 Python
Python如何用filter函数筛选数据
2020/03/05 Python
django 解决扩展自带User表遇到的问题
2020/05/14 Python
详解Django中views数据查询使用locals()函数进行优化
2020/08/24 Python
Brookstone美国官网:独特新奇产品
2017/03/04 全球购物
数据管理员的自我评价分享
2013/11/15 职场文书
迟到检讨书800字
2014/01/13 职场文书
中小学教师继续教育心得体会
2016/01/19 职场文书
MySQL表的增删改查基础教程
2021/04/07 MySQL
详解JS ES6编码规范
2021/05/07 Javascript
Java实战之用Swing实现通讯录管理系统
2021/06/13 Java/Android
vue中data里面的数据相互使用方式
2022/06/05 Vue.js
基于Python编写一个监控CPU的应用系统
2022/06/25 Python
Redis+AOP+自定义注解实现限流
2022/06/28 Redis