Обучаемые веса такие же, как и обучаемые параметры. Обучаемый слой часто имеет несколько обучаемых весов.
Давайте рассмотрим этот пример:
Layer (type) Output Shape Param #
=================================================================
input_1 (InputLayer) (None, None, 501) 0
_________________________________________________________________
lstm_1 (LSTM) (None, None, 40) 86720
_________________________________________________________________
SoftDense (TimeDistributed) (None, None, 501) 20541
=================================================================
Total params: 107,261
Trainable params: 107,261
Non-trainable params: 0
__________________________
Первый слой - это просто входной слой;он получает данные как есть, поэтому у него нет обучаемых весов.
Следующий уровень имеет 542 * 4 * 40 = 86720 обучаемых весов. 40 из-за выходного значения dim, 4 потому что в качестве LSTM у него на самом деле есть 4 обучаемых слоя, и 542 для 501 + 40 + 1 ... по причинам, которые, вероятно, выходят за рамки этого ответа.
Последний слой имеет 41 * 501 = 20451 обучаемых весов (40 от входного слоя, +1 для смещения, время 501 для его выхода).
Всего обучаемых параметров - 107,261
.
Если бы я заморозил последний слой, у меня было бы только 86,720
обучаемых весов.