循环神经网络

循环神经网络(recurrent neural network,RNN)源自于1982年由John Hopfield提出的霍普菲尔德网络。霍普菲尔德网络因为实现困难,在其提出的时候并且没有被合适地应用。该网络结构也于1986年后被全连接神经网络以及一些传统的机器学习算法所取代。

传统的机器学习算法非常依赖于人工提取的特征,使得基于传统机器学习的图像识别、语音识别以及自然语言处理等问题存在特征提取的瓶颈。而基于全连接神经网络的方法也存在参数太多、无法利用数据中时间序列信息等问题。随着更加有效的循环神经网络结构被不断提出,循环神经网络挖掘数据中的时序信息以及语义信息的深度表达能力被充分利用,并在语音识别、语言模型、机器翻译以及时序分析等方面实现了突破。

循环神经网络是一种节点定向连接成环的人工神经网络。这种网络的内部状态可以展示动态时序行为。循环神经网络的主要用途是处理和预测序列数据。在之前介绍的全连接神经网络或卷积神经网络模型中,网络结构都是从输入层到隐含层再到输出层,层与层之间是全连接或部分连接的,但每层之间的节点是无连接的。但是如果要预测句子的下一个词语是什么,一般需要用到当前词语以及前面的词语,因为句子中前后词语并不是独立的。比如,当前词语是“中国”,之前的词语是“我是”,那么下一个词语大概率是“人”。

长短时记忆网络

当前预测位置和相关信息之间的间隔不断增大时,简单循环神经网络有可能会丧失学习到距离如此远的信息的能力,或者在复杂语言场景中,有用信息的间隔有大有小、长短不一,循环神经网络的性能也会受到限制。在这种情况下,1997年Hochreiter和 Schmidhuber提出了长短时记忆网络(long short-term memory,LSTM)。
LSTM是一种循环神经网络特殊的类型,可以学习长期依赖信息。采用LSTM结构的循环神经网络比标准的循环神经网络表现更好。与单一循环体结构不同,LSTM是一种拥有三个“门”结构的特殊网络结构。在很多问题,LSTM 都取得相当巨大的成功,并得到了广泛的使用。LSTM 通过特意的设计来避免长期依赖问题。记住长期的信息在实践中是 LSTM 的默认行为,而不需要付出很大代价才能获得的能力。因此目前大多数循环神经网络都是通过LSTM结构实现的。

参考文献

《神经网络与深度学习:基于tensorflow框架和python技术实现》,包子阳,电子工业出版社。
发布于 7 分钟前

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐