Могу ли я использовать `tf.contrib.seq2seq.dynamic_decode` для замены функции`tf.nn.dynamic_rnn` в среде кодера-декодера?
На самом деле, я хочу генерировать последовательности точно так же, как это делал Алекс Грейв. У меня есть реализация tenorflow. В то же время я хочу попробовать модель seq2seq, основанную на внимании, для создания почерка. Так что про декодер я сделал это с tf.nn.dynamic_rnn
, оно работает. Теперь я хочу использовать внимательность в тензорном потоке, поэтому я хочу изменить это на tf.contrib.seq2seq.dynamic_decode
, Но я получаю ошибку ниже:
TypeError: Cannot convert a list containing a tensor of dtype <dtype: 'int32'> to <dtype: 'float32'> (Tensor is: <tf.Tensor 'vector_rnn/DEC_RNN/transpose_1:0' shape=(100, ?) dtype=int32>)
Я проверяю документы API их обоих. tf.nn.dynamic tf.contrib.seq2seq.dynamic.decode Что касается их возврата, я не получил никакой идеи, чтобы решить эту ошибку.
Если у вас есть идеи, пожалуйста, скажите мне! Я был бы очень признателен.
1 ответ
На самом деле, это работает, если я использую tf.nn.dynamic_rnn
кодировать слои внимания в декодере VAE, просто разные с tf.contrib.seq2seq.dynamic_decode
,