keras的load_model实现加载含有参数的自定义模型


Posted in Python onJune 22, 2020

网上的教程大多数是教大家如何加载自定义模型和函数,如下图

keras的load_model实现加载含有参数的自定义模型

这个SelfAttention层是在训练过程自己定义的一个class,但如果要加载这个自定义层,需要在load_model里添加custom_objects字典,这个自定义的类,不要用import ,最好是直接复制进再训练的模型中,这些是基本教程。

------------------分割线讲重点------------------

如果直接运行上面的代码,会出现一个init初始化错误,如下图,

keras的load_model实现加载含有参数的自定义模型

再来看看 这个SelfAttention 自定义的类的初始化

keras的load_model实现加载含有参数的自定义模型

这就说明再调用这个类的时候,输入的ch=256并不会初始化这个类,需要先自定义好初始化值,如下图

keras的load_model实现加载含有参数的自定义模型

调用方式不变

keras的load_model实现加载含有参数的自定义模型

这样问题就解决啦!

补充知识:keras load model的时候,报错('Keyword argument not understood:', u'******')如何解决

由于keras不同版本的API有变化,因此在一个keras版本下训练的模型在另一个keras版本下加载时,可能会出现诸如('Keyword argument not understood:', u'data_format')等报错。

通过打开*.h5文件,查看该模型训练所用环境,再安装该环境即可解决报错。

查看Keras Model所用的Keras环境的方法

import h5py

f = h5py.File('Model.h5', 'r')
print(f.attrs.get('keras_version'))

根据输出的keras版本安装对应版本的keras即可解决加载问题。

以上这篇keras的load_model实现加载含有参数的自定义模型就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 基础学习第二弹 类属性和实例属性
Aug 27 Python
python测试驱动开发实例
Oct 08 Python
浅谈Python类的__getitem__和__setitem__特殊方法
Dec 25 Python
利用Python实现Windows定时关机功能
Mar 21 Python
Python标准库之itertools库的使用方法
Sep 07 Python
Python实现批量压缩图片
Jan 25 Python
Python获取二维矩阵每列最大值的方法
Apr 03 Python
Python3中编码与解码之Unicode与bytes的讲解
Feb 28 Python
在pytorch中动态调整优化器的学习率方式
Jun 24 Python
使用Keras预训练好的模型进行目标类别预测详解
Jun 27 Python
python Polars库的使用简介
Apr 21 Python
Python初识逻辑与if语句及用法大全
Aug 07 Python
python GUI模拟实现计算器
Jun 22 #Python
keras CNN卷积核可视化,热度图教程
Jun 22 #Python
python实现斗地主分牌洗牌
Jun 22 #Python
解决Keras使用GPU资源耗尽的问题
Jun 22 #Python
Keras - GPU ID 和显存占用设定步骤
Jun 22 #Python
Python 基于jwt实现认证机制流程解析
Jun 22 #Python
python中format函数如何使用
Jun 22 #Python
You might like
历史证明,懒惰才是推动科学发展技术进步的动力
2021/03/02 无线电
ASP和PHP都是可以删除自身的
2007/04/09 PHP
php+iframe实现隐藏无刷新上传文件
2012/02/10 PHP
thinkphp实现数组分页示例
2014/04/13 PHP
使用Composer安装Yii框架的方法
2016/03/15 PHP
PHP从二维数组得到N层分类树的实现代码
2016/10/11 PHP
php 判断页面或图片是否经过gzip压缩的方法
2017/04/05 PHP
锋利的jQuery 第三章章节总结的例子
2010/03/23 Javascript
Array.prototype.slice 使用扩展
2010/06/09 Javascript
javascript中input中readonly和disabled区别介绍
2012/10/23 Javascript
javascript简单事件处理和with用法介绍
2013/09/16 Javascript
js中的异常处理try...catch使用介绍
2013/09/21 Javascript
鼠标拖拽移动子窗体的JS实现
2014/02/25 Javascript
js函数与php函数的区别实例浅析
2015/01/12 Javascript
利用Node.js+Koa框架实现前后端交互的方法
2017/02/27 Javascript
Angular.js中ng-include用法及多标签页面的实现方式详解
2017/05/07 Javascript
React + webpack 环境配置的方法步骤
2017/09/07 Javascript
使用原生js+canvas实现模拟心电图的实例
2017/09/20 Javascript
微信小程序request请求后台接口php的实例详解
2017/09/20 Javascript
JS实现前端页面的搜索功能
2018/06/12 Javascript
javascript和php使用ajax通信传递JSON的实例
2018/08/21 Javascript
在vue中created、mounted等方法使用小结
2020/07/21 Javascript
[01:32]DOTA2 2015国际邀请赛中国区预选赛第四日战报
2015/05/29 DOTA
在Python的Tornado框架中实现简单的在线代理的教程
2015/05/02 Python
python清理子进程机制剖析
2017/11/23 Python
python读取文件名称生成list的方法
2018/04/27 Python
Python将8位的图片转为24位的图片实现方法
2018/10/24 Python
python装饰器常见使用方法分析
2019/06/26 Python
python中time库的实例使用方法
2019/10/31 Python
详解CSS3 rem(设置字体大小) 教程
2017/11/21 HTML / CSS
自我评价是什么
2014/01/04 职场文书
关于人生的感言
2014/01/17 职场文书
幼儿园安全生产月活动总结
2014/07/05 职场文书
防灾减灾日活动总结
2014/08/26 职场文书
SqlServer数据库远程连接案例教程
2021/07/15 SQL Server
Opencv实现二维直方图的计算及绘制
2021/07/21 Python