A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始



持久化原理及数据格式整理
当使用save.save()时,TensorFlow程序会自动生成4个文件,这4个文件用来实现TensorFlow模型的持久化:

meta_info_def : 它记录了TensorFlow计算图中的元数据以及TensorFlwo程序中所有使用到的运算方法的信息

      graph_def :  主要记录了TensorFlow计算图上的节点信息

      saver_def :  记录了持久化模型时需要用到的一些参数,比如保存到文件的文件名,保存操作和加载操作的名称以及保存频率、                            清理历史信息等等

collection_def :  属性是一个从集合名称到集合内容的映射,其中集合名称为字符串,集合内容为CollectionDef Protocol Buffer

 

 

然后具体操作一波

import tensorflow as tf
from tensorflow.python.framework import graph_util

v1 = tf.Variable(tf.constant(1.0, shape=[1]),name='v1')
v2 = tf.Variable(tf.constant(2.0,shape=[2]),name='v2')
result = v1+v2

init_op = tf.global_variables_initializer()

saver = tf.train.Saver()

with tf.Session() as sess:
    sess.run(init_op)
    saver.export_meta_graph("./model.ckpt.meda.json",as_text=True)
文件夹中粗现了一下文件



使用chrome打开,发现十几页的数据.... 先说一下只管感受吧,长度上graph_def>meta_info_def>saver_def=collection_def

奇怪的是colection_def出现了两次



 

 结论:collection_def每个存的是集合信息,graph_def存的是节点信息, 包含v1/assign, const, v1/read, add, save/const等等节点, 并不仅仅包含图中所示的3个节点, meta_info_def会存有类似上面的信息,大概T类似于java模板类的一种东西, saver_def主要存有关于save相关的信息。
---------------------
作者:北逸
来源:CSDN
原文:https://blog.csdn.net/InFiNiTeemo/article/details/84931024
版权声明:本文为博主原创文章,转载请附上博文链接!

1 个回复

倒序浏览
奈斯
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马