How evaluate multi-step forecasting performance for large dataset?

Illustration
EanX - 2021-07-29T11:10:04+00:00
Question: How evaluate multi-step forecasting performance for large dataset?

How evaluate multi-step forecasting performance for large dataset?   What I means is that to use NARX for forecasting I have to:   1. create closed loop network with   netc = closeloop(net); 2. construct target prediction data with targetSeriesPred = [targetSeries(end-delay+1:end), con2seq(nan(1,N))], i.e. use a number of nan equal to forecasting horizon 3. prepare data with [Xs,Xi,Ai,Ts] = preparets(netc,inputSeriesPred,{},targetSeriesPred); 4. get simulation/prediction results with yPred = netc(Xs,Xi,Ai); 5. evaluate forecasting performance (regarding olny one step-ahead prediction) with perf = perform(net,yPred,targetSeriesVal); Now suppose I have a large dataset of data concerning 3 years of hourly sampled data, I can utilize only the first year for traning, validation and test phase ('divideblock' of course). I don't know how to get a unique performance value for the remaining data, 2 years, for a forecasting horizon for example of only 6 samples. I hope I to have been clear enough. Thanks in advance for your replies/suggestions.

Expert Answer

Profile picture of Kshitij Singh Kshitij Singh answered . 2025-11-20

How evaluate multi-step forecasting performance for large dataset? Asked by EanX 14Apr2014
 
 A. Design an openloop net
  1. Use training data and nncorr or fft to estimate
   a. Significant autocorrelation output feedback lags
   b. Significant input/output crosscorrelation input lags
  2. Use trial and error to determine number of hidden layer nodes
  3. Use divideblock in narxnet to obtain multiple designs
  4. Choose the best design based on validation set error.
  5. Use the test set on the best design to obtain an UNBIASED 
     estimate of performance 

 B. Convert to a closeloop design
  1. [ netc Xci Aci ]= closeloop(neto, Xoi, Aoi)
  2. Use preparets and test netc on the original data
  3. If performance is unsatisfactory, train netc intialized with 
     the initial conditions Xoi, Aoi and final weights of neto.
  4. To predict beyond the original data, use the data at the end of 
     the test set to intialize the delay buffer and a new external input.
  5. Use preparets and netc to predict beyond the test data.


Not satisfied with the answer ?? ASK NOW

Get a Free Consultation or a Sample Assignment Review!