Narx model GIVES POOR PERFORMANCE
Mostra commenti meno recenti
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 Commento
Walter Roberson
il 18 Gen 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>];
Risposte (1)
nick
il 11 Ott 2024
0 voti
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.
Categorie
Scopri di più su Deep Learning Toolbox in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!