bonjour
je suis étudiante en master mécatronique en France et je travaille dans mon sujet de fin d'étude sur les neurones artificiels .j'ai trouvé des problèmes au niveau de programmation.
mon premier problème,je veux programmer une fonction quadratique,f(x)=x^2, d'une entrée, deux hiden layer et une sortie,on sait que les fonctions d'activations sont défini sur [0,1], sauf purelin définit sur R.
comment déclarer la fonction d'activation de sortie 'purelin' dans le pg script sur matlab?
voilà mon exemple:
mon deuxième problème,quand je programme une fonction par exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48 % XOR clc clear x1=[0 1 2 3 4 5 6]; yt=[0 1 4 9 16 25 36]; w12=0.5; w13=0.9; w24=-1.2;w34=1.1;th2=0.8;th3=-0.1; th4=0.3; a=0.1; % Trainig uses sin (x)funktion y (X)=1/1exp (-x) sig=@(v) 1/(1+e^(-v)); epoch=1; e=1; while abs (e)>=0.001 for n=1:4 for n=1:4 yh1=sig (x1 (n)*w12-th2);% y3 yh2=sig (x1 (n)*w13-th3);% y4 ya (n)=purelin (yh1*w24+yh2*w34-th4);% y5 e=yt (n)-ya (n);% error % error gradient at neuron 4 s4=ya (n)*(1-ya (n))*e; dw24=a*yh1*s4; dw34=a*yh2*s4; dth4=a*(-1)*s4; % error gradient at neuron 2 s2=yh1*(1-yh1)*s4*w24; dw12=a*x1 (n)*s2; dth2=a*(-1)*s2; % error gradient at neuron 3 s3=yh2*(1-yh2)*s4*w34; dw13=a*x1 (n)*s3; dth3=a*(-1)*s3; % adjustsent w12=w12+dw12 w13=w13+dw13 w24=w24+dw24; w34=w34+dw34; th2=th2+dth2; th3=th3+dth3; th4=th4+dth4; end epoch=epoch+1 end epoch
Y"outpout" sur simulink est totalement différente (il donne une courbe constante) que Y"outpout" du pg (donne une courbe parabolique)pouvez m'expliquer cette différence?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 P=[-4 -2 0 2 4 ; -2 -1 0 1 2]; T=P.*P; mynet=newff (P,T,[10 1]); mynet.trainParam.epchs = 10000; mynet.trainParam.goal = 1e-10; mynet.trainParam.lr = 0.1; net=train (mynet,P,T) Y=sim (net,P) plot (P,T,'+',P,Y,'o') gensim (net)
dans l'attente de votre réponse, je vous souhaite uns bonne journée
Partager