ValueError("无法使用 `eval()` 评估张量:
Posted
技术标签:
【中文标题】ValueError("无法使用 `eval()` 评估张量:【英文标题】:ValueError("Cannot evaluate tensor using `eval()`: 【发布时间】:2018-06-04 15:44:39 【问题描述】:为什么 sess 在训练中传递给消费者,但在 eval() 中却失败了 https://github.com/JasonPrendergast/AccuracyTestingaModel
我正在执行批处理精度测试并遇到错误:ValueError("Cannot evaluate tensor using eval()
: No default"
ValueError:无法使用 eval()
评估张量:未注册默认会话。使用with sess.as_default()
或将显式会话传递给`eval(session=sess)
我一直在使用线程进行培训,并且将会话作为 sess 传递给消费者类没有问题,如下所示:
_, c = self.sess.run([self.optimizer, self.cost], feed_dict=x: np.array(batch_x),y: np.array(batch_y))
运行良好,我可以使用消费者类生成我的模型。但是当我尝试运行时:
result = (self.sess.run(tf.argmax(self.prediction.eval(feed_dict=x:[np.array(batch_x)]),1)))
我得到了错误
Traceback(最近一次调用最后一次): _bootstrap_inner 中的文件“C:\Users\jimbob\AppData\Local\Programs\Python\Python35\lib\threading.py”,第 914 行 自我运行() 文件“C:\Users\jimbob\AppData\Local\Programs\Python\Python35\lib\threading.py”,第 862 行,运行中 self._target(*self._args, **self._kwargs) 文件“D:/mine/jobs_network/NN_size_10k_batch/testAcc2_threads.py”,第 198 行,运行中 结果 = (self.sess.run(tf.argmax(self.prediction.eval(feed_dict=x:[np.array(batch_x)]),1))) 文件“C:\Users\jimbob\AppData\Local\Programs\Python\Python35\lib\site-packages\tensorflow\python\framework\ops.py”,第 541 行,在 eval return _eval_using_default_session(self, feed_dict, self.graph, session) _eval_using_default_session 中的文件“C:\Users\jimbob\AppData\Local\Programs\Python\Python35\lib\site-packages\tensorflow\python\framework\ops.py”,第 4071 行 raise ValueError("无法使用
eval()
评估张量:没有默认值" ValueError:无法使用eval()
评估张量:未注册默认会话。使用with sess.as_default()
或将显式会话传递给eval(session=sess)
【问题讨论】:
result = (sess.run(tf.argmax(prediction.eval(feed_dict=x:[features]),1))) 当我没有线程时正在工作 【参考方案1】:通过将result = (self.sess.run(tf.argmax(self.prediction.eval(feed_dict=x:[np.array(batch_x)]),1)))
替换为我已经达到了我想要的结果
result=self.prediction.eval(session = self.sess,feed_dict=x: np.array(batch_x))
result= np.array(result)
outputarray.append(str((labellexicon[int(np.argmax(result))])))
【讨论】:
以上是关于ValueError("无法使用 `eval()` 评估张量:的主要内容,如果未能解决你的问题,请参考以下文章
ValueError:无法将字符串转换为浮点数:'"r_version"' - 将温度转换为华氏温度时
ValueError:无法添加 *:实例在数据库“默认”上,值在数据库“无”上
在 for 循环中使用 str.split 时出现“ValueError 太多值无法解包”
为啥我收到此错误“ValueError:无法从重复轴重新索引”?
ValueError:无法分配“'interests': ['Technology', 'Sports', 'Health'] “Consumer.interests”必须是“Interests”实例