TypeError:无法将feed_dict key解释为Tensor:名称“save”/常数:0'是指不存在的张量

2024-09-24 20:34:31 发布

您现在位置:Python中文网/ 问答频道 /正文

从该文件:https://github.com/llSourcell/pong_neural_network_live/blob/master/RL.py

我已经更新了线路

#first convolutional layer. bias vector
#creates an empty tensor with all elements set to zero with a shape

W_conv1 = tf.Variable(tf.zeros([8, 8, 4, 32]) , name='W_conv1')
b_conv1 = tf.Variable(tf.zeros([32]), name='b_conv1')

W_conv2 = tf.Variable(tf.zeros([4, 4, 32, 64]), name='W_conv2')
b_conv2 = tf.Variable(tf.zeros([64]), name='b_conv2')

W_conv3 = tf.Variable(tf.zeros([3, 3, 64, 64]), name='W_conv3')
b_conv3 = tf.Variable(tf.zeros([64]), name='b_conv3')

W_fc4 = tf.Variable(tf.zeros([3136, 784]), name='W_fc4')
b_fc4 = tf.Variable(tf.zeros([784]), name='b_fc4')

W_fc5 = tf.Variable(tf.zeros([784, ACTIONS]), name='W_fc5')
b_fc5 = tf.Variable(tf.zeros([ACTIONS]), name='b_fc5')

以及:

^{pr2}$

在:

def main():
    # ////
    tf.reset_default_graph()
    imported_meta = tf.train.import_meta_graph('./' + 'pong' + '-dqn-' + '48000' + '.meta')
    imported_meta.restore(sess, tf.train.latest_checkpoint('./'))
    # ////

尝试恢复模型,但出现以下错误:

TypeError:无法将feed_dict key解释为Tensor:名称“save”/常数:0'是指不存在的张量。图形中不存在操作“save/Const”。在

当我尝试这个:

 graph = tf.get_default_graph() 
 W_conv1 = graph.get_tensor_by_name("W_conv1:0")
 b_conv1 = graph.get_tensor_by_name("wb_conv1:0") 
 W_conv2 = graph.get_tensor_by_name("W_conv2:0")
 b_conv2 = graph.get_tensor_by_name("wb_conv2:0") 
 W_conv3 = graph.get_tensor_by_name("W_conv3:0")
 b_conv3 = graph.get_tensor_by_name("b_conv3:0") 
 W_fc4 = graph.get_tensor_by_name("W_fc4:0")
 b_fc4 = graph.get_tensor_by_name("b_fc4:0") 
 W_fc5 = graph.get_tensor_by_name("W_fc5:0")
 b_fc5 = graph.get_tensor_by_name("b_fc5:0")  

我得到这个错误:

“名称'W'u conv1:0'表示不存在的张量。图形中不存在操作“W\u conv1”。在

为什么会这样? 我已经在pygame中创建了我的游戏,我正在尝试将它连接到RL。 我想确保我可以保存并加载我的进度。我只是不明白如何保存和加载。在

提前谢谢!在


Tags: namegetbytfzerosvariablemetagraph