MATLAB Answers

Simple time-series forecasting fails

3 views (last 30 days)
MatteoC
MatteoC on 16 Apr 2021
Answered: Puru Kathuria on 11 May 2021
Hello,
I followed this guide https://uk.mathworks.com/help/deeplearning/ug/time-series-forecasting-using-deep-learning.html to forecast time-series. This example works quite well on the dataset used. However, if I change the first two lines
data = chickenpox_dataset;
data = [data{:}];
into this
data=linspace(0,100,1000);
I expect a much better prediction given the simplicity of the problem (i.e. just a straight line to be continued in the future).
However, the result is completely off.
I am wondering, how could this be? How do I generalize this network to solve simple linear problems ?

Answers (1)

Puru Kathuria
Puru Kathuria on 11 May 2021
There are certain aspects that control the degree of overfitting and generalization.
  1. Number of parameters can be altered depending on the difference between test score and training score. Also, keeping in mind the complexity(non-linearity) of the data. (Bringing down the num of parameters in case of simpler problems)
  2. Dropout neurons: adding dropout neurons to reduce overfitting.
  3. Regularization: L1 and L2 regularization.
After you have trained the network, you can successfully use that same network to perform prediction on other datasets(simple/complex). This process will be termed as transfer learning.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by