tensorflow基本函数的前一个参数没有feed
tensorflows seq2seq模块中的tensorflow基本函数的前一个参数没有feed,tensorflow,Tensorflow,tensorflows seq2seq模块中的Embedded_rnn_seq2seq函数提供了一个feed_previous参数,这意味着在解码期间它只使用第一个解码器输入,然后对于后续解码器输入,它使用先前的解码器输出。有没有一种简单的方法可以从basic\n\u seq2seq函数中获取此行为?此API现在已被弃用,但如果有人仍在寻找解决方案,我建议查看此GitHub repo: 简而言之,为了创建他们的解码器,作者使用了以下内容(重要的部分是loop\u function): def _
Embedded_rnn_seq2seq
函数提供了一个feed_previous
参数,这意味着在解码期间它只使用第一个解码器输入,然后对于后续解码器输入,它使用先前的解码器输出。有没有一种简单的方法可以从basic\n\u seq2seq
函数中获取此行为?此API现在已被弃用,但如果有人仍在寻找解决方案,我建议查看此GitHub repo:
简而言之,为了创建他们的解码器,作者使用了以下内容(重要的部分是loop\u function
):
def _init_seq2seq(self, encoder_inputs, decoder_inputs, cell, feed_previous):
def inference_loop_function(prev, _):
prev = tf.nn.xw_plus_b(prev, self.w_softmax, self.b_softmax)
return tf.to_float(tf.equal(prev, tf.reduce_max(prev, reduction_indices=[1], keep_dims=True)))
loop_function = inference_loop_function if feed_previous else None
with variable_scope.variable_scope('seq2seq'):
_, final_enc_state = rnn.rnn(cell, encoder_inputs, dtype=dtypes.float32)
return seq2seq.rnn_decoder(decoder_inputs, final_enc_state, cell, loop_function=loop_function)