Adjusting delays in a NARX neural network

10 Ansichten (letzte 30 Tage)
S. Moore
S. Moore am 19 Feb. 2015
Kommentiert: Greg Heath am 23 Feb. 2015
The NARX provided by the MATLAB toolbox defines y(t) as a function of past inputs and outputs:
y(t) = f(x(t-1), ... ,x(t-d),y(t-1), ... ,y(t-d))
The standard definition of NARX defines y(t) as a function of past and present inputs and past outputs:
y(t) = f( x(t) ,x(t-1), ... ,x(t-d),y(t-1), ... ,y(t-d))
I have attached a picture to illustrate my question.
What is the MATLAB command to modify the input TDL of my existing NARX model to accomidate the present input?
My illustration shows [0:6], but any help is appreciated to achieve similar results such as [0:5], etc.

Akzeptierte Antwort

S. Moore
S. Moore am 20 Feb. 2015
One solution is to create a new net from scratch thusly:
net = narxnet(0:4,1:5,10);

Weitere Antworten (1)

Greg Heath
Greg Heath am 19 Feb. 2015
MATLAB Toolbox yields the standard dependence on the present input indicated by a 0 input delay. However, feedback delays must be positive.
Hope this helps.
Thank you for formally accepting my answer
Greg
  2 Kommentare
S. Moore
S. Moore am 19 Feb. 2015
Bearbeitet: S. Moore am 20 Feb. 2015
The NARX model provided by the nnstart toolbox is shown in file attachment of the original post. The delays on both x(t) and y(t) are set to [1:6]. However, I would like to have the delay on x(t) set to e.g. [0:5], while the delay on y(t) stays [1:6].
The canonical definition of the nonlinear autoregressive exogenous model (" Nonlinear System Identification: NARMAX Methods in the Time, Frequency, and Spatio-Temporal Domains ") specifies the equation:
y(t) = f( x(t) ,x(t-1), ... ,x(t-d),y(t-1), ... ,y(t-d))
Which is different than the NARX model presented by MATLAB , due to the missing x(t) term.
Either I need to setup a new net from scratch, or modify the net created by the toolbox. I admit learning all of the net commands to create a new net from scratch is the more academic solution, but it would be nice to simply modify the delay element in the existing net without having to create a new one.
Original post:
What is the MATLAB command to modify the input TDL of my existing NARX model to accommodate the present input?
Greg Heath
Greg Heath am 23 Feb. 2015
I explained in my answer that the MATLAB software does support ID >= 0. However FD must be > 0.
In other words:
Software OK
Documentation LACKING
Greg

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by