Recurrent Neural Networks
RNNs are used when we have sequential data. Some examples of problems that use sequence data include:
Speech Recognition
Music Generation
Sentiment Classification
DNA Sequence Analysis
Machine Translation
Video Activity Recognition
Name Entity Recognition etc
An RNN learns how to map an input sequence to an output sequence.
The input sequence is denoted by where i denotes training examples and is the length of the input sequence of the training example.
Similarly, the output sequence is denoted by where i denotes training examples and is the length of the output sequence of the training example.
The input and output sequences can have different lengths. This is one of the main reasons why we can't use a standard neural network to learn the mapping from the input to the output sequences. Another reason is because standard neural networks don't share features learned across different positions of a sequence.
Last updated