tensorflow 获取checkpoint中的变量列表实例


Posted in Python onFebruary 11, 2020

方式1:静态获取,通过直接解析checkpoint文件获取变量名及变量值

通过

reader = tf.train.NewCheckpointReader(model_path)

或者通过:

from tensorflow.python import pywrap_tensorflow
reader = pywrap_tensorflow.NewCheckpointReader(model_path)

代码:

model_path = "./checkpoints/model.ckpt-75000"
## 下面两个reader作用等价
#reader = pywrap_tensorflow.NewCheckpointReader(model_path)
reader = tf.train.NewCheckpointReader(model_path)
 
## 用reader获取变量字典,key是变量名,value是变量的shape
var_to_shape_map = reader.get_variable_to_shape_map()
for var_name in var_to_shape_map.keys():
 #用reader获取变量值
 var_value = reader.get_tensor(var_name)
 
 print("var_name",var_name)
 print("var_value",var_value)

方式2:动态获取,先加载checkpoint模型,然后用graph.get_tensor_by_name()获取变量值

代码 (注意:要先在脚本中构建model中对应的变量及scope):

model_path = "./checkpoints/model.ckpt-75000"
 config = tf.ConfigProto()
 config.gpu_options.allow_growth = True
 with tf.Session(config=config) as sess:
  ## 获取待加载的变量列表
  trainable_vars = tf.trainable_variables()
  g_vars = tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES,scope="generator")
  d_vars = tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES,scope='discriminator')
  flow_vars = tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES,scope='flow_net')
  var_restore = g_vars + d_vars
 
  ## 仅加载目标变量
  loader = tf.train.Saver(var_restore)
  loader.restore(sess,model_path)
 
  ## 显示加载的变量值
  graph = tf.get_default_graph()
  for var in var_restore:
   tensor = graph.get_tensor_by_name(var.name)
   print("=======变量名=======",tensor)
   print("-------变量值-------",sess.run(tensor))

以上这篇tensorflow 获取checkpoint中的变量列表实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现把utf-8格式的文件转换成gbk格式的文件
Jan 22 Python
各个系统下的Python解释器相关安装方法
Oct 12 Python
Python使用回溯法子集树模板解决迷宫问题示例
Sep 01 Python
python2.7+selenium2实现淘宝滑块自动认证功能
Feb 24 Python
python实现猜数字小游戏
Mar 24 Python
python和opencv实现抠图
Jul 18 Python
python之super的使用小结
Aug 13 Python
python中的for循环
Sep 28 Python
python实现抠图给证件照换背景源码
Aug 20 Python
Python 中pandas索引切片读取数据缺失数据处理问题
Oct 09 Python
基于Python实现简单学生管理系统
Jul 24 Python
python实现简单的井字棋
May 26 Python
python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解
Feb 11 #Python
python 函数中的参数类型
Feb 11 #Python
python正则过滤字母、中文、数字及特殊字符方法详解
Feb 11 #Python
python3正则模块re的使用方法详解
Feb 11 #Python
Python版中国省市经纬度
Feb 11 #Python
Python终端输出彩色字符方法详解
Feb 11 #Python
Python连接Oracle之环境配置、实例代码及报错解决方法详解
Feb 11 #Python
You might like
根德Grundig S400/S500/S700电路分析
2021/03/02 无线电
PHP5中Cookie与 Session使用详解
2013/04/30 PHP
thinkphp 多表 事务详解
2013/06/17 PHP
基于PHP magic_quotes_gpc的使用方法详解
2013/06/24 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(八)
2014/06/23 PHP
php面象对象数据库操作类实例
2014/12/02 PHP
php获取给定日期相差天数的方法分析
2017/02/20 PHP
php libevent 功能与使用方法详解
2020/03/04 PHP
JavaScript 笔记二 Array和Date对象方法
2010/05/22 Javascript
基于jQuery架构javascript基础体系
2011/01/01 Javascript
js模拟滚动条(横向竖向)
2013/02/22 Javascript
jQuery之ajax技术的详细介绍
2013/06/19 Javascript
js中的时间转换—毫秒转换成日期时间的示例代码
2014/01/26 Javascript
jquery实现鼠标滑过显示二级下拉菜单效果
2015/08/24 Javascript
JavaScript获取当前cpu使用率的方法
2015/12/15 Javascript
BOM系列第二篇之定时器requestAnimationFrame
2016/08/17 Javascript
基于JavaScript实现带数据验证和复选框的表单提交
2017/08/23 Javascript
JS设计模式之访问者模式定义与用法分析
2018/02/05 Javascript
React事件处理的机制及原理
2018/12/03 Javascript
vue路由守卫,限制前端页面访问权限的例子
2019/11/11 Javascript
js实现简单的秒表
2020/01/16 Javascript
JavaScript实现随机点名程序
2020/03/25 Javascript
[06:45]2018DOTA2亚洲邀请赛 4.5 SOLO赛 Sccc vs Maybe
2018/04/06 DOTA
[33:23]Secret vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python引用模块和查找模块路径
2016/03/17 Python
python实现微信接口(itchat)详细介绍
2017/10/23 Python
django中模板的html自动转意方法
2018/05/27 Python
django 自定义过滤器的实现
2019/02/26 Python
Hammitt官网:设计师手袋
2020/05/23 全球购物
int *p=NULL和*p= NULL有什么区别
2014/10/23 面试题
小学生安全保证书
2014/02/01 职场文书
开朗女孩的自我评价
2014/02/10 职场文书
体育教师个人的自我评价
2014/02/16 职场文书
《邮票齿孔的故事》教学反思
2014/02/22 职场文书
初中团委工作总结
2015/08/13 职场文书
六年级语文教学反思
2016/03/03 职场文书