将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网页解析利器BeautifulSoup安装使用介绍
Mar 17 Python
讲解Python的Scrapy爬虫框架使用代理进行采集的方法
Feb 18 Python
python中函数传参详解
Jul 03 Python
Python之日期与时间处理模块(date和datetime)
Feb 16 Python
python win32 简单操作方法
May 25 Python
python使用opencv读取图片的实例
Aug 17 Python
Python决策树和随机森林算法实例详解
Jan 30 Python
Django 配置多站点多域名的实现步骤
May 17 Python
Python读取表格类型文件代码实例
Feb 17 Python
Selenium基于PIL实现拼接滚动截图
Apr 10 Python
Python 多线程之threading 模块的使用
Apr 14 Python
python3实现无权最短路径的方法
May 12 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
用PHP+MySql编写聊天室
2006/10/09 PHP
解决MySQL中文输出变成问号的问题
2008/06/05 PHP
解析thinkphp import 文件内容变量失效的问题
2013/06/20 PHP
解析php中如何调用用户自定义函数
2013/08/06 PHP
thinkphp特殊标签用法概述
2014/11/24 PHP
用javascript操作xml
2006/11/04 Javascript
Jquery效果大全之制作电脑健康体检得分特效附源码下载
2015/11/02 Javascript
JavaScript中对JSON对象的基本操作示例
2016/05/21 Javascript
js实现简单的获取验证码按钮效果
2017/03/03 Javascript
深入讲解xhr(XMLHttpRequest)/jsonp请求之abort
2017/07/26 Javascript
Angular4 中内置指令的基本用法
2017/07/31 Javascript
JavaScript 自定义事件之我见
2017/09/25 Javascript
vue-router的使用方法及含参数的配置方法
2018/11/13 Javascript
详解小程序rich-text对富文本支持方案
2018/11/28 Javascript
layui 点击重置按钮, select 并没有被重置的解决方法
2019/09/03 Javascript
vue使用axios实现excel文件下载的功能
2020/07/16 Javascript
2款Python内存检测工具介绍和使用方法
2014/06/01 Python
Python文件和目录操作详解
2015/02/08 Python
Python3中使用urllib的方法详解(header,代理,超时,认证,异常处理)
2016/09/21 Python
python一行sql太长折成多行并且有多个参数的方法
2018/07/19 Python
python适合人工智能的理由和优势
2019/06/28 Python
pandas中遍历dataframe的每一个元素的实现
2019/10/23 Python
python实现的分析并统计nginx日志数据功能示例
2019/12/21 Python
Python3 中sorted() 函数的用法
2020/03/24 Python
Python趣味实例,实现一个简单的抽奖刮刮卡
2020/07/18 Python
sqlalchemy实现时间列自动更新教程
2020/09/02 Python
python获取linux系统信息的三种方法
2020/10/14 Python
消防战士优秀事迹材料
2014/02/13 职场文书
电视购物广告词
2014/03/19 职场文书
慰问敬老院活动总结
2014/04/26 职场文书
努力学习演讲稿
2014/05/10 职场文书
领导干部个人对照检查材料(群众路线)
2014/09/26 职场文书
市场营销计划书范文
2015/01/16 职场文书
银行文明优质服务培训心得体会
2016/01/09 职场文书
《怀念母亲》教学反思
2016/02/19 职场文书
golang生成并解析JSON
2022/04/14 Golang