Я пытаюсь реализовать агент DQN, используя Keras-rl. Проблема в том, что когда я определяю свою модель, мне нужно использовать слой LSTM в архитектуре:
model = Sequential()
model.add(Flatten(input_shape=(1, 8000)))
model.add(Reshape(target_shape=(200, 40)))
model.add(LSTM(20))
model.add(Dense(3, activation='softmax'))
return model
При выполнении rl-agent я получаю следующую ошибку:
RuntimeError: Attempting to capture an EagerTensor without building a function.
Какой связано с использованием LSTM и со следующей строкой кода:
tf.compat.v1.disable_eager_execution()
Использование плотного слоя вместо LSTM:
model = Sequential()
model.add(Flatten(input_shape=(1, 8000)))
model.add(Dense(20))
model.add(Dense(3, activation='softmax'))
return model
и поддержание активного выполнения отключено не сообщалось ранее об ошибке. Если я удаляю отключение активного выполнения со слоем LSTM, у меня появляются другие ошибки.
Может кто-нибудь помочь мне понять причину ошибки?