基于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 相关文章推荐
Django日志模块logging的配置详解
Feb 14 Python
idea创建springMVC框架和配置小文件的教程图解
Sep 18 Python
Tesserocr库的正确安装方式
Oct 19 Python
python利用跳板机ssh远程连接redis的方法
Feb 19 Python
Python中numpy模块常见用法demo实例小结
Mar 16 Python
matplotlib实现区域颜色填充
Mar 18 Python
python面试题小结附答案实例代码
Apr 11 Python
python threading和multiprocessing模块基本用法实例分析
Jul 25 Python
python序列类型种类详解
Feb 26 Python
Django如何使用jwt获取用户信息
Apr 21 Python
浅析关于Keras的安装(pycharm)和初步理解
Oct 23 Python
解决Django transaction进行事务管理踩过的坑
Apr 24 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
重新封装zend_soap实现http连接安全认证的php代码
2011/01/12 PHP
php重定向的三种方法分享
2012/02/22 PHP
PHP实现仿百度文库,豆丁在线文档效果(word,excel,ppt转flash)
2016/03/10 PHP
php array_walk_recursive 使用自定的函数处理数组中的每一个元素
2016/11/16 PHP
PHP mysqli事务操作常用方法分析
2017/07/22 PHP
详解PHP素材图片上传、下载功能
2019/04/12 PHP
jquery复选框checkbox实现删除前判断
2014/04/20 Javascript
javascript的alert box在java中如何显示多行
2014/05/18 Javascript
使用vue.js编写蓝色拼图小游戏
2017/03/17 Javascript
详解vue-cil和webpack中本地静态图片的路径问题解决方案
2017/09/27 Javascript
iview日期控件,双向绑定日期格式的方法
2018/03/15 Javascript
vue计算属性及使用详解
2018/04/02 Javascript
Vue项目引进ElementUI组件的方法
2018/11/11 Javascript
JavaScript"模拟事件"的注意要点详解
2019/02/13 Javascript
Vue 组件注册实例详解
2019/02/23 Javascript
Vue3 中的数据侦测的实现
2019/10/09 Javascript
JavaScript之Blob对象类型的具体使用方法
2019/11/29 Javascript
angular *Ngif else用法详解
2020/12/15 Javascript
利用python程序生成word和PDF文档的方法
2017/02/14 Python
Python代码执行时间测量模块timeit用法解析
2020/07/01 Python
django rest framework使用django-filter用法
2020/07/15 Python
python利用platform模块获取系统信息
2020/10/09 Python
Python Selenium破解滑块验证码最新版(GEETEST95%以上通过率)
2021/01/29 Python
浅析Python模块之间的相互引用问题
2021/02/26 Python
如何用Java实现列出某个目录下的所有子目录
2015/07/20 面试题
优秀研究生自我鉴定
2013/12/04 职场文书
四查四看剖析材料
2014/02/14 职场文书
《三袋麦子》教学反思
2014/03/02 职场文书
小学生九一八纪念日83周年演讲稿500字
2014/09/17 职场文书
先进单位事迹材料
2014/12/25 职场文书
2015毕业生自我评价范文
2015/03/02 职场文书
2015年师德表现自我评价
2015/03/05 职场文书
心理健康教育主题班会
2015/08/13 职场文书
《彼得与狼》教学反思
2016/02/20 职场文书
Python使用OpenCV和K-Means聚类对毕业照进行图像分割
2021/06/11 Python
Django模型层实现多表关系创建和多表操作
2021/07/21 Python