tf.train.batch显示的元素不足

时间:2017-07-19 12:03:12

标签: tensorflow lstm

我正在研究基于LSTM的模型。数据由80000张图片组成。我使用批处理大小为1并将以下内容作为错误日志:

  

OutOfRangeError(参见上面的回溯):PaddingFIFOQueue   ' _1_Train_data /批次/ padding_fifo_queue'已经关闭了   元素不足(请求1,当前大小0)[[节点:   Train_data / batch = QueueDequeueManyV2 [component_types = [DT_FLOAT,   DT_STRING,DT_INT32],timeout_ms = -1,   _device =" /作业:本地主机/复制:0 /任务:0 / CPU:0"](Train_data /批次/ padding_fifo_queue,   Train_data /批次/ N)]]

有人可以建议可能出现的问题吗?因为我尝试的所有可能的批量大小的fifoqueue大小显示为0。

2 个答案:

答案 0 :(得分:0)

错误与LSTM无关,您是从tf.train.batch获取的。 您必须初始化TF局部变量以及全局变量。 从这个开放的问题https://github.com/tensorflow/tensorflow/issues/1045来看,初始化的顺序似乎很重要。

global_init_op = tf.global_variables_initializer()
local_init_op = tf.local_variables_initializer()

with tf.Session() as sess:
    sess.run(global_init_op)
    sess.run(local_init_op)
    # rest of your code

答案 1 :(得分:0)

数据库中的某些图像已损坏,导致程序遇到此错误。删除了这些图像,现在工作正常。