tensorflow模型保存文件分析

tensorflow模型保存函数为:

tf.train.Saver()

例如下列代码:

import tensorflow as tf

v1= tf.Variable(tf.random_normal([784, 200], stddev=0.35), name="v1")
v2= tf.Variable(tf.zeros([200]), name="v2")
v3= tf.Variable(tf.zeros([100]), name="v3")
saver = tf.train.Saver()
with tf.Session() as sess:
    init_op = tf.global_variables_initializer()
    sess.run(init_op)
    saver.save(sess,"checkpoint/model.ckpt",global_step=1)

运行后,保存模型保存,得到三个文件,分别为.data,.meta,.index,

model.ckpt.data-00000-of-00001
model.ckpt.index
model.ckpt.meta

模型加载为:

with tf.Session() as sess:
  saver.restore(sess, "/checkpoint/model.ckpt")

meta file保存了graph结构,包括 GraphDef, SaverDef等,当存在meta file,我们可以不在文件中定义模型,也可以运行,而如果没有meta file,我们需要定义好模型,再加载data file,得到变量值.

index file为一个 string-string table,table的key值为tensor名,value为BundleEntryProto, BundleEntryProto.

data file保存了模型的所有变量的值.

你可能感兴趣的:(tensorflow学习笔记)