For each training example, we want to train the network to predict a value xt , given a sequence of lags . The ideal number of lags is a hyperparameter, so some experimentation is in order.
Structuring the input in this way is a requirement of the BPTT algorithm, as we have previously talked about. We will use the following code to train the dataset:
def lag_dataframe(data, lags=1): df = pd.DataFrame(data) columns = [df.shift(i) for i in range(lags, 0, -1)] columns.append(df) df = pd.concat(columns, axis=1) df.fillna(0, inplace=True) cols = df.columns.tolist() for i, col in enumerate(cols): if i == 0: cols[i] ...