How to use more than one training set for training a NARX neural network?
Mostra commenti meno recenti
I have a question concerning the training of NARX neural networks using the Neural Network Toolbox. The task is to obtain a neural black box model of a time-dependent system and, as such, to predict time series.
Now I want to train my NARX network not only with one training set, i.e. one time series, but with several ones. In my case, this is important since it is important that the network captures the real system's behavior in the beginning of a time series. Hence, if I only use one training series, there is only one opportunity for the network to learn that behavior.
Again, to clarify: Can I somehow join several time series into one and use it for training, or can I do the training with several time series?
If an example might help, consider this: Say I want to train the NARX network such that it approximates a timeseries y(t)=t^2 + u(t). Now, it doesnt make full sense to create only one training data set with a varying u over time, say u(t)=t: Since the system itself is time-dependent, how can the network ever learn what would happen e.g. in the beginning if I would use u(t)=sqrt(t) and then predict the according time series? Hence, I would like to create several training data sets with say u(t)=t; u(t)=sqrt(t); u(t)=t^2 so that the network might interpolate between them. The final question to be answered is: How can I train the network using all these three training data set - at once?
I hope I could describe my issue in due detail.
Thanks a lot in advance! Robert
Risposta accettata
Più risposte (1)
Greg Heath
il 6 Lug 2014
You are not going to be able to do it that way.
1. The net has to recognize which waveform is the input.
a. How many waveforms do you have?
b. How long are they?
2. The weights, not to mention the significant delays, for each input will be different.
I have designed two stage classifiers where the first stage determined which of several second stage classifiers in parallel will complete the classification.
In your case, you could design a first stage classifier to determine which waveform is being input. Its output will then be directed to a second stage containing several parallel nets where each is designed for one type of input.
Hope this helps.
Thank you for formally accepting my answer
Greg
1 Commento
Robert
il 6 Lug 2014
Categorie
Scopri di più su Time Series Analysis in Centro assistenza e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!