Mon jeu de données comprend 29 entrées et 6 sorties. Quand j'utilisePourquoi newff() ne fonctionne pas correctement quand j'utilise ses arguments!
net = newff(minmax(Pl),[14 12 8 6]);
pour construire mon avancement réseau MLP et de former par
net.trainParam.epochs=50;
net=train(net,Pl,Tl);
le réseau ne peut pas apprendre mon ensemble de données et son erreur ne diminue pas au-dessous de 0,7, mais quand je l'utilise arguments de newff fonctionnent comme ceci:
net=newff(minmax(Pl),[14 12 8 6],{'tansig' 'tansig' 'tansig' 'purelin'},'trainlm');
l'erreur est diminuée très rapidement et il vient en dessous de 0,0001! La note inhabituelle est que lorsque j'utilise le code précédent en utilisant une seule couche comprenant 2 neurones:
net=newff(minmax(Pl),[2 6],{'tansig' 'purelin'},'trainlm');
l'erreur est réduite en dessous de 0,2 à nouveau et il est douteux! S'il vous plaît me donner quelques conseils et aidez-moi de savoir quelle est la différence entre:
net = newff(minmax(Pl),[14 12 8 6]);
et
net=newff(minmax(Pl),[14 12 8 myANN.m],{'tansig' 'tansig' 'tansig' 'purelin'},'trainlm');
?
Quelle version de MATLAB utilisez-vous? Aussi, n'utilisez pas autant de couches cachées. Vous en avez besoin d'un, peut-être deux. Backprop à travers de nombreuses couches ne fonctionne pas bien. – kwatford
aussi quelles sont les dimensions de vos données d'entrée/cible? – Amro