keras的load_model实现加载含有参数的自定义模型
作者:月下滑板鞋~ 发布时间:2021-03-05 08:18:56
标签:keras,load,model,自定义,模型
网上的教程大多数是教大家如何加载自定义模型和函数,如下图
这个SelfAttention层是在训练过程自己定义的一个class,但如果要加载这个自定义层,需要在load_model里添加custom_objects字典,这个自定义的类,不要用import ,最好是直接复制进再训练的模型中,这些是基本教程。
------------------分割线讲重点------------------
如果直接运行上面的代码,会出现一个init初始化错误,如下图,
再来看看 这个SelfAttention 自定义的类的初始化
这就说明再调用这个类的时候,输入的ch=256并不会初始化这个类,需要先自定义好初始化值,如下图
调用方式不变
这样问题就解决啦!
补充知识: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即可解决加载问题。
来源:https://blog.csdn.net/qq_38855907/article/details/105472265
0
投稿
猜你喜欢
- Xajax是PHP一个不用刷新或者跳到其他页面,就能通过点击组件等与后台后台数据库交互的技术Xajax是php的一个插件,要想使用Xajax
- 当然,页面最好不要刷新,但是,拷贝一下浏览器的链接,又希望是下次能定位到你播发的那个视频。方法很简单,改变一下 url 的 fragment
- DataFrame 是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。DataFrame 既有行
- 开篇先明义:lambda是表达式,而def函数是语句代码块所以lambda其实就是一个稍微高级一点的式子而已,只不过这个式子比较长,而且还会
- 1、可以使用"+"号完成操作输出为:[1, 2, 3, 8, 'google', 'com
- 1.环境设置1.1gradio安装需要安装 gradio,安装办法就是 pip install gradio2.ffmpeg安装再次需要加入
- 关于opencvOpenCV 是 Intel 开源计算机视觉库 (Computer Version) 。它由一系列 C 函数和少量 C++
- 问题的起源早些时候使用with实现了一版全局进程锁,希望实现以下效果:with CacheLock("test_lock"
- 简介在日常的Python开发中,处理时间和日期的需求是非常常见的。尽管Python内置了 datetime 和 time 模块,但在某些情况
- mysql数据库数据表和数据表关联--问题??用户数据表user 字词作品数据表article 短信 message外键ID 主键,之间的关
- 简介:with是从Python2.5引入的一个新的语法,它是一种上下文管理协议,目的在于从流程图中把 try,except 和finally
- 概述Visdom:一个灵活的可视化工具,可用来对于 实时,富数据的 创建,组织和共享。支持Torch和Numpy还有pytorch。visd
- 网页可以说是网站构成的基本元素。当我们轻点鼠标,在网海中遨游,一幅幅精彩的网页会呈现在我们面前,那么,网页的精彩与否的因素是什么呢?色彩的搭
- 在这篇文章里,我们将会探索如何使用Python语言作为一个工具来检测Linux系统各种运行信息。让我们一起来学习吧。哪种Python?当我提
- 在编写一些小程序时,我需要比较两个字符串是否相同。一开始的思路是使用ord()函数获取字符的整数表示,但是调试过后发现,ord()函数传入的
- 这篇文章主要介绍了IOS苹果AppStore内购付款的服务器端php验证方法(使用thinkphp)。AppStore内购在app中支付的过
- 用QQ聊过天的朋友都对它的自动隐藏窗口功能爱不释手,它可以使窗口显得清爽整洁而且富有动感,笔者的几个朋
- python中迭代器和iter()函数迭代器为类序列对象提供了一个类序列的接口。python的迭代无缝地支持序列对象,而且它还允许程序员迭代
- 对于regex库的使用不难,因为本身就是python中自带的库,所以在调用上也是常见的库使用类型,大部分时候都是用于搜索上下文信息的,但是有
- 有时候,我们需要替换指定标签外的内容,而保留标签里面的内容不替换。比如当我们要在浏览器中显示出编辑器显示的原始格式时、需要将普通换行符“\n