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 :
Quand je lance l'exécution, une erreur se produit : " Matrix must have 4 rows".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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);
Cette erreur disparait si je met uniquement :
à la place de :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 net = train(net,P)
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 !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 [net,tr,Y,E] = train(net,P,f);
Je souhaite que j'ai bien illustré mon pb en attendant votre aide.
Cordialement !
Partager