第6章 循环神经网络——RNN
第3章“深度学习之卷积网络”中,我们学习了卷积神经网络,并知道CNN如何利用输入中的空间几何的结构信息。例如,CNN对音频和文本数据在一个一维的时间维度上,对图像在(高×宽)的二维维度上,对视频在(高×宽×时间)的三维维度上采用了卷积和池化操作。
本章中,我们将学习循环神经网络(Recurrent Neural Networks,RNN),这是一类利用了输入数据的序列化特性的神经网络。序列化输入可以是文本、语音、时间序列或任意其元素的出现依赖于它之前元素的序列。例如,句子“the dog……”中的下一个词更有可能是 barks 而不是car,因此,给定这样的序列,RNN的预测更可能是barks而非car。
RNN可以理解成一个RNN单元的图形,图形中的每个单元对序列中的每个元素执行相同的操作。RNN网络非常灵活,而且已被用来解决诸如语音识别、语言建模、机器翻译、情感分析和图片说明等各类问题。RNN可以通过重新安排图形中的单元来解决不同类型的问题。我们将看到这些构造的一些实例以及它们是如何解决特定问题的。
我们还将学习SimpleRNN单元的主要局限,以及SimpleRNN的两种变体长短期记忆网络(Long Short Term Memory,LSTM)和门控循环单元网络(Gated Recurrent Unit,GRU)是如何突破这个局限的。LSTM和GRU都可以很简单地替换掉SimpleRNN单元,而用二者之一替代RNN单元经常会让你的网络有显著的改进。LSTM和GRU并非仅有的变体,实证研究(更多信息请参考文章《An Empirical Exploration of Recurrent Network Architectures》,作者R. Jozefowicz, ...
Get Keras深度学习入门与实践 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.