基本介绍
双向LSTM或biLSTMQ是一种序列处理模型,由两个LSTM组成:一个在前向接收输入,另个在后向接收输入。BiLSTMs有效地增加了网络可用的信息量。利用LSTM对句子进行建模还存在一个问题:无法编码从后到前的信息。在更细粒度的特征挖掘时缺乏能力,通过BiLSTM可以更好的捕捉双向的时序信息。
模型介绍
长短期记忆网络实质上可以理解为一种特殊的RNN,主要是为了解决RNN网络在长序列训练过程中发生梯度消失和梯度爆炸的问题。相比于RNN,LSTM主要是引入了细胞形态用于保存长期状态,而关键就在于如何控制长期状态,从而引用了控制门的机制,该机制可以去除或者增加信息到细胞状态的能力。通过siamoid函数将门输出为[0,1]的实数向量。当门输出为0时,乘以该向量的任何向量都将得到0向量,即判定为不能通过。当输出为时,乘以任何向量都不会改变其原值,即可以通过。神经元中加入了输入门,遗忘门,输出门,以及内部记忆单元。
·在LSTM神经网络训练学习的过程中,第一步是由遗忘门决定从细胞状态中丢弃哪些信息。该步骤会读取和输入数据点乘计算得到一个输出值,其决定了上一时刻的状态有多少会保留到当前时刻。
·第二步,将确定哪些新信息将会被添加到网络结构或细胞状态中。
。第三步,进行细胞状态更新。
。第四步,需要决定输出怎样的信息。
程序设计
%---------------------------------------------------------