Neural Network Toolbox NARX

4 views (last 30 days)
Elliot Lee
Elliot Lee on 31 Oct 2017
Answered: Greg Heath on 1 Nov 2017
I trained a data set with NARX and generated matlab matrix-only function for the trained network. So far so good!
Yet, I'm curious why the generated function still requires the "y" data set. Except the first a few delay, doesn't it use its own y output? In the for-loop of the generated function, there is this line:
% Input 2 (this input2 is the y label that I trained)
xd2(:,xdts) = mapminmax_apply(x2(:,ts),x2_step1);
Is it predicting the y based on actual previous y rather than previously predicted y value? If so, is there a way that the network uses its own previous prediction except for the first few delay?
Thank you
===========================================
Ok. I realized there's a closed loop net as well. However, its performance is drastically poorer than open-loop based on the actual label. Is there a possible way to augment this?

Answers (1)

Greg Heath
Greg Heath on 1 Nov 2017
MATLAB does not have an answer for what to do when the loop is closed and the resulting CL performance is OFTEN VERY MUCH WORSE than the OL peformance.
I have tried to continue training with the new CL configuration. This only works a very small percentage of the time.
I think I have posted in the NEWSGROUP which of the MATLAB EXAMPLES are easily trained with a simple CL command.
The only suggestion I have is to try to train the CL configuration from the beginning.
It would be nice to find a non-MATLAB discussion.

Categories

Find more on Deep Learning Toolbox 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!