0% ont trouvé ce document utile (0 vote)
21 vues6 pages

Simulation de Réseaux de Neurones SISO

Ce document présente les étapes de simulation d'un réseau de neurones artificiels pour modéliser un système. Il décrit la création d'un modèle neuronal à l'aide de Matlab pour apprendre la relation entrée-sortie d'un système.

Transféré par

KIDS APP
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
21 vues6 pages

Simulation de Réseaux de Neurones SISO

Ce document présente les étapes de simulation d'un réseau de neurones artificiels pour modéliser un système. Il décrit la création d'un modèle neuronal à l'aide de Matlab pour apprendre la relation entrée-sortie d'un système.

Transféré par

KIDS APP
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Objectifs ;

-Le but de ce travail pratique est de se familiariser avec les réseaux


de neurones artificiels. La maîtrise de ces notions est nécessaire afinde
pouvoir réaliser des projets de synthèse
1
Etapes de simulation :
clearall , close all , clc
SSE=[ ]; INDEX=[ ];
INPUT=[0 0 0;0 0 1;0 1 0;0 1 1;1 0 0;1 0 1;1 1 0;1 1 1];
DOUTPUT=[0 0;0 1;0 1 ;0 1;0 1;0 1;0 1 ;1 1];
%etap01 :initialatoin des matrices despoids et des biais
W1=rand(3,1);W2=rand(1,2);
B1=rand(1,1); B2=rand(1,2);
%Etape2 : Avec les valeursinitialescalculer le vecteur de sortie correspond
%le vecteur d’entré [i1 i2 i3]. Considérer le vecteur de cibledésiréest [t1 t2]
fori=1:1:300
for j=1:1:8
H=1/(1+exp(-(INPUT*W1+repmat(B1,[8 1]))));
OUTPUT=H.'*W2 +repmat(B2,[8 1]);
ERR_HO=DOUTPUT-OUTPUT;
ERR_IH=H.*(1-H).*(sum('RR_HO'));
%Etape3 :ajustement des poids
lr_ho=0.01;
lr_ih=0.01;
W2(1,1)=W2(1,1)+ERR_HO(j,1)*H(1,j)*lr_ho;
W2(1,2)=W2(1,2)+ERR_HO(j,2)*H(1,j)*lr_ho;
W1(1,1)=W1(1,1)+ERR_IH(1,j)*INPUT(j,1)*lr_ih;
W1(2,1)=W1(2,1)+ERR_IH(1,j)*INPUT(j,2)*lr_ih;
W1(3,1)=W1(3,1)+ERR_IH(1,j)*INPUT(j,3)*lr_ih;
%Etape4 :ajustement des biais
B1=B1+ERR_IH(1,j)*lr_ih;
B2(1,1)=B2(1,1)+ERR_HO(j,1)*lr_ho;
B2(1,2)=B2(1,2)+ERR_HO(j,2)*lr_ho;
%Etape5 :calcule de l’erreurquadratiquemoyenne
end
INDEX=[INDEX i];
SSE=[SSE sum(sum(ERR_HO.^2))];
plot(INDEX,SSE,'r');
xlabel('ITERATION')
ylabel('SSE')
pause(0.2)
end
H=logsig(INPUT*W1+repmat(B1,[8 1]));
OUTPUT=H*W2 +repmat(B2,[8 1]);
%Programme2 :modélisation
clearall; close all; clc
%modélisationneuronale d'un système SISO
for k = 1:100
u(k) = sin(2*pi*k/25) + sin(2*pi*k/50);
end
yd(1) = 1;
for k = 1:100
yd(k+1) = yd(k)/(1 + yd(k)^2) + u(k);
end

for k = 1:100
x(1,k) = u(k);
x(2,k) = yd(k);
1
end

n1 = 3;
v = rand(1,n1);
b2 = zeros(1,1);
w = rand(n1,2)/10;
b1 = zeros(n1,1);
taux = 0.09;
i = 1;
for k = 1:100
%for i = 1:10 %
h = logsig(w*x(:,k) + b1);
y(k) = purelin(v*h + b2);
e(k) = yd(k) - y(k);
delta2 = e(k);
v = v + taux*delta2*h';
b2 = b2 + taux*delta2;
delta1 = ((1 - h).*h).*(v'*delta2);
w = w + taux*delta1*x(:,k)';
b1 = b1 + taux*delta1;
end
plot(yd,'k') , hold on
plot(y,'r')
xlabel('temps')
ylabel(' yd et y')
h = legend(' yd: la sortie du système','y: la sortie du modèleneuronale');
%modélisationneuronale d'un système SISO
clearall;closeall ; clc;
for k = 1:100
u(k) = sin(2*pi*k/25) + sin(2*pi*k/50);
end
yd(1) = 1;
for k = 1:100
yd(k+1) = yd(k)/(1 + yd(k)^2) + u(k);
end
for k = 1:100
x(1,k) = u(k);
x(2,k) = yd(k);
end
net = newff(minmax(x),[4 1],{'logsig','purelin'},'traingd');
[Link] = 0.001;
[Link] = 1000;
net = train(net,x,yd(1:100));
y = sim(net,x);
plot(yd,'k') , hold on
plot(y,'r')
xlabel('temps')
ylabel(' yd et y')
h = legend(' yd: la sortie du système','y: la sortie du modèleneuronale');
1
Résultat :
L'erreur:

la différence entre la sortie desystéme et la sortie du modèle neuronale :


1
1
1

Vous aimerez peut-être aussi