Я пытаюсь понять, что делает оболочка TimeDistributed в Keras.
Я получаю, что TimeDistributed "применяет слой к каждому временному фрагменту ввода."
Но я сделал некоторый эксперимент и получил результаты, которые я не могу понять.
Короче говоря, в связи со слоем LSTM, TimeDistributed и просто Dense-слой имеют одинаковые результаты.
model = Sequential()
model.add(LSTM(5, input_shape = (10, 20), return_sequences = True))
model.add(TimeDistributed(Dense(1)))
print(model.output_shape)
model = Sequential()
model.add(LSTM(5, input_shape = (10, 20), return_sequences = True))
model.add((Dense(1)))
print(model.output_shape)
Для обеих моделей я получил выходную форму (None, 10, 1).
Может ли кто-нибудь объяснить разницу между слоем TimeDistributed и Dense после слоя RNN?