tensorflow的save和restore

Posted shixisheng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tensorflow的save和restore相关的知识,希望对你有一定的参考价值。

使用tensorflow中的save和restore可以对模型进行保存和恢复

import tensorflow as tf

v1 = tf.Variable(tf.random_normal([1,2]), name="v1")
v2 = tf.Variable(tf.random_normal([2,3]), name="v2")
init_op = tf.global_variables_initializer()
saver = tf.train.Saver()
with tf.Session() as sess:
    sess.run(init_op)
    print ("V1:",sess.run(v1))  
    print ("V2:",sess.run(v2))
    saver_path = saver.save(sess, "save/model.ckpt")
    print ("Model saved in file: ", saver_path) 

运行如下:

技术分享图片

可以在本地目录发现,程序自己生成了文件夹save,然后里边有四个文件

技术分享图片

然后从该目录下读取存储下来的数据,然后输出

import tensorflow as tf
v1 = tf.Variable(tf.random_normal([1,2]), name="v1")
v2 = tf.Variable(tf.random_normal([2,3]), name="v2")
saver = tf.train.Saver()

with tf.Session() as sess:
    saver.restore(sess, "save/model.ckpt")
    print ("V1:",sess.run(v1))
    print ("V2:",sess.run(v2))
    print ("Model restored")

技术分享图片

从输出结果可以看到,输出的变量值就是之前存储下来的变量值,而且从模型中恢复参数时,就不用写,参数初始化语句了,

init_op = tf.global_variables_initializer(),通过从本地读取出来,就可以完成对变量的赋值。



以上是关于tensorflow的save和restore的主要内容,如果未能解决你的问题,请参考以下文章

『TensorFlow』徒手装高达_战斗数据收集模块原型_save&restore

Tensorflow保存神经网络参数有妙招:Saver和Restore

Android 中Canvas的save(),saveLayer()和restore()解析

跟我学算法- tensorflow模型的保存与读取 tf.train.Saver()

Android Canvas save()和restore()作用简析

Android Canvas save()和restore()作用简析