多次使用tf.nn.dynamic_rnn(),尺寸必须相等发生错误

时间:2019-03-19 04:41:25

标签: python tensorflow recurrent-neural-network

当我在代码中多次使用tf.nn.dynamic_rnn()时,

  

ValueError:尺寸必须相等,但对于80和90   具有输入形状的'..scope1 / rnn / while / gru_cell / MatMul_4'(op:'MatMul'):   [50,80],[90,80]。'

发生。

我的代码段是:

gru = tf.contrib.rnn.GRUCell(d)
with tf.variable_scope('scope1'):
    _, outputs_1 = tf.nn.dynamic_rnn(gru, inputs, dtype=tf.float32) # inputs:[N, L, V]
with tf.variable_scope('scope2'):
    outputs_2 = somefunc(outputs_1)
with tf.variable_scope('scope3'):
    _, outputs_3 = tf.nn.dynamic_rnn(gru, outputs_2, dtype=tf.float32) outputs_2:[N, L, d]

如果我将d设置为不等于V,则运行代码将引发上面的错误。如果d等于V,则没有问题。为什么?这两个tf.nn.dynamic_rnn()不直接堆叠。它们应该彼此独立。

0 个答案:

没有答案