当您查看表格的标题时,您会看到标题Param:
Layer (type) Output Shape Param
===============================================
simple_rnn_1 (SimpleRNN) (None, 10) 120
此数字表示相应层中可训练参数(权重和偏差)的数量,在本例中为您的SimpleRNN。
编辑:
权重计算公式如下:
recurrent_weights + input_weights + 偏差
*resp: (num_features + num_units)* num_units + num_units
说明:
num_units = 等于 RNN 中的单元数
num_features = 等于您输入的特征数
现在您的 RNN 中发生了两件事。
首先,您有循环循环,其中状态被循环输入模型以生成下一步。循环步骤的权重是:
recurrent_weights = num_units*num_units
其次,您在每一步都有新的序列输入。
input_weights = num_features*num_units
(通常将最后一个 RNN 状态和新输入连接起来,然后乘以一个权重矩阵,但输入和最后一个 RNN 状态使用不同的权重)
所以现在我们有了权重,缺少的是偏差 - 每个单位都有一个偏差:
偏差 = num_units*1
所以最后我们有了公式:
recurrent_weights + input_weights + 偏差
或
num_units* num_units + num_features* num_units + 偏差
=
(num_features + num_units)* num_units + 偏差
在您的情况下,这意味着可训练的参数是:
10*10 + 1*10 + 10 = 120
我希望这是可以理解的,如果不只是告诉我 - 所以我可以编辑它以使其更清楚。