tensorflow 模型权重导出实例


Posted in Python onJanuary 24, 2020

tensorflow在保存权重模型时多使用tf.train.Saver().save 函数进行权重保存,保存的ckpt文件无法直接打开,不利于将模型权重导入到其他框架使用(如Caffe、Keras等)。

好在tensorflow提供了相关函数 tf.train.NewCheckpointReader 可以对ckpt文件进行权重查看,因此可以通过该函数进行数据导出。

import tensorflow as tf
import h5py

cpktLogFileName = r'./checkpoint/checkpoint' #cpkt 文件路径
with open(cpktLogFileName, 'r') as f:
  #权重节点往往会保留多个epoch的数据,此处获取最后的权重数据   
  cpktFileName = f.readline().split('"')[1]   

h5FileName = r'./model/net_classification.h5'

reader = tf.train.NewCheckpointReader(cpktFileName)
f = h5py.File(h5FileName, 'w')
t_g = None
for key in sorted(reader.get_variable_to_shape_map()):
  # 权重名称需根据自己网络名称自行修改
  if key.endswith('w') or key.endswith('biases'):
    keySplits = key.split(r'/')
    keyDict = keySplits[1] + '/' + keySplits[1] + '/' + keySplits[2]
    f[keyDict] = reader.get_tensor(key)

以上这篇tensorflow 模型权重导出实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中常用检测字符串相关函数汇总
Apr 15 Python
Python中每次处理一个字符的5种方法
May 21 Python
python rsa 加密解密
Mar 20 Python
Python 中 Virtualenv 和 pip 的简单用法详解
Aug 18 Python
python测试mysql写入性能完整实例
Jan 18 Python
python TCP Socket的粘包和分包的处理详解
Feb 09 Python
Django中Forms的使用代码解析
Feb 10 Python
python实现彩色图转换成灰度图
Jan 15 Python
python3实现在二叉树中找出和为某一值的所有路径(推荐)
Dec 26 Python
Python基于Dlib的人脸识别系统的实现
Feb 26 Python
python3实现简单飞机大战
Nov 29 Python
总结Pyinstaller打包的高级用法
Jun 28 Python
在Tensorflow中查看权重的实现
Jan 24 #Python
tensorflow求导和梯度计算实例
Jan 23 #Python
Tensorflow的梯度异步更新示例
Jan 23 #Python
在Tensorflow中实现梯度下降法更新参数值
Jan 23 #Python
Tensorflow实现部分参数梯度更新操作
Jan 23 #Python
将tensorflow模型打包成PB文件及PB文件读取方式
Jan 23 #Python
使用tensorflow显示pb模型的所有网络结点方式
Jan 23 #Python
You might like
PHP安装问题
2006/10/09 PHP
一个图形显示IP的PHP程序代码
2007/10/19 PHP
PHP扩展编写点滴 技巧收集
2010/03/09 PHP
PHP中数字检测is_numeric与ctype_digit的区别介绍
2012/10/04 PHP
解析php获取字符串的编码格式的方法(函数)
2013/06/21 PHP
php微信公众号开发(4)php实现自定义关键字回复
2016/12/15 PHP
老生常谈文本文件和二进制文件的区别
2017/02/27 PHP
Yii2中添加全局函数的方法分析
2017/05/04 PHP
如何解决PHP获取不到SESSION信息之一般情况
2019/10/10 PHP
锋利的jQuery 要点归纳(三) jQuery中的事件和动画(上:事件篇)
2010/03/24 Javascript
巧用局部变量提升javascript性能
2014/02/24 Javascript
第一次动手实现bootstrap table分页效果
2016/09/22 Javascript
Javascript基础回顾之(一) 类型
2017/01/31 Javascript
js 转义字符及URI编码详解
2017/02/28 Javascript
react.js CMS 删除功能的实现方法
2017/04/17 Javascript
node.js 抓取代理ip实例代码
2017/04/30 Javascript
详解AngularJS用Interceptors来统一处理HTTP请求和响应
2017/06/08 Javascript
Vue.js实现的表格增加删除demo示例
2018/05/22 Javascript
Vue.js路由实现选项卡简单实例
2019/07/24 Javascript
[01:02:26]DOTA2-DPC中国联赛 正赛 SAG vs RNG BO3 第二场 1月18日
2021/03/11 DOTA
用map函数来完成Python并行任务的简单示例
2015/04/02 Python
Django全局启用登陆验证login_required的方法
2020/06/02 Python
html5中如何将图片的绝对路径转换成文件对象
2018/01/11 HTML / CSS
联想香港官方网站及网店:Lenovo香港
2018/04/13 全球购物
Harman Audio官方商店:购买JBL、Harman Kardon、Infinity和AKG
2019/12/05 全球购物
写出二分查找算法的两种实现
2013/05/13 面试题
市级三好学生事迹材料
2014/08/27 职场文书
2015年大学元旦晚会活动策划书
2014/12/09 职场文书
初中英语教师个人工作总结
2015/02/09 职场文书
小学运动会报道稿
2015/07/22 职场文书
小学思想品德教学反思
2016/02/24 职场文书
2019年自助餐厅创业计划书模板
2019/08/22 职场文书
彻底理解golang中什么是nil
2021/04/29 Golang
在 SQL 语句中处理 NULL 值的方法
2021/06/07 SQL Server
MySQL的安装与配置详细教程
2021/06/26 MySQL
使用python绘制横竖条形图
2022/04/21 Python