Вызов LSTM с учетом состояния в качестве функциональной модели?

У меня есть LSTM с состоянием, определяемый как последовательная модель:

model = Sequential() model.add(LSTM(..., stateful=True)) ... 

Позже я использую его как функциональную модель:

 input_1, input_2 = Input(...), Input(...) output_1 = model(input_1) output_2 = model(input_2) # Is the state from input_1 preserved? 

input_1 ли состояние от input_1 когда мы снова применяем model на input_2 ? Если да, как я могу сбросить состояние модели между вызовами?

One Solution collect form web for “Вызов LSTM с учетом состояния в качестве функциональной модели?”

Следуя примечанию об использовании состояния в RNN из этой ссылки и реализации Keras, ответ да, если:

  1. batch_size в обеих моделях одинаковый (это важно из-за того, как Keras вычисляет внутренние состояния).
  2. Сначала вы строили и компилировали обе модели, а затем использовали их – по какой-то причине Keras сбрасывает внутренние состояния во время build слоя (вы можете проверить его здесь , ища метод reset_states ).

Если вы хотите сбросить состояния, вы можете вызвать метод reset_states на каждом повторном уровне, на котором вы хотите сбросить состояния сброса.

  • Почему перестановка моей проверки в Keras меняет производительность моей модели?
  • маскирование для keras BLSTM
  • Как изменить бэкэнд Keras (где находится json-файл)?
  • Понимание формы ввода lstm в керах с различной последовательностью
  • Keras / Tensorflow предсказывают: ошибка в форме массива
  • Python / Keras - неправильное количество измерений: ожидается 3, получилось 2 с формой (119, 80)
  • Как обрабатывать форму ввода и вывода для keras LSTM
  • Проблема моделирования Keras Backend
  • Python - лучший язык программирования в мире.