Classificateur neuronal avec Matlab
Salut tous le monde,
Je dois faire un classificateur en utilisant un réseau de neurones sous Matlab.
Le but est d'avoir pour chaque entrée sa classe parmi 4, pour cela j'ai essayé le code suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
clear all;
load('baseACP');% Chargement de la matrice
P = baseACP(1:10000,:);
f = [0 1 2 3]; % On veut avoir 4 sorties
basemm = minmax(P);% minumum et maximum
% notre réseau : 1 couche cachée de 10 neurones et 1 de sortie avec 4 neurones
net=newff(basemm,[10 ,4],{'logsig','logsig',},'traingd');
net.trainParam.show = 50;
net.trainParam.lr = 0.5; % pas d'aprentissage
net.trainParam.epochs = 3010;
net.trainParam.goal = 0.01;
[net,tr,Y,E] = train(net,P,f); |
Quand je lance l'exécution, une erreur se produit : " Matrix must have 4 rows".
Cette erreur disparait si je met uniquement :
à la place de :
Code:
1 2
|
[net,tr,Y,E] = train(net,P,f); |
et l'apprentissage commence et il finit avec but atteint "performance met goal", mais je ne sais pas comment il va me donner les 4 classes que j'en ai besoin pour l'ensemble de test !
Je souhaite que j'ai bien illustré mon pb en attendant votre aide.
Cordialement !