keras的lstm参数,lstm神经网络 python

  keras的lstm参数,lstm神经网络 python

  本文主要介绍用python神经网络Keras实现LSTM及其参数的详细说明。有需要的朋友可以借鉴一下,希望能有所帮助。祝大家进步很大,早日升职加薪。

  00-1010什么是LSTM1,LSTM结构2,唯一门结构3,LSTM参数计算a,遗忘门b,输入门c,输出门d,以及在Keras中实现LSTM实现代码的所有参数?

  

目录

 

  

什么是LSTM

 

  我们可以看到,在时间n,LSTM有三个输入:

  当前时间网络的输入值XT;LSTM最后时刻的输出值ht-1;前一时刻的机组状态Ct-1。LSTM有两个输出:

  当前时间的LSTM输出值ht;当前机组状态Ct。

  

1、LSTM的结构

 

  LSTM使用两个门来控制小区状态cn的内容:

  忘记gate,它决定了前一时刻的单元状态cn-1有多少保留给当前时刻;输入门,其确定当前时刻在新的小区状态cn中保存了多少网络的输入cn。LSTM使用一个门来控制当前输出值hn的内容:

  输出门,通过使用当前单元状态cn来控制hn的输出。

  

2、LSTM独特的门结构

 

  

3、LSTM参数量计算

 

  这里的遗忘门需要结合ht-1和Xt来确定上一时刻的单元状态cn-1有多少保留给当前时刻;

  从图中我们可以得出,在这个环节中我们需要计算一个参数ft。

  

a、遗忘门

 

  这里的门需要结合ht-1和Xt来确定当前时刻单位状态cn下保存了多少网络的输入Cn。

  从图中我们可以得出,在这个环节中我们需要计算两个参数,即it。

  还有C t

  要训练的参数是Wi、bi、WC和bC。

  在定义LSTM的时候,我们会用到一个叫做units的参数,其实就是神经元的数量,也就是LSTM输出——ht的维数。

  所以:

  

b、输入门

 

  该门通过使用当前单元状态cn来控制hn的输出;

  从图中我们可以得出,在这个环节中我们需要计算一个参数ot。

  其中要训练的参数分别是w0和B0。在定义LSTM的时候,我们会用到一个叫做units的参数,其实就是神经元的数量,也就是LSTM输出——ht的维数。所以:

  

c、输出门

 

  所以所有门的总数是:

  

d、全部参数量

 

  LSTM一般需要输入两个参数。

  一个是unit、一个是input_shape。

  

LSTM(CELL_SIZE, input_shape = (TIME_STEPS,INPUT_SIZE))

 

  unit用于指定神经元的数量。

  input_shape用于指定输入的shape,分别指定TIME_STEPS和INPUT_SIZE。

  

 

  

实现代码

 

  

import numpy as np

 

  实现效果:

  

10000/10000 [==============================] - 3s 340us/step

 

  以上就是python神经网络Keras实现LSTM及其参数量详解的详细内容,更多关于Keras实现LSTM参数量的资料请关注盛行IT软件开发工作室其它相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: