In this chapter, we will explain one of the most important deep learning models, recurrent neural networks (RNNs). We will start by reviewing what RNNs are and why they are well-suited for processing sequential data. After briefing the evolution paths of RNN models, we will illustrate a variety of RNN architectures that have been categorized by the different forms of input and output data, along with industrial examples. We will figure out the answers to questions such as, how can we generate only one output?, Can output be a sequence?, and does it work with only one input element?
We will follow this by discussing several architectures categorized by the recurrent layer. First, we will apply the basic RNN architecture to write our own War and Peace. The RNNs with vanilla architecture are not good at preserving long-term dependent information...