TimeDistributed wrapper'ın Keras'ta ne yaptığını anlamaya çalışıyorum.
TimeDistributed'ın "bir girdinin her geçici dilimine bir katman uyguladığını" anlıyorum.
Ama biraz deney yaptım ve anlayamadığım sonuçları aldım.
Kısacası, LSTM katmanıyla bağlantılı olarak TimeDistributed ve just Dense katman aynı sonuçları verir.
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)
Her iki model için de (Yok, 10, 1) çıktı şeklini aldım .
Bir RNN katmanından sonra TimeDistributed ve Dense katman arasındaki farkı açıklayan var mı?
Densegirdiyi düzleştiren ve sonra yeniden şekillendiren katman arasında bir ayrım yapmak , dolayısıyla farklı zaman adımlarını bağlamak ve daha fazla parametreye sahip olmak veTimeDistributedzaman adımlarını ayrı tutmak (dolayısıyla daha az parametreye sahip olmak) idi. Senin durumundaDense500 paramter olmalıydı,TimeDistributedsadece 50