TensorFlow Saver没有工作

时间:2017-05-02 01:12:23

标签: python python-2.7 machine-learning tensorflow computer-vision

我正在尝试保存模型的所有变量,而是错误" FailedPreconditionError:尝试使用未初始化的值beta1_power "提高。 我没有定义beta1_power变量。我不知道它是什么。

saver = tf.train.Saver()
saver.save(save_path="/home/eldmitro/MNIST",sess=tf.Session())

图层定义:

def params_init(shape, name):
    w = tf.truncated_normal(shape=shape, stddev=0.1)
    return tf.Variable(w, name= name)

def conv2D_init(x, kernel_shape,output_channels, name, activation=tf.nn.relu):
    with tf.name_scope(name):
        w = params_init(kernel_shape, "W")
        b = params_init([output_channels], "b")
    return tf.nn.relu(tf.nn.conv2d(x, filter=w, strides=[1, 1,1,1], padding='SAME', name=name))

def pool2x2(x, name):
       return tf.nn.max_pool(x, ksize=[1,2,2,1], strides=[1,2,2,1], padding='SAME', name=name) 

def fcl_init(x, in_neurons, out_neurons,name):
    with tf.name_scope(name):
        w = params_init([in_neurons, out_neurons], name="W")
        b = params_init([out_neurons], name="b")
    return(tf.matmul(x, w) + b)

1 个答案:

答案 0 :(得分:0)

您应首先初始化变量然后保存它们。您可以通过恢复检查点或

来初始化变量
sess.run(global_variables_initializer())

您无法保存未初始化的变量。

然后这样做:

saver = tf.train.Saver()
sess=tf.Session()
sess.run(global_variables_initializer())
saver.save(save_path="/home/eldmitro/MNIST",sess=sess)

仅存储已初始化(未训练)的变量。