Neural Network Dynamic Time Series Analysis (NARX) with Multiple Series

2 views (last 30 days)
I am trying to train a single NARX network using multiple series (each with their own set of inputs and target), but it seems that the the tool can only handle one time series.
This is not my application, but for example, say I wanted to train a single NARX network using time series data from 3 different securities/stocks. For each security, the inputs would be trading volume, high, low, etc. and the target would be the closing price. For each unit of time, I will have 3 of each input variable, and 3 targets. I'm not sure how to set this up as a time series NN in Matlab, and train a single net (as opposed to training a net for each series). Training individual nets for each series would loose some of the value with my multiple series
Is there a way for the NN toolbox to handle this type of training?
  1 Comment
Mei
Mei on 23 Oct 2013
How did you make this work? Did you have a (3 x n_timesteps) cell array where each row represented each stock, and each cell being a 3 x 1 double, where each row represented the three input variables?

Sign in to comment.

Accepted Answer

Greg Heath
Greg Heath on 6 Jan 2013
I haven't looked in detail. However, I can't think of any reason why a narxnet cannot have multiple inputs and outputs.
The only drawback is that all of the input delays must be the same and all of the feedack delays must be the same.
Therefore, you should take a good look at the significant output autocorrelation peaks for positive lags and the significant input/output cross correlation peaks for nonnegative lags.
For x and t row vectors of the same length, N:
lag0 = -(N-1) : (N-1);
autocorrtt0 = nncorr(zscore(t,1),zscoret(t,1),N-1,'biased') ;
crosscorrtx0 = nncorr(zscore(t,1),zscoret(x,1),N-1,'biased') ;
lag = 0:N-1;
autocorrtt = autocorrtt0(N:end);
crosscorrtx = crosscorrtx0(N:end);
Hope this helps.
Thank you for formally accepting my answer.
Greg

More Answers (0)

Categories

Find more on Sequence and Numeric Feature Data Workflows in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!