将tensorflow模型打包成PB文件及PB文件读取方式


Posted in Python onJanuary 23, 2020

1. tensorflow模型文件打包成PB文件

import tensorflow as tf
from tensorflow.python.tools import freeze_graph
 
with tf.Graph().as_default():
  with tf.device("/cpu:0"):
    config = tf.ConfigProto(allow_soft_placement=True)
    with tf.Session(config=config).as_default() as sess:
      model = Your_Model_Name()
      model.build_graph()
      sess.run(tf.initialize_all_variables())
      
      saver = tf.train.Saver()
      ckpt_path = "/your/model/path"
      saver.restore(sess, ckpt_path)
 
      graphdef = tf.get_default_graph().as_graph_def()
      tf.train.write_graph(sess.graph_def,"/your/save/path/","save_name.pb",as_text=False)
      frozen_graph = tf.graph_util.convert_variables_to_constants(sess,graphdef,['output/node/name'])
      frozen_graph_trim = tf.graph_util.remove_training_nodes(frozen_graph)
      freeze_graph.freeze_graph('/your/save/path/save_name.pb','',True, ckpt_path,'output/node/name','save/restore_all','save/Const:0','frozen_name.pb',True,"")

2. PB文件读取使用

output_graph_def = tf.GraphDef()
with open("your_name.pb","rb") as f:
  output_graph_def.ParseFromString(f.read())
  _ = tf.import_graph_def(output_graph_def, name="")
 
node_in = sess.graph.get_tensor_by_name("input_node_name")
model_out = sess.graph.get_tensor_by_name("out_node_name")
 
feed_dict = {node_in:in_data}
pred = sess.run(model_out, feed_dict)

以上这篇将tensorflow模型打包成PB文件及PB文件读取方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python冒泡排序简单实现方法
Jul 09 Python
python导入时小括号大作用
Jan 10 Python
Python中使用haystack实现django全文检索搜索引擎功能
Aug 26 Python
Python编写Windows Service服务程序
Jan 04 Python
pandas 对每一列数据进行标准化的方法
Jun 09 Python
Python 实现王者荣耀中的敏感词过滤示例
Jan 21 Python
在Python中将函数作为另一个函数的参数传入并调用的方法
Jan 22 Python
Python实现Selenium自动化Page模式
Jul 14 Python
使用apiDoc实现python接口文档编写
Nov 19 Python
np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴
Nov 30 Python
Pandas的Apply函数具体使用
Jul 21 Python
PyQt QMainWindow的使用示例
Mar 24 Python
使用tensorflow显示pb模型的所有网络结点方式
Jan 23 #Python
tensorflow 实现打印pb模型的所有节点
Jan 23 #Python
TensorFlow命名空间和TensorBoard图节点实例
Jan 23 #Python
tensorflow通过模型文件,使用tensorboard查看其模型图Graph方式
Jan 23 #Python
如何定义TensorFlow输入节点
Jan 23 #Python
django 文件上传功能的相关实例代码(简单易懂)
Jan 22 #Python
python动态文本进度条的实例代码
Jan 22 #Python
You might like
phpExcel中文帮助手册之常用功能指南
2014/08/18 PHP
CodeIgniter删除和设置Cookie的方法
2015/04/07 PHP
javascript 一个自定义长度的文本自动换行的函数
2007/08/19 Javascript
jquery学习笔记二 实现可编辑的表格
2010/04/09 Javascript
javascript 学习笔记(八)javascript对象
2011/04/12 Javascript
js 利用className得到对象的实现代码
2011/11/15 Javascript
js相册效果代码(点击创建即可)
2013/04/16 Javascript
Jquery+CSS3实现一款简洁大气带滑动效果的弹出层
2013/05/15 Javascript
jquery mobile事件多次绑定示例代码
2013/09/13 Javascript
JS实现的左侧竖向滑动菜单效果代码
2015/10/19 Javascript
JavaScript实现简单的tab选项卡切换
2016/01/05 Javascript
详解JavaScript正则表达式之分组匹配及反向引用
2016/03/09 Javascript
深入了解JavaScript的逻辑运算符(与、或)
2016/12/20 Javascript
Javascript 使用ajax与C#获取文件大小实例详解
2017/01/13 Javascript
学习使用Bootstrap输入框、导航、分页等常用组件
2017/05/11 Javascript
基于Vue实现图书管理功能
2017/10/17 Javascript
javascript将json格式数组下载为excel表格的方法
2017/12/22 Javascript
JavaScript字符串转数字的5种方法及遇到的坑
2018/07/16 Javascript
详解Vue后台管理系统开发日常总结(组件PageHeader)
2019/11/01 Javascript
JS中数组实现代码(倒序遍历数组,数组连接字符串)
2019/12/29 Javascript
如何基于js判断浏览器版本
2020/02/20 Javascript
Openlayers实现扩散的动态点(水纹效果)
2020/08/17 Javascript
JavaScript Array.flat()函数用法解析
2020/09/02 Javascript
在Python中操作时间之strptime()方法的使用
2020/12/30 Python
两个命令把 Vim 打造成 Python IDE的方法
2016/03/20 Python
Android模拟器无法启动,报错:Cannot set up guest memory ‘android_arm’ Invalid argument的解决方法
2016/07/01 Python
Python中的函数作用域
2018/05/07 Python
浅谈pyqt5中信号与槽的认识
2019/02/17 Python
pyqt5 实现在别的窗口弹出进度条
2019/06/18 Python
苏格兰领先的多渠道鞋店:Begg Shoes
2019/10/22 全球购物
真诚的求职信
2014/07/04 职场文书
政协会议宣传标语
2014/10/09 职场文书
2015年禁毒工作总结
2015/04/30 职场文书
婚礼双方父亲致辞
2015/07/27 职场文书
pytorch中[..., 0]的用法说明
2021/05/20 Python
Spring Security使用单点登录的权限功能
2022/04/03 Java/Android