Я реализую чатбот, используя модель seq2seq от Tensorflow [1], подавая его данными из Ubuntu Dialogue Corpus. Я хочу сравнить RNN с использованием стандартных клеток LSTM с клетками Grid LSTM, описанными в Kalchbrenner et al [2].Внедрение BidirectionalGridLSTM
Я пытаюсь реализовать ячейку сетки LSTM в модели перевода, описанной в разделе 4.4 [2], но я борюсь с двунаправленной частью.
Я попытался использовать BidirectionalGridLSTMCell, но я не уверен, что они подразумевают под num_frequency_block. Они не упоминают об этом в газете. Кто-нибудь знает, что они подразумевают под num_frequency_block? В api docs говорится: num_frequecy_blocks
: [обязательно] Список частотных блоков, необходимых для покрытия всего разделения входных данных, определенного start_freqindex_list
и end_freqindex_list
.
Кроме того, я попытался создать свою собственную ячейку. Сначала я делаю обработку с входами, затем меняю входы и выполняю обратную обработку. Но когда я конкатенирую эти результаты, форма меняется. Например. когда я пытаюсь запустить сеть с размером партии 32, тогда я получаю эту ошибку: ValueError: размеры должны быть равны, но 64 и 32 Как я могу конкатенировать результаты без изменения формы? Возможно ли это?
Есть ли у кого-нибудь другие советы, как я могу реализовать двунаправленную сетку LSTM?
[1] https://www.tensorflow.org/tutorials/seq2seq/ [2] https://arxiv.org/abs/1507.01526
Вы когда-нибудь выясняли num_frequency_blocks? Я сталкиваюсь с той же проблемой, и я не могу найти четкий ответ в любом месте в Интернете. – Wmol
Нет, извините, я этого не выяснил. – siljech