解决tensorflow中报错NotFoundError (see above for traceback): Key v1_1 not found in checkpoint问题

  • 针对TensorFlow实战框架Chp5,P113面问题
  • 在 saver.restore()加载的前面,需要添加 tf.reset_default_graph(),作用是 清除默认图的堆栈,并设置全局图为默认图

  • 保存文件

# -*- coding: utf-8 -*-
"""
Created on Sat Jun 30 16:17:26 2018

@author: muli
"""

import tensorflow as tf

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

# 保存训练好的数据
saver = tf.train.Saver()

with tf.Session() as sess:
    sess.run(tf.global_variables_initializer())
    saver.save(sess, "Saved_model/model.ckpt")
    print("已保存完毕!")


  • 加载文件
# -*- coding: utf-8 -*-
"""
Created on Sat Jun 30 16:23:46 2018

@author: muli
"""

import tensorflow as tf

# 清除默认图的堆栈,并设置全局图为默认图 
tf.reset_default_graph()

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

# 保存训练好的数据
saver = tf.train.Saver()

with tf.Session() as sess:
    print("正在加载...")
    saver.restore(sess, "./Saved_model/model.ckpt")
    print(sess.run(result))
  • 直接加载已经持久化的图
# -*- coding: utf-8 -*-
"""
Created on Sat Jun 30 16:29:50 2018

@author: muli
"""

import tensorflow as tf

# 清除默认图的堆栈,并设置全局图为默认图 
tf.reset_default_graph()

saver = tf.train.import_meta_graph("./Saved_model/model.ckpt.meta")

with tf.Session() as sess:
    saver.restore(sess, "./Saved_model/model.ckpt")
    print(sess.run(tf.get_default_graph().get_tensor_by_name("add:0")))

猜你喜欢

转载自blog.csdn.net/mr_muli/article/details/80868826
今日推荐