Ah Matlab !!!
Un exemple :
fichier : breastcancer.m
[id,param1,param2,param3,param4,param5,param6,param7,param8,param9,res_test] = textread('breast_cancer_learning.data','%s%d%d%d%d%d%d%d%d%d%d');
for i=1 : length(param1)
if param1(i)==-1
param1(i) = mean(param1,1);
end
end
param1 = normalisation(param1');
for i=1 : length(param2)
if param2(i)==-1
param2(i) = mean(param2,1);
end
end
param2 = normalisation(param2');
for i=1 : length(param3)
if param3(i)==-1
param3(i) = mean(param3,1);
end
end
param3 = normalisation(param3');
for i=1 : length(param4)
if param4(i)==-1
param4(i) = mean(param4,1);
end
end
param4 = normalisation(param4');
for i=1 : length(param5)
if param5(i)==-1
param5(i) = mean(param5,1);
end
end
param5 = normalisation(param5');
for i=1 : length(param6)
if param6(i)==-1
param6(i) = mean(param6,1);
end
end
param6 = normalisation(param6');
for i=1 : length(param7)
if param7(i)==-1
param7(i) = mean(param7,1);
end
end
param7 = normalisation(param7');
for i=1 : length(param8)
if param8(i)==-1
param8(i) = mean(param8,1);
end
end
param8 = normalisation(param8');
for i=1 : length(param9)
if param9(i)==-1
param9(i) = mean(param9,1);
end
end
param9 = normalisation(param9');
res_test = normalisation(res_test');
ensemble_apprentissage = [param1; param2; param3;param4;param5;param6;param7;param8;param9];
net = newff(minmax(ensemble_apprentissage),[5 1],{'logsig' 'logsig'},'trainlm');
net.trainParam.epochs = 100;
figure(1);
clf;
meilleur_valeur = 99999;
intervalTest = 450;
breastCancerBoucle;
fichier : breastcancerboucle.m
net = train(net,ensemble_apprentissage(1:9,1:intervalTest),res_test(1:intervalTest));
%y1 = sim(net,ensemble_apprentissage(1:9,intervalTest:end));
%y1 = normalisation(y1);
%last_erreur = erreur_commise(y1,res_test(1:intervalTest));
figure(1); clf;
last_erreur = erreur_commise(y1,res_test);
y1 = sim(net,ensemble_apprentissage);
y1 = normalisation(y1);
plot([1:length(res_test)],res_test','bo-',[1:length(y1)],y1,'rx-');
% plot([intervalTest:length(y1)+intervalTest-1],res_test(intervalTest:length(y1)+intervalTest-1)','bo-',[intervalTest:length(y1)+intervalTest-1],y1,'rx-');
pause;
if (last_erreur-meilleur_valeur)/100 <= 0.05
if last_erreur < meilleur_valeur
meilleur_valeur = last_erreur;
end;
breastCancerBoucle;
end;
display('Fin !!!');
'train' est la méthode pour entrainer ton reseaux de neurones 'net'
'newff' crée ton réseaux de neurones