Following is the time history response of my input features, which has relatively low frequency component enter image description here My LSTM network architecture is as follows:

layers = [
    sequenceInputLayer(size(X_train{1}, 1)) % Input Features (F)
    lstmLayer(x.num_hidden_units_1, 'OutputMode', 'sequence')
    lstmLayer(x.num_hidden_units_2, 'OutputMode', 'sequence')

During the training, my network predictions are plotted with the target output as follows enter image description here The network output has a very high frequency output on the valildation data, however when the model is used to predict the test data, it is giving a flat line. enter image description here The two major concerns for me are:

  1. Why the LSTM network is giving high frequency output even when the input features have relatively low frequency?
  2. During the training when the model has high frequency, why is it giving a flat line during testing?
  • $\begingroup$ Welcome to the site! Consider using a code block to make your architecture a bit clearer. $\endgroup$
    – fswings
    Nov 6, 2023 at 22:48
  • $\begingroup$ Thanks! I edited the question to make it more clear $\endgroup$ Nov 7, 2023 at 11:08


Your Answer

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

Browse other questions tagged or ask your own question.