What is Recurrent Neural Network and how does it work?
- Naveen
- 0
Recurrent neural network is a type of deep learning algorithm which is used to process sequential data.
The main idea of recurrent neural network is that it can learn from previous information and then use that information to predict the next one. That’s why it’s called a recurrent neural network, because it can go back and forth through time. This type of AI is used for things like speech recognition, language translation, and machine translation. However, the scope of its uses has been expanding to include areas such as web search engines, data mining in business intelligence, speech recognition in smartphones, facial recognition software in security systems and photo editing software for consumers.
speech recognition in smartphones is becoming more common. For example, Siri is an intelligent personal assistant that can help you navigate your phone, set alarms and reminders, and answer questions. Facial recognition software in security systems can be used to identify individuals in surveillance videos. Photo editing software for consumers includes apps like Snapchat and Instagram which allow you to edit your pictures with filters or tools like sketching or adding stickers. In RNNs, each member of the output is a function of the previous members of the output; this is by applying the same update rule to previous outputs. In this manner, it is possible to share weights through a very deep convolutional graph, such as the following diagram.
We denote the input of an RNN with a vector, x (t), with the time step that goes from 1 to τ. Most of the time, an RNN operates on mini-batches composed by sequences with different lengths for each member. An RNN can also be applied on sequences with multiple dimensions that are linked through time, for example, a video
The advantages of RNNs are as follows:
- There is no limitation on the input length, without impacting the model size
- They are able to take sequential history into account
- Weights are shared across time
On the other hand, the disadvantages of RNNs are as follows:
- They are time-intensive
- They have difficulty accessing information from a long time ago
- They cannot consider any future input for the current state