Python 3.x 执行sess.run()时出错
我想执行我的图形模型,但我有困难。代码是:Python 3.x 执行sess.run()时出错,python-3.x,tensorflow,conv-neural-network,semantic-segmentation,Python 3.x,Tensorflow,Conv Neural Network,Semantic Segmentation,我想执行我的图形模型,但我有困难。代码是: epoch_x, epoch_y = features, labels sess.run(optimizer, feed_dict = {"x:0": epoch_x, "y:0": epoch_y}) 错误是: ---------------------------------------------------------------------------KeyError回溯(最近的呼叫 最后) D:\AnacondaIDE\lib\site
epoch_x, epoch_y = features, labels
sess.run(optimizer, feed_dict = {"x:0": epoch_x, "y:0": epoch_y})
错误是:
---------------------------------------------------------------------------KeyError回溯(最近的呼叫
最后)
D:\AnacondaIDE\lib\site packages\tensorflow\python\client\session.py
在运行中(self、handle、fetches、feed\u dict、options、run\u metadata)1067 subfeed\u t=self.graph.as\u graph\u元素(subfeed, 允许张量=真, ->1068 allow_operation=False)1069例外情况除外,如e: 中的D:\AnacondaIDE\lib\site packages\tensorflow\python\framework\ops.py as图元素(自身、对象、允许张量、允许操作)2707
带自锁: ->2708返回自。作为图元素锁定(obj,允许张量,允许操作)2709 中的D:\AnacondaIDE\lib\site packages\tensorflow\python\framework\ops.py _由于图元素锁定(self,obj,allow_tensor,allow_operation)2749“存在。操作%s不存在 存在于 ->2750“图形”。%(repr(名称),repr(操作名称))2751尝试: KeyError:“名称“x:0”引用了不存在的张量 图形中不存在操作“x”。“ 在处理上述异常期间,发生了另一个异常: TypeError回溯(最近的调用 最后)在() 22#feed_dict={x:epoch_x,y:epoch_y} 23 --->24 sess.run(优化器,feed_dict={“x:0”:epoch_x,“y:0”:epoch_y}) 25列丢失追加(sess.run(成本,馈送dict={x:epoch\ux,y:epoch\uy})) 26列精度追加(sess.run(accr,feed_dict={x:epoch_x,y:epoch_y})) D:\AnacondaIDE\lib\site packages\tensorflow\python\client\session.py 运行中(自我、获取、馈送、选项、运行元数据) 893尝试: 894结果=self.\u运行(无、取数、输入、选项、, -->895运行(元数据) 896如果运行\u元数据: 897 proto_data=tf_session.tf_GetBuffer(run_metadata_ptr) D:\AnacondaIDE\lib\site packages\tensorflow\python\client\session.py 在运行中(self、handle、fetches、feed\u dict、options、run\u metadata)
1069例外情况除外,如e:1070 TypeError('无法将提要索引键解释为张量:' ->1071+e.args[0])1072 1073如果存在(副进纸值,操作张量): TypeError:无法将提要索引键解释为张量:名称“x:0” 指不存在的张量。操作“x”不起作用 存在于图形中 我还尝试了以下说法:
sess.run(optimizer, feed_dict = {"x": epoch_x, "y": epoch_y})
那么错误是:
---------------------------------------------------------------------------NameError回溯(最近的调用)
最后)在()
22#feed_dict={x:epoch_x,y:epoch_y}
23
--->24 sess.run(优化器,feed_dict={x:epoch_x,y:epoch_y})
25列丢失追加(sess.run(成本,馈送dict={x:epoch\ux,y:epoch\uy}))
26列精度追加(sess.run(accr,feed_dict={x:epoch_x,y:epoch_y}))
名称错误:未定义名称“x”
请注意,print(features.shape)
产生:
(4000、6000、3)
我使用的是Tensorflow gpu(1.3.0)。在提要中不应该有引号,但键应该是指向要提要的占位符的python变量 例如,如果在声明占位符时
pl_ = tf.placeholder(...., name='placeholder_1')
那么你应该运行这个
sess.run(...., feed_dict={pl_: value})
而不是这个
sess.run(..., feed_dict={'placeholder_1': value})
在提要dict中不应该有引号,但键应该是指向要提要的占位符的python变量 例如,如果在声明占位符时
pl_ = tf.placeholder(...., name='placeholder_1')
那么你应该运行这个
sess.run(...., feed_dict={pl_: value})
而不是这个
sess.run(..., feed_dict={'placeholder_1': value})
您是否尝试过按照删除引号,即:
sess.run(优化器,feed\u dict={x:epoch\u x,y:epoch\u y})
?将代码发布到您定义的位置placeholders@Ksyqoqoutes是一个问题,Pietro的回答也有帮助,因为我以前没有声明占位符。您是否尝试删除引号,即:sess.run(优化器,feed\u dict={x:epoch\u x,y:epoch\u y})
根据?将代码发布到您定义的位置placeholders@Ksyqo库特斯是个问题,皮埃特罗的回答也有帮助,因为我以前并没有声明占位符。