An RNN can have multiple architectures. Some of the possible ways of architecting an RNN are as follows:
In the preceding diagram, the boxes at the bottom are the input, followed by the hidden layer (the middle boxes), and then the boxes at the top are the output layer. The one-to-one architecture is a typical neural network with a hidden layer between the input and output layers. Examples of different architectures are as follows:
- One-to-many: The input is an image and the output is a caption of the image.
- Many-to-one: The input is a movie review (multiple words in input) and the output is the sentiment associated with the review.
- Many-to-many: Machine translation of a sentence in one language to a sentence in another language.
The idea behind the need for RNN architecture
RNNs are useful when we want to predict the next event given a sequence of events. An example of that could be to predict the word that comes after this: This is an ___.
Let's say that in reality...