LSTM需要学习的参数个数

 结论先行:

lstm所需学习的参数 = 4 * [(  input_size + hidden_num )*  hidden_num + hidden_num ]

LSTM需要学习的参数个数

我们知道输入一个28维的向量,会映射到128维来进行表示,

输出ht和记忆ct维度相同。

下面我们假设有13*5大小的图片,放进LSTM,隐含层神经元数量为10

 

LSTM需要学习的参数个数

ht-1 是上一时刻的输出,维数与隐含层神经元数量一致:1*10

xt为1*5 所以[ ht-1 , xt ] 的维数是1*15

又因为**函数不改变位数维数,所以我们不必考虑

Wf  bf 为该层的参数,Wf  与 [ ht-1 , xt ] 相乘得到 1*10的向量

所以可以得出 Wf 的维数是 15*10    即:Wf  × [ ht-1 , xt ] = 15*10  × 1*15  = 1*10

所以参数个数为Wf  + bf  = 15*10 + 10 = 160个

剩下的操作与这个遗忘门的操作在参数数量上相同

故 LSTM的所需学习参数个数为 160*4 = 640个

LSTM需要学习的参数个数

 

 

最后图片参考自:

https://www.cnblogs.com/wushaogui/p/9176617.html#1lstm%E7%AE%80%E5%8D%95%E4%BB%8B%E7%BB%8D