使用Keras加载含有自定义层或函数的模型操作


Posted in Python onJune 10, 2020

当我们导入的模型含有自定义层或者自定义函数时,需要使用custom_objects来指定目标层或目标函数。

例如:

我的一个模型含有自定义层“SincConv1D”,需要使用下面的代码导入:

from keras.models import load_model
model = load_model('model.h5', custom_objects={'SincConv1D': SincConv1D})

如果不加custom_objects指定目标层Layer,则会出现以下报错:

ValueError: Unknown layer: SincConv1D

同样的,当我的模型含有自定义函数“my_loss”,需要使用下面的代码导入:

from keras.models import load_model
model = load_model('model.h5', custom_objects={'my_loss': my_loss})

补充知识:keras加载模型load_model报错——ValueError: Unknown layer: CRF

我就废话不多说了,大家还是直接看代码吧!

from keras.models import load_model
model = load_model(model_path)

会报错,需要在load_model函数中添加custom_objects参数,来声明自定义的层
(用keras搭建bilstm-crf,在训练模型时,使用的是:

from keras_contrib.layers.crf import CRF)

from keras_contrib.layers.crf import CRF, crf_loss, crf_viterbi_accuracy
model = load_model(model_path, custom_objects={"CRF": CRF, 'crf_loss': crf_loss,
                        'crf_viterbi_accuracy': crf_viterbi_accuracy})

以上这篇使用Keras加载含有自定义层或函数的模型操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现的生成随机迷宫算法核心代码分享(含游戏完整代码)
Jul 11 Python
Python中的super用法详解
May 28 Python
python实现多线程的方式及多条命令并发执行
Jun 07 Python
Python 正则表达式入门(初级篇)
Dec 07 Python
Python正则简单实例分析
Mar 21 Python
python的变量与赋值详细分析
Nov 08 Python
python+opencv实现高斯平滑滤波
Jul 21 Python
对pandas写入读取h5文件的方法详解
Dec 28 Python
eclipse创建python项目步骤详解
May 10 Python
在Python中过滤Windows文件名中的非法字符方法
Jun 10 Python
python读写Excel表格的实例代码(简单实用)
Dec 19 Python
Python ini文件常用操作方法解析
Apr 26 Python
keras 获取某层的输入/输出 tensor 尺寸操作
Jun 10 #Python
Python 字典中的所有方法及用法
Jun 10 #Python
在keras 中获取张量 tensor 的维度大小实例
Jun 10 #Python
Keras—embedding嵌入层的用法详解
Jun 10 #Python
Keras框架中的epoch、bacth、batch size、iteration使用介绍
Jun 10 #Python
Python3.9 beta2版本发布了,看看这7个新的PEP都是什么
Jun 10 #Python
JAVA及PYTHON质数计算代码对比解析
Jun 10 #Python
You might like
最简单的PHP程序--记数器
2006/10/09 PHP
php header()函数使用说明
2008/07/10 PHP
解析file_get_contents模仿浏览器头(user_agent)获取数据
2013/06/27 PHP
PHP实现今天是星期几的几种写法
2013/09/26 PHP
5种PHP创建数组的实例代码分享
2014/01/17 PHP
php保存二进制原始数据为图片的程序代码
2014/10/14 PHP
判断js对象是否拥有某一个属性的js代码
2013/08/16 Javascript
js点击文本框弹出可选择的checkbox复选框
2016/02/03 Javascript
AngularJS 过滤器(自带和自建)详解
2016/09/19 Javascript
js 实现获取name 相同的页面元素并循环遍历的方法
2017/02/14 Javascript
简单实现vue验证码60秒倒计时功能
2017/10/11 Javascript
对vue里函数的调用顺序介绍
2018/03/17 Javascript
vue打包的时候自动将px转成rem的操作方法
2018/06/20 Javascript
Vue中使用 setTimeout() setInterval()函数的问题
2018/09/13 Javascript
使用vue 国际化i18n 实现多实现语言切换功能
2018/10/11 Javascript
vue 实现走马灯效果
2019/10/28 Javascript
基于JavaScript实现简单的轮播图
2021/03/03 Javascript
web.py中调用文件夹内模板的方法
2014/08/26 Python
零基础写python爬虫之爬虫的定义及URL构成
2014/11/04 Python
Python中os.path用法分析
2015/01/15 Python
python获取局域网占带宽最大3个ip的方法
2015/07/09 Python
Python3.6正式版新特性预览
2016/12/15 Python
Python单例模式实例详解
2017/03/01 Python
关于Django显示时间你应该知道的一些问题
2017/12/25 Python
python实现Floyd算法
2018/01/03 Python
Linux CentOS Python开发环境搭建教程
2018/11/28 Python
Django中使用 Closure Table 储存无限分级数据
2019/06/06 Python
flask的orm框架SQLAlchemy查询实现解析
2019/12/12 Python
python3+opencv生成不规则黑白mask实例
2020/02/19 Python
python调用API接口实现登陆短信验证
2020/05/10 Python
python如何发送带有附件、正文为HTML的邮件
2021/02/27 Python
html5 迷宫游戏(碰撞检测)实例一
2013/07/25 HTML / CSS
公安纪律作风整顿剖析材料
2014/10/10 职场文书
创业项目大全(适合在家创业的项目)
2019/08/15 职场文书
如何利用JavaScript实现二叉搜索树
2021/04/02 Javascript
SQL Server中锁的用法
2022/05/20 SQL Server