How does a model forecast future data without those points in time? I trained my model, and validated it, but I’m struggling with predictions.
def predict_future(seconds: int, future_data, df):
all_preds = []
model.eval()
seq = torch.from_numpy(future_data[:batch_size]).float()
with torch.no_grad():
preds = model(seq).detach().to('cpu').numpy()
preds = np.squeeze(preds[:seconds]).shape
preds = undo_normalize_0_to_1(preds, df.min, df.max)
all_preds.append(preds)
print(preds)
return all_preds
This is my code, but it doesn’t predict future points, it only makes predictions on “seconds” number of points in the array future_data. I was thinking maybe I need to shift my data so that each point corresponds to the future point, but I wasn’t sure if that was a legitimate approach to this.