Tensorflow sess.run()什么都不返回

时间:2016-06-30 12:10:15

标签: python-2.7 tensorflow conv-neural-network

我一直在这里运行一个程序: https://github.com/dennybritz/cnn-text-classification-tf 并且基本代码与发布的示例一起正常工作。但是,我试图将新数据拆分为火车/测试拆分,然后它给我错误。该程序训练我给出的火车数据,但到了评估时间我得到这个错误:

追踪(最近一次呼叫最后一次):

File "./eval.py", line 81, in  correct_predictions = float(sum(all_predictions == y_test)) 

TypeError: 'bool' object is not iterable`

eval.py代码中我找到问题所在的位置:

    for x_test_batch in batches:
        batch_predictions = sess.run(predictions, {input_x: x_test_batch, dropout_keep_prob: 1.0})
        all_predictions = np.concatenate([all_predictions, batch_predictions])

其中sess.run不返回任何内容,batch_predictions变为空数组,稍后会导致值错误。另外值得注意的是:

  • batch_predictions始终为空。
  • x_test_batch对于每个批次都是非空的。
  • all_predictions也总是空的。

我提出了github所有者的问题,但他建议我追踪执行。这是我第一次使用Tensorflow,我无法访问他们的网站。如果有人可以

  1. 告诉我我的问题是什么
    1. 告诉我如何追踪图表执行以找到它
    2. 我会无休止地欣赏。感谢任何阅读此内容的人!

1 个答案:

答案 0 :(得分:0)

你说sess.run没有返回任何东西,也许你可以在运行sess.run之前打印x_test_batch并查看里面的内容,也许它是空的,这不是我想的意思