基于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使用的数据库从MySQL迁移到PostgreSQL的教程
Apr 11 Python
Python、PyCharm安装及使用方法(Mac版)详解
Apr 28 Python
python实战之实现excel读取、统计、写入的示例讲解
May 02 Python
python字符串string的内置方法实例详解
May 14 Python
完美解决Python 2.7不能正常使用pip install的问题
Jun 12 Python
Python实现获取邮箱内容并解析的方法示例
Jun 16 Python
Python实现的批量修改文件后缀名操作示例
Dec 07 Python
Python使用Selenium爬取淘宝异步加载的数据方法
Dec 17 Python
利用pyecharts实现地图可视化的例子
Aug 12 Python
python retrying模块的使用方法详解
Sep 25 Python
Python values()与itervalues()的用法详解
Nov 27 Python
基于Python-Pycharm实现的猴子摘桃小游戏(源代码)
Feb 20 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
黑夜路人出的几道php笔试题
2009/08/04 PHP
PHP DataGrid 实现代码
2009/08/12 PHP
PHP封装的多文件上传类实例与用法详解
2017/02/07 PHP
PHP容器类的两种实现方式示例
2019/07/24 PHP
javascript add event remove event
2008/04/07 Javascript
使用js声明数组,对象在jsp页面中(获得ajax得到json数据)
2013/11/05 Javascript
javascript中字符串拼接详解
2014/09/26 Javascript
AngularJS入门教程之服务(Service)
2016/07/27 Javascript
javascript回到顶部特效
2016/07/30 Javascript
通过BootStrap-select插件 js jQuery控制select属性变化
2017/01/03 Javascript
讲解vue-router之什么是动态路由
2018/05/28 Javascript
详解在Angular4中使用ng2-baidu-map的方法
2019/06/19 Javascript
javascript创建元素和删除元素实例小结
2019/06/19 Javascript
Element-UI 使用el-row 分栏布局的教程
2020/10/26 Javascript
python self,cls,decorator的理解
2009/07/13 Python
Django ORM 常用字段与不常用字段汇总
2019/08/09 Python
决策树剪枝算法的python实现方法详解
2019/09/18 Python
使用python实现希尔、计数、基数基础排序的代码
2019/12/25 Python
html5 canvas简单封装一个echarts实现不了的饼图
2018/06/12 HTML / CSS
深入理解HTML5定时器requestAnimationFrame的使用
2018/12/12 HTML / CSS
印度领先的在线时尚商店:Koovs
2016/08/28 全球购物
KEETSA环保床垫:更好的睡眠,更好的生活!
2016/11/24 全球购物
台湾旅游网站:灿星旅游
2018/10/11 全球购物
俄罗斯韩国化妆品网上商店:Cosmasi.ru
2019/10/31 全球购物
什么是"引用"?申明和使用"引用"要注意哪些问题?
2016/03/03 面试题
应届生的求职推荐信范文
2013/11/30 职场文书
中医临床专业自我鉴定范文
2014/01/15 职场文书
大学同学聚会邀请函
2014/01/19 职场文书
关于环保的建议书400字
2014/03/12 职场文书
心理咨询专业自荐信
2014/07/07 职场文书
2014年办公室主任工作总结
2014/11/12 职场文书
2015年幼儿园元旦亲子活动方案
2014/12/09 职场文书
解决MultipartFile.transferTo(dest) 报FileNotFoundExcep的问题
2021/07/01 Java/Android
MySQL RC事务隔离的实现
2022/03/31 MySQL
MySQL数据库之内置函数和自定义函数 function
2022/06/16 MySQL
Oracle删除归档日志及添加定时任务
2022/06/28 Oracle