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 相关文章推荐
Python ZipFile模块详解
Nov 01 Python
Python实现求数列和的方法示例
Jan 12 Python
使用pygame模块编写贪吃蛇的实例讲解
Feb 05 Python
python 获取utc时间转化为本地时间的方法
Dec 31 Python
python制作填词游戏步骤详解
May 05 Python
python实现五子棋小程序
Jun 18 Python
django之自定义软删除Model的方法
Aug 14 Python
pygame编写音乐播放器的实现代码示例
Nov 19 Python
python中数据库like模糊查询方式
Mar 02 Python
浅析关于Keras的安装(pycharm)和初步理解
Oct 23 Python
python 带时区的日期格式化操作
Oct 23 Python
Python爬虫之Selenium实现关闭浏览器
Dec 04 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
ThinkPHP文件上传实例教程
2014/08/22 PHP
Yii2前后台分离及migrate使用(七)
2016/05/04 PHP
PHP+Redis开发的书签案例实战详解
2019/07/09 PHP
PHP实现微信公众号验证Token的示例代码
2019/12/16 PHP
前淘宝前端开发工程师阿当的PPT中有JS技术理念问题
2010/01/15 Javascript
解决Jquery鼠标经过不停滑动的问题
2014/03/03 Javascript
JS实现两个大数(整数)相乘
2014/04/28 Javascript
判断复选框是否被选中的两种方法
2014/06/04 Javascript
JavaScript中getUTCMinutes()方法的使用详解
2015/06/10 Javascript
jQuery实现的鼠标经过时变宽的效果(附demo源码)
2016/04/28 Javascript
全面介绍javascript实用技巧及单竖杠
2016/07/18 Javascript
每个程序员都需要学习 JavaScript 的7个理由小结
2016/09/03 Javascript
ionic进入多级目录后隐藏底部导航栏(tabs)的完美解决方案
2016/11/23 Javascript
JS实现商品筛选功能
2020/08/19 Javascript
angularJs中$scope数据序列化的实例
2018/09/30 Javascript
node省市区三级数据性能测评实例分析
2019/11/06 Javascript
解析Python中的异常处理
2015/04/28 Python
Python实现登录人人网并抓取新鲜事的方法
2015/05/11 Python
Python实现多线程抓取妹子图
2015/08/08 Python
python实现决策树、随机森林的简单原理
2018/03/26 Python
python3解析库BeautifulSoup4的安装配置与基本用法
2018/06/26 Python
使用python生成杨辉三角形的示例代码
2018/08/29 Python
python调用百度语音识别api
2018/08/30 Python
python中将zip压缩包转为gz.tar的方法
2018/10/18 Python
django2.2 和 PyMySQL版本兼容问题
2020/02/17 Python
Python程序慢的重要原因
2020/09/04 Python
css 如何让背景图片拉伸填充避免重复显示
2013/07/11 HTML / CSS
加拿大女鞋品牌:ALDO
2016/11/13 全球购物
Nike澳大利亚官网:Nike.com (AU)
2019/06/03 全球购物
小学英语教学反思案例
2014/02/04 职场文书
国庆促销活动总结
2014/08/29 职场文书
房地产销售主管岗位职责
2015/02/13 职场文书
同学毕业留言寄语
2015/02/27 职场文书
入党申请书格式
2019/06/20 职场文书
门面租赁合同范文
2019/08/06 职场文书
python tkinter Entry控件的焦点移动操作
2021/05/22 Python