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中使用MELIAE分析程序内存占用实例
Feb 18 Python
Python中random模块用法实例分析
May 19 Python
python计算文本文件行数的方法
Jul 06 Python
Python简单删除列表中相同元素的方法示例
Jun 12 Python
python3爬取淘宝信息代码分析
Feb 10 Python
python3将视频流保存为本地视频文件
Jun 20 Python
Python字典循环添加一键多值的用法实例
Jan 20 Python
Python安装Flask环境及简单应用示例
May 03 Python
Python3将jpg转为pdf文件的方法示例
Dec 13 Python
Python的in,is和id函数代码实例
Apr 18 Python
python使用glob检索文件的操作
May 20 Python
Python编程super应用场景及示例解析
Oct 05 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区间查询、统计查询与SQL直接查询实例分析
2014/11/24 PHP
php使用Jpgraph绘制简单X-Y坐标图的方法
2015/06/10 PHP
php实现表单多按钮提交action的处理方法
2015/10/24 PHP
Array.slice()与Array.splice()的返回值类型
2006/10/09 Javascript
JavaScript 对话框和状态栏使用说明
2009/10/25 Javascript
[原创]js获取数组任意个不重复的随机数组元素
2010/03/15 Javascript
Firefox中autocomplete=&quot;off&quot; 设置不起作用Bug的解决方法
2011/03/25 Javascript
jquery.bgiframe.js在IE9下提示INVALID_CHARACTER_ERR错误
2013/01/11 Javascript
jQuery实现DIV层收缩展开的方法
2015/02/27 Javascript
老生常谈原生JS执行环境与作用域
2016/11/22 Javascript
将angular-ui的分页组件封装成指令的方法详解
2017/05/10 Javascript
JS实现520 表白简单代码
2018/05/21 Javascript
Openlayers实现距离面积测量
2020/09/28 Javascript
Python __setattr__、 __getattr__、 __delattr__、__call__用法示例
2015/03/06 Python
python计算日期之间的放假日期
2018/06/05 Python
python实现弹窗祝福效果
2019/04/07 Python
深入浅析Python中的迭代器
2019/06/04 Python
python多线程http压力测试脚本
2019/06/25 Python
python写入文件自动换行问题的方法
2019/07/05 Python
处理python中多线程与多进程中的数据共享问题
2019/07/28 Python
python:删除离群值操作(每一行为一类数据)
2020/06/08 Python
Python xlrd模块导入过程及常用操作
2020/06/10 Python
Python中全局变量和局部变量的理解与区别
2021/02/07 Python
HTML5 在canvas中绘制矩形附效果图
2014/06/23 HTML / CSS
移动端HTML5实现文件上传功能【附代码】
2016/03/25 HTML / CSS
美国著名的团购网站:Woot
2016/08/02 全球购物
总会计师岗位职责
2014/02/19 职场文书
高级销售求职信
2014/02/21 职场文书
生日宴会主持词
2014/03/20 职场文书
节能减耗标语
2014/06/21 职场文书
小学综治宣传月活动总结
2014/07/02 职场文书
旅游与酒店管理专业求职信
2014/07/21 职场文书
公司介绍信范文
2015/01/31 职场文书
学习雷锋精神活动总结
2015/02/06 职场文书
公务员年度考核登记表个人总结
2015/02/12 职场文书
护林员个人总结
2015/03/04 职场文书