基于keras 模型、结构、权重保存的实现


Posted in Python onJanuary 24, 2020

如何将训练好的网络进行保存,我们可以用pickle或cPickle来保存Keras模型,同时我们可以用下面的方法:

一、保存整个模型

model.save(filepath)将Keras模型和权重保存在一个HDF5文件中,该文件将包含:

模型的结构

模型的权重

训练配置(损失函数,优化器,准确率等)

优化器的状态,以便于从上次训练中断的地方

前提是已经安装python的h5py包.

from keras.models import load_model

当我们再一次使用时可以model.load_model(filepath)载入模型

二、保存模型的结构

model.to_jason()将模型序列化保存为json文件,里面记录了网络的整体结构, 各个层的参数设置等信息. 将json字符串保存到文件.

open(‘filename.json','w').write(json_string)
from keras.models import model_form_json
json_string=open('filename.json').read()

model=model_from_json(json_string)

除了json格式,还可以保存为yaml格式的字符串,形式与JSON一样

三、保存模型权重

model.save_weights()

我们经过调参后网络的输出精度比较满意后,可以将训练好的网络权重参数保存下 来.可通过下面的代码利用HDF5进行保存

model.save_weights(‘model_weights.h5')

使用的时加载模型:

model.load_weights(‘model_weights.h5')

如果你需要加载权重到不同的网络结构(有些层一样)中,例如fine-tune或transfer-learning,你可以通过层名字来加载模型:

model.load_weights('my_model_weights.h5', by_name=True)

因此我们建模时最好给每个层定义名字

以上就是我们保存模型的三种方法,需要我们在实践时多总结。

这篇基于keras 模型、结构、权重保存的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python正则表达式之作业计算器
Mar 18 Python
Python中enumerate()函数编写更Pythonic的循环
Mar 06 Python
Python实现调用另一个路径下py文件中的函数方法总结
Jun 07 Python
Python实现提取XML内容并保存到Excel中的方法
Sep 01 Python
python实现自动获取IP并发送到邮箱
Dec 26 Python
python给微信好友定时推送消息的示例
Feb 20 Python
Python写一个基于MD5的文件监听程序
Mar 11 Python
python3.6下Numpy库下载与安装图文教程
Apr 02 Python
Python Django 页面上展示固定的页码数实现代码
Aug 21 Python
关于Python3 lambda函数的深入浅出
Nov 27 Python
Python Django中间件使用原理及流程分析
Jun 13 Python
Python描述数据结构学习之哈夫曼树篇
Sep 07 Python
Python 文件数据读写的具体实现
Jan 24 #Python
利用keras加载训练好的.H5文件,并实现预测图片
Jan 24 #Python
keras模型可视化,层可视化及kernel可视化实例
Jan 24 #Python
keras 特征图可视化实例(中间层)
Jan 24 #Python
基于keras输出中间层结果的2种实现方式
Jan 24 #Python
tensorflow 保存模型和取出中间权重例子
Jan 24 #Python
tensorflow 模型权重导出实例
Jan 24 #Python
You might like
留言板翻页的实现详解
2006/10/09 PHP
附件名前加网站名
2008/03/23 PHP
php Smarty 字符比较代码
2011/02/27 PHP
PHP抓取淘宝商品的用户晒单评论+图片+搜索商品列表实例
2016/04/14 PHP
PHP版单点登陆实现方案的实例
2016/11/17 PHP
禁止拷贝网页内容的js代码
2014/01/22 Javascript
js sort 二维数组排序的用法小结
2014/01/24 Javascript
js实现图片旋转的三种方法
2014/04/10 Javascript
JS实现网站菜单拖拽移位效果的方法
2015/09/24 Javascript
jQuery实现的导航动画效果(附demo源码)
2016/04/01 Javascript
Bootstrap框架动态生成Web页面文章内目录的方法
2016/05/12 Javascript
浅谈jQuery中的checkbox问题
2016/08/10 Javascript
node.js express安装及示例网站搭建方法(分享)
2016/08/22 Javascript
node网页分段渲染详解
2016/09/05 Javascript
详解webpack require.ensure与require AMD的区别
2017/12/13 Javascript
说说node中的可读流和可写流的区别
2018/06/01 Javascript
如何利用ES6进行Promise封装总结
2019/02/11 Javascript
使用webpack构建应用的方法步骤
2019/03/04 Javascript
javascript使用substring实现的展开与收缩文字功能示例
2019/06/17 Javascript
JavaScript跳出循环的三种方法(break, return, continue)
2019/07/30 Javascript
vue el-table实现自定义表头
2019/12/11 Javascript
[01:08:48]LGD vs OG 2018国际邀请赛淘汰赛BO3 第三场 8.25
2018/08/29 DOTA
Python运算符重载用法实例
2015/05/28 Python
Python实现Pig Latin小游戏实例代码
2018/02/02 Python
python中字符串的操作方法大全
2018/06/03 Python
python与caffe改变通道顺序的方法
2018/08/04 Python
Python构建图像分类识别器的方法
2019/01/12 Python
Python多版本开发环境管理工具介绍
2019/07/03 Python
解决Pycharm双击图标启动不了的问题(JetBrains全家桶通用)
2020/08/07 Python
HTML5之SVG 2D入门2—图形绘制(基本形状)介绍及使用
2013/01/30 HTML / CSS
香港现代设计家具品牌:Ziinlife Furniture
2018/11/13 全球购物
珍珠鸟教学反思
2014/02/01 职场文书
超市总经理岗位职责
2014/02/02 职场文书
科研课题实施方案
2014/03/18 职场文书
2015年酒店销售部工作总结
2015/07/24 职场文书
30岁前绝不能错过的10本书
2019/08/08 职场文书