I have a model based on LSTMs that can predict a vector output based on a vector input. I can't increase the size of the output because :

  • I would need a larger network to obtain good results
  • It would take more time to train
  • The behaviour of my timeseries can be captured in the size of the vector I'm already predicting

So I tried to predict an output, and then use that prediction as a new input in my model and predict a new vector (without re-training). I iterate 5 times and I get this result :


As you can see, the first prediction is pretty good. Then, my model is lost and loses its accuracy. Do you know how to fix it ?



1 Answer 1


I'm going to answer to myself since I managed to fix that issue. The problem is that my model was overfitting waaaay too much and I had to add a dropout between each layer.

Now the result is better :

sisi la famille

I will now re-tune my model and improve it a bit.

note to myself : don't be lazy Julien, plot the validation loss next time


I trained it during 36 mn with more neurons per layer. Without overfitting, it's way way better.


Now I can predict 8 days of datapoints with a better accuracy.

  • $\begingroup$ I am trying to implement something like you with difficulties. How do you amange to take into account the last prediction as a new input for the newt time step during your training? $\endgroup$ Commented Jul 25, 2022 at 10:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.