RNNs are a family of networks used to solve problems, where it's important to know the sequence of events. They are very similar to Convolutional Neural Networks (CNNs), which are good at predicting grid data, like the below image.
RNNs are better at predicting a sequence of inputs that span over multiple time steps. The input in this case looks as follows:
Here, X(τ) is the value at the time period, τ.
An example of a sequential task could be to categorize and segment continuous handwritten characters. In this case, to find out when a letter ends and when another starts, it's important to know not only the current information (that is, the pixels), but also the related information:
RNNs have been successfully applied to many fields; some of these fields are as follows:
- Speech recognition
- Video sequence prediction
- Machine translation...