tensorflow实现训练变量checkpoint的保存与读取


Posted in Python onFebruary 10, 2020

1.保存变量

先创建(在tf.Session()之前)saver

saver = tf.train.Saver(tf.global_variables(),max_to_keep=1)  #max_to_keep这个保证只保存最后一次training的训练数据

然后在训练的循环里面

checkpoint_path = os.path.join(Path, 'model.ckpt') saver.save(session, checkpoint_path, global_step=step) #这里的step是循环训练的次数,也就是第几次迭代

以下保存的变量文件

tensorflow实现训练变量checkpoint的保存与读取

2.变量读取

1.若要直接恢复所有变量可以

saver = tf.train.Saver(tf.global_variables())
moudke_file=tf.train.latest_checkpoint('PATH')
saver.restore(sess,moudke_file)

PATH是存放保存变量的路径,会自动找到最近保存的变量文件

2 若想读取其中一部分变量值

def read_checkpoint():
  w = []
  checkpoint_path = '/home/ximao/models/resnet3/variable_logs/model.ckpt-17000'
  reader = tf.train.NewCheckpointReader(checkpoint_path)
  var = reader.get_variable_to_shape_map()
  for key in var:
    if 'weights' in key and 'conv' in key and 'Mo' not in key:
      print('tensorname:', key)
  #   # print(reader.get_tensor(key))

3. 若想恢复其中一部分变量值到新网络

(1)首先你要先获取你想要赋值新网络变量的变量名,这里变量名不是一个字符串,而是<name,shape,dtype>这样的一个结构,

然后把你要赋值的元素转为张量,最后把值赋给你得到变量名 如下:

var=[v for v in weight_pruned if v.op.name=='WRN/conv1/weights']
conv1_temp=tf.convert_to_tensor(conv1,dtype=tf.float32)
sess.run(tf.assign(var[0],conv1_temp))

weight_pruned 存放的是你新网络中所有的变量

以上这篇tensorflow实现训练变量checkpoint的保存与读取就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
wxPython窗口的继承机制实例分析
Sep 28 Python
Python实现的简单文件传输服务器和客户端
Apr 08 Python
shelve  用来持久化任意的Python对象实例代码
Oct 12 Python
Python实现图片滑动式验证识别方法
Nov 09 Python
PyQt实现界面翻转切换效果
Apr 20 Python
对python读写文件去重、RE、set的使用详解
Dec 11 Python
Python及Pycharm安装方法图文教程
Aug 05 Python
python实现LRU热点缓存及原理
Oct 29 Python
python实现串口通信的示例代码
Feb 10 Python
Django设置Postgresql的操作
May 14 Python
通过代码实例了解Python sys模块
Sep 14 Python
OpenCV-Python模板匹配人眼的实例
Jun 08 Python
Python单元测试模块doctest的具体使用
Feb 10 #Python
简单了解django文件下载方式
Feb 10 #Python
TensorFlow Saver:保存和读取模型参数.ckpt实例
Feb 10 #Python
tensorflow实现读取模型中保存的值 tf.train.NewCheckpointReader
Feb 10 #Python
解决tensorflow添加ptb库的问题
Feb 10 #Python
使用TensorFlow直接获取处理MNIST数据方式
Feb 10 #Python
python如何实现单链表的反转
Feb 10 #Python
You might like
简单的PHP缓存设计实现代码
2011/09/30 PHP
PHP中几种常见的超时处理全面总结
2012/09/11 PHP
php 自定义错误日志实例详解
2016/11/12 PHP
Nigma vs Alliance BO5 第一场2.14
2021/03/10 DOTA
JQuery 网站换肤功能实现代码
2009/11/02 Javascript
jQuery阻止事件冒泡具体实现
2013/10/11 Javascript
js每隔5分钟执行一次ajax请求的实现方法
2013/11/27 Javascript
Node.js插件安装图文教程
2016/05/06 Javascript
浅谈jQuery中hide和fadeOut的区别 show和fadeIn的区别
2016/08/18 Javascript
微信小程序 定义全局数据、函数复用、模版等详细介绍
2016/10/27 Javascript
基于jQuery实现的幻灯图片切换
2016/12/02 Javascript
无阻塞加载js,防止因js加载不了影响页面显示的问题
2016/12/18 Javascript
bootstrap配合Masonry插件实现瀑布式布局
2017/01/18 Javascript
详解使用路由延迟加载 Angular 模块
2017/10/12 Javascript
详解Vue如何支持JSX语法
2017/11/10 Javascript
详解在Vue中使用TypeScript的一些思考(实践)
2018/07/06 Javascript
react PropTypes校验传递的值操作示例
2020/04/28 Javascript
jquery+css3实现的经典弹出层效果示例
2020/05/16 jQuery
Vue表单提交点击事件只允许点击一次的实例
2020/10/23 Javascript
python求众数问题实例
2014/09/26 Python
利用Pycharm断点调试Python程序的方法
2018/11/29 Python
Django用户认证系统 User对象解析
2019/08/02 Python
python编写俄罗斯方块
2020/03/13 Python
Python读取配置文件(config.ini)以及写入配置文件
2020/04/08 Python
html5手机端页面可以向右滑动导致样式受影响的问题
2018/06/20 HTML / CSS
Melissa香港官网:MDreams
2016/07/01 全球购物
什么是用户模式(User Mode)与内核模式(Kernel Mode) ?
2014/07/21 面试题
小学生考试获奖感言
2014/01/30 职场文书
另类冲刺标语
2014/06/24 职场文书
班子四风对照检查材料
2014/08/21 职场文书
研究生导师推荐信
2015/03/25 职场文书
2015年中学总务处工作总结
2015/07/22 职场文书
写好Python代码的几条重要技巧
2021/05/21 Python
Python利用folium实现地图可视化
2021/05/23 Python
SpringBoot2零基础到精通之数据与页面响应
2022/03/22 Java/Android
HttpClient实现表单提交上传文件
2022/08/14 Java/Android