Analyzing sequential data using recurrent neural networks
With all our neural network examples so far, we have been using static data. Neural networks can also be used effectively to build models that process sequential data. Recurrent neural networks (RNNs) are great at modeling sequential data. You can learn more about recurrent neural networks at:
https://www.jeremyjordan.me/introduction-to-recurrent-neural-networks/
When we are working with time series data, we normally cannot use generic learning models. We need to capture the temporal dependencies in the data so that a robust model can be built. Let's see how to build it.
Create a new Python file and import the following packages:
import numpy as np
import matplotlib.pyplot as plt
import neurolab as nl
Define a function to generate the waveforms. Start by defining four sine waves:
def get_data(num_points):
# Create sine waveforms
wave_1 = 0.5 * np.sin(np.arange(0, num_points))
...