Narx model GIVES POOR PERFORMANCE

I am trying to train a NN using NEWNARXSP. When I execute the following commands:
current={ [3.38] [3.37706] [3.37412] [3.37118] [3.36824] [3.3653] [3.36236] [3.35942] [3.35648] [3.35354] [3.3506] [3.34766] [3.34472] [3.34178] [3.33884] [3.3359] [3.33296] [3.33002] [3.32441] [3.32147] [3.32] [3.31804] [3.31706] [3.31559] [3.31412] [3.31118] [3.30922] [3.30771] [3.3053] [3.3] [3.29804] [3.29706] [3.29412] [3.29265] [3.29118] [3.2884] [3.28294] [3.28] [3.27608] [3.27412] [3.27118] [3.26824] [3.267505] [3.26677] [3.26660] [3.26660] [3.26660] [3.2702] [3.27412] [3.27559] [3.27608] [3.27706] [3.27853] [3.28] [3.28147] [3.28294] [3.28588] [3.2898] [3.29559] [3.3] [3.30294] [3.30588] [3.31265] [3.31559] [3.32] [3.3249] [3.32724] [3.33314] [3.33608] [3.34] [3.34294] [3.34735] [3.35078] [3.3547] [3.36] [3.36441] [3.36882] [3.37176] [3.37323] [3.37412] [3.37706] [3.38] [3.38294] [3.38]};
resistance={[6.02] [6.02] [6.02] [6.02] [6.02] [6.02] [6.02] [6.02] [6.02] [6.02] [6.02] [6.02] [6.02] [6.02] [6.02] [6.02] [6.02] [6.02] [6.04] [6.06] [6.10] [6.12] [6.14] [6.16] [6.18] [6.22] [6.24] [6.28] [6.31] [6.40] [6.44] [6.48] [6.52] [6.56] [6.60] [6.68] [6.78] [6.86] [7] [7.07] [7.23] [7.42] [7.5] [7.58] [7.66] [7.74] [7.9] [8] [8] [8] [7.9] [7.82] [7.74] [7.66] [7.58] [7.5] [7.43] [7.31] [7.16] [7.07] [7] [6.93] [6.83] [6.79] [7.72] [6.65] [6.60] [6.54] [6.5] [6.46] [6.42] [6.38] [6.34] [6.30] [6.26] [6.22] [6.18] [6.15] [6.14] [6.12] [6.11] [6.1] [6.06] [6.02]};
a=cell2mat(current);
b=cell2mat(resistance);
d1=[1 2];
d2=[1 2];
sus=newnarxsp({[3.26660 3.38],[6.02 8]},d1,d2,[5 1],{'tansig','purelin'});
p=[a;b];
T=b;
sus.trainFcn='trainlm';
sus.trainparam.show=100;
sus.trainparam.epochs=1000;
sus=train(sus,p,T);
IT GIVES POOR PERFORMANCE. Actually I want to measure the value of resistance by using the current. here current is input and resistance is target . what can i do now?

1 comentario

Walter Roberson
Walter Roberson el 18 de En. de 2012
Note: all those [] are unnecessary. Especially as you cell2mat() anyhow, suggesting that you would be better off writing
current = [3.38 3.3776 3,37412 <etc>];

Iniciar sesión para comentar.

Respuestas (1)

nick
nick el 11 de Oct. de 2024

0 votos

Hi c.m.f.s.,
Here are a few suggestions to improve performance of your NARX neural network:
Data Normalization: You can normalize your input and target data. Models trained on normalized data tend to have better generalization capabilities, resulting in more accurate predictions on unseen data.
Network Architecture: You can experiment with different network architectures with different numbers of neurons in the hidden layer or different activation functions.

Categorías

Más información sobre Deep Learning Toolbox en Centro de ayuda y File Exchange.

Preguntada:

el 18 de En. de 2012

Respondida:

el 11 de Oct. de 2024

Community Treasure Hunt

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

Start Hunting!

Translated by