定义 TensorFlow 图形并将其保存到磁盘上。

使用 TensorFlow 的 tf.Graph()tf.Session() 函数来定义和运行 TensorFlow 图形,并使用 tf.train.write_graph() 函数将其保存到磁盘上。

import tensorflow as tf

# Define a TensorFlow graph
graph = tf.Graph()
with graph.as_default():
x = tf.placeholder(tf.float32, shape=[None, 200])
W = tf.Variable(tf.zeros([200, 10]))
b = tf.Variable(tf.zeros([10]))
y = tf.nn.softmax(tf.matmul(x, W) + b) # Save the graph to disk
with tf.Session(graph=graph) as sess:
tf.train.write_graph(sess.graph_def, './', 'graph.pb', as_text=False)

使用 TensorFlow 的 tf.lite.TFLiteConverter 类加载图形,并设置转换器的选项。

使用 tf.lite.TFLiteConverter.from_frozen_graph() 函数加载保存的 TensorFlow 图形,并设置转换器的选项。

# Load the graph and create a converter
converter = tf.lite.TFLiteConverter.from_frozen_graph(
graph_def_file='./graph.pb',
output_arrays=['Softmax'],
output_dtype=tf.float32.as_datatype_enum,
inference_type=tf.lite.constants.QUANTIZED_UINT8,
mean=[0.],
std=[255.],
optimizations=[tf.lite.Optimize.DEFAULT]
)

可以调用转换器的 convert() 方法将 TensorFlow 图形转换为 TensorFlow Lite 模型。

# Convert the graph to a TensorFlow Lite model
tflite_model = converter.convert() # Save the TensorFlow Lite model to disk
with open('./model.tflite', 'wb') as f:
f.write(tflite_model)

加载模型执行推理

import tflite_runtime.interpreter as tflite

# Load the TensorFlow Lite model and create an interpreter
interpreter = tflite.Interpreter(model_path='./model.tflite', num_threads=4)
interpreter.allocate_tensors() # Perform inference on a sample input
input_details = interpreter.get_input_details()
output_details = interpreter.get_output_details()
input_data = np.zeros(input_details[0]['shape'], dtype=np.float32)
interpreter

TensorFlow 的 Graph 模式转换的更多相关文章

  1. Linux中的模式转换

    模式转换: 编辑-->输入: i: 在当前光标所在字符的前面,转为输入模式: a: 在当前光标所在字符的后面,转为输入模式: o: 在当前光标所在行的下方,新建一行,并转为输入模式: I:在当前 ...

  2. 如何使用tensorboard查看tensorflow  graph****.pb文件的模型结构

    参考网上的:https://github.com/tensorflow/tensorflow/issues/8854 import tensorflow as tf from tensorflow.p ...

  3. imx lcd HV和DE模式转换

    有些时候拿到的lcd手册中关于芯片的时序使用的DE模式的,而imx6内核中使用的参数设置趋势HV模式,应此就需要将DE模式的参数转化为HV模式. 参考链接: https://community.nxp ...

  4. Linux大小端模式转换函数

    转自 http://www.cnblogs.com/kungfupanda/archive/2013/04/24/3040785.html 不同机器内部对变量的字节存储顺序不同,有的采用大端模式(bi ...

  5. htonl(),htons(),ntohl(),ntons()--大小端模式转换函数

    不同机器内部对变量的字节存储顺序不同,有的采用大端模式(big-endian),有的采用小端模式(little-endian). 大端模式是指高字节数据存放在低地址处,低字节数据放在高地址处. 小端模 ...

  6. 命令和python模式转换

    安装完paython成功之后,就必须了解一下:命令模式和python交互模式 1.我们输入  cmd  之后进入的运行环境就是命令模式 2.在命令模式下输入  python,看到>>> ...

  7. adg的数据传输应用三大模式转换

    1.最大可用性模式(Maximum Availability) 1)该模式提供了仅次于"最大保护模式"的数据保护能力: 2)要求至少一个物理备库收到重做日志后,主库的事务才能够提交 ...

  8. HTML连载30-CSS显示模式&模式转换

    一.CSS显示模式​ 1.在HTML中HTML将所有的标签分为两类,分别是容器类和文本级.在CSS中CSS也将所有的标签分为两类,分别是块级元素和行内元素 2.什么是块级元素呢?什么是行内元素​? ( ...

  9. TensorFlow的图切割模块——Graph Partitioner

    背景 [作者:DeepLearningStack,阿里巴巴算法工程师,开源TensorFlow Contributor] 在经过TensorFlow的Placer策略模块调整之后,下一步就是根据Pla ...

  10. TensorFlow中的Session、Graph、operation、tensor

    TensorFlow中的Session.Graph.operation.tensor

随机推荐

  1. tidevice 报UsbmuxReplyCode.BadDevice错误解决办法

    备忘 换了个新手机照常使用tidevice进行操作发现报错 tidevice.exceptions.MuxReplyError: UsbmuxReplyCode.BadDevice 查了好久,终于解决 ...

  2. python实现字典的排序

    var dic = {c:4, a:2, d:3, b:1}; // 定义一个字典 console.log("输出最初的字典元素: "); for(var key in dic){ ...

  3. Java流程控制之DoWhile循环

    DoWhile循环 对于while语句而言,如果不满足条件,则不能进入循环.但有时候我们需要即使不满足条件,也至少执行一次. do...while 循环和 while循环相似,不同的是,do...wh ...

  4. lui - pager - 分页

    pager - 分页 demo lui demo <template> <div class="app-container"> <h3>el-p ...

  5. spring jdbcTemplate 配置

    1 <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" 2 d ...

  6. 用python遍历一个图片文件夹,并输出所有路径到一个 txt 文件

    1 #coding:utf8 2 import os 3 import sys 4 def listfiles(rootDir, txtfile, label=0): 5 ftxtfile = ope ...

  7. 学Java的第5天,今天做了个双色球系统

    今天是学JAVA的第5天,刚刚把方法学完,然后就在这做黑马的题. 用了一个多小时时间,把他的 这些题都做完了 但是最后一道题,这个双色球系统我感觉挺有意思的 我看到这个题,分析后感觉需要4种方法: 1 ...

  8. C# core 最简单的方式写入日志

    System.IO.StreamWriter sw = System.IO.File.AppendText( LogPath + LogFielPrefix + "Error-" ...

  9. centos 发送邮件

    安装mailx yum install -y mailx 配置邮件服务器信息 vi /etc/mail.rc set from=xxxx@yyy.com set smtp=smtp.yyy.com s ...

  10. EF调用sql语句

    1.连接数据库 2.在Dal进行调用sql语句 public List<UserInfo> PageShow(out int totalcount,out int totalpage, s ...