Есть ли разница между этими двумя методами использования слоя Dense
? Кажется, форма вывода одинакова, а число параметров одинаково.
- Будет ли вывод одинаковым, если мы используем фиксированные веса?
- Будет ли результат одинаковым во время тренировки?
def test_rnn_output_v1():
max_seq_length = 10
n_features = 8
rnn_dim = 64
dense_dim = 16
input = Input(shape=(max_seq_length, n_features))
out = LSTM(rnn_dim, return_sequences=True)(input)
out = Dense(dense_dim)(out)
model = Model(inputs=[input], outputs=out)
print(model.summary())
# (None, max_seq_length, n_features)
# (None, max_seq_length, dense_dim)
def test_rnn_output_v2():
max_seq_length = 10
n_features = 8
rnn_dim = 64
dense_dim = 16
input = Input(shape=(max_seq_length, n_features))
out = LSTM(rnn_dim, return_sequences=True)(input)
out = TimeDistributed(Dense(dense_dim))(out)
model = Model(inputs=[input], outputs=out)
print(model.summary())
# (None, max_seq_length, n_features)
# (None, max_seq_length, dense_dim)