循环神经网络是基于记忆模型的想法,期望网络能够记住前面出现的特征,并依据特征推断后面的结果,而且整体的网络结构不断循环,因此得名循环神经网络。
1.循环神经网络的基本结构
循环神经网络的基本结构非常简单,就是将网络的输出保存在一个记忆单元中,这个记忆单元和下 一次的输入一起进入神经网络中,输入序列的顺序改变,会影响网络的输出结果,因为记忆单元的存在,使得两个序列在改变顺序之后记忆单元的元素也改变了,所有会影响最终的输出结果。
使用双向循环神经网络,网络会先从序列的正方向读取数据,再从反方向读取数据,最后将网络输出的两种结果合在一起形成网络的最终输出结果。
2.循环神经网络的变式:LSTM和GRU
LSTM
LSTM由三个门来组成,这三个门是输入门,遗忘门和输出门。输入门控制着网络的输入,遗忘门控制着记忆单元,输出门控制着网络的输出。其中最重要的就是遗忘门,遗忘门的作用是决定之前的哪些记忆将被保留,哪些记忆将被去掉,正是因为遗忘门的作用,使得LSTM有了长时记忆的功能。对于给定的任务,遗忘门能够自己学习保留多少以前的记忆,这使得不再需要人干扰,网络就能够自己学习。
GRU
GRU和LSTM最大的不同在于GRU将遗忘门和输出门合成了一个“更新门”,同时网络不再给出记忆状态,而是将输出结果作为记忆状态不断向后进行循环传递,网络的输入输出都变得特别简单。