# What is the order of the InputWeigths vector in a NARX net?

1 view (last 30 days)
Hello everyone, I am trying to replicate a previously trained NARX net from the net weights.
The net was buit with the following parameters:
inputDelays = 0:12;
feedbackDelays = 1:12;
hiddenLayerSize = 2;
Where the inputs are three elements and the output is one.
When I get the weights from the net, it returns the following:
>>net.IW
ans=
2×2 cell array
{2×39 double} {2×12 double}
{0×0 double} {0×0 double}
>>net.LW
ans =
2×2 cell array
{0×0 double} {0×0 double}
{1×2 double} {0×0 double}
>>net.b
ans=
2×1 cell array
{2×1 double}
{1×1 double}
I understand that the element net.IW{1,1} corresponds to the weights of the input vector for each neuron, but since I have three input variables, the input is a matrix of size 3x13 and not a vector of size 1x39.
I tried transforming the input matrix into a 1x39 vector, following the order: [X1(t),X2(t),X3(t),X1(t-1),X2(t-1,X3(t-1),...,X1(t-12),X2(t-12),X3(t-12)], but I do not get the same result as using the network. Is this the correct order? If not, how should it be?
Thanks

Maria Duarte Rosa on 5 Jul 2019
Hi Francisco,
One suggestion is to use genFunction(net) to generate a MATLAB script from the trained network that contains all the operations and parameters of the network. This might help clarifying some of your questions.

### Categories

Find more on Deep Learning Toolbox in Help Center and File Exchange

R2019a

### Community Treasure Hunt

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

Start Hunting!

Translated by