Tensorflow seq2seq:Tensor' object is not iterable



我正在使用seq2seq下面的代码,我在下面发现错误:

cell = tf.nn.rnn_cell.BasicLSTMCell(size)
a, b = tf.nn.dynamic_rnn(cell, seq_input, dtype=tf.float32)
cell_a = tf.contrib.rnn.OutputProjectionWrapper(cell, frame_dim)
dec_output= tf.contrib.legacy_seq2seq.rnn_decoder(seq_input, b, cell_a)

,但我得到了错误:

TypeError: 'Tensor' object is not iterable.

我检查了,它来自seq2seq系列。

看起来seq_input是张量,而不是张量列表。单个张量对于tf.nn.dynamic_rnn工作正常,但是rnn_decoder需要将序列拆分为张量列表:

decoder_inputs:2D张量的列表[batch_size x input_size]

在源代码中,您可以看到实现仅在for循环中通过decoder_inputs迭代。

相关内容

  • 没有找到相关文章

最新更新