Пользовательская ячейка RNN - проблема с размером ввода - PullRequest
0 голосов
/ 10 июля 2019

Я создаю собственную RNNCell, которая полностью отличается от стандартных ячеек TensorFlow, и я использую следующий код:

Пожалуйста, посетите Я пытаюсь создать свою собственную ячейку RNN в тензорном потоке, но этоне работает

  1. В этом примере batch_size для x_place равен 1. Почему код не работает для batch_size больше 1?

В частности, я получаю эту ошибку с batch_size = 2: входной тензор 'Placeholder_1: 0' входит в цикл с формой (1, 1), но имеет форму (2, 1) после одной итерации.Чтобы форма могла изменяться на разных итерациях, используйте аргумент shape_invariants в tf. while_loop, чтобы указать менее конкретную форму.

Предположим, в вызове метода () я создаю свой собственный RNN как:

next_state = состояние + w * f (состояние) + ввод

(state_size - N * 1, w_size - N * 1, а input-dim - 1

f - произвольная функция

input_size = [batch_size, time_step, 1] в моем примере)

Но dynamic_rnn не работает с этой пользовательской ячейкой из-за input_size.Зачем?

Я очень признателен, если кто-нибудь сможет объяснить, как я могу использовать метод dynamic_rnn (), если ввод является аддитивным, как в приведенном выше примере.

...