cpkt转pb
简书-cpkt转pb
重新训练模型,在模型设置上增加节点命名,如:
net=tf.layers.conv1d(inputs=x, filters=256,kernel_size=3, strides=1, name="op_to_store")
记住,这边我们设置的输出节点是"op_to_store"
import tensorflow as tf
from tensorflow.python.platform import gfile
graph = tf.get_default_graph()
graphdef = graph.as_graph_def()
_ = tf.train.import_meta_graph(".meta文件的绝对路径")
summary_write = tf.summary.FileWriter("graph文件保存的路径", graph)
summary_write.close()
查看计算图
在terminal中输入
tensorboard --logdir = graph的绝对路径
// 注意,logdir后面的路径不需要引号,路径不包括计算图的文件名
// 如 tensorboard --logdir = /home/my/
此时会获得tensorboard给出的网页地址,点击GRAPH即可查看计算图中的节点
将tensorflow的ckpt模型转化为pb模型
相关代码
注意,output_node_name为最开始设定的输出节点"op_to_store",input_checkpoint为输入的.meta的前缀,out_pb_path为输出pb模型的路径及文件名
如
output_node_name = "op_to_store"
.....
input_checkpoint = './best_model' // best_model.meta
out_pb_path = "./best_model_pb.pb"
可以在Netron软件中打开pb文件查看最后的效果