Я пытаюсь воссоздать эту архитектуру.
Модель имеет вложения и слой LSTM , за которым следует слой пула .
Я застрял на том, как объединить несколько выходов LSTM.(не объединяя временную последовательность).
например, если входные последовательности LSTM:
Start1 - A - B - C - End1
Start1 - C - D - E - End1
Я хочу, чтобы эти 2 последовательных LSTM-выхода сначала были объединены (как вывод прогноза (max или avg)) перед тем, как LSTM предпримет этап обучения.
(Объединены, потому что они имеют одинаковое начало и конец).
Я ожидаю что-то вроде этого:
input_layer = Input()
x = Embedding()(input_layer)
x = LSTM()(x)
output = ConditionalPooling()(x)
Вопрос в том, как реализовать ConditionalPooling
, где ConditionalPooling
- это функция для группировки выходных последовательностей с одинаковыми головами и хвостами.
Спасибо:)