Vous êtes sur la page 1sur 63

Chapitre 3.

Apprentissage des Réseaux


de Neurones Multicouches

Ayachi ERRACHDI
errachdi.ayachi@issatkr.u-kairouan.tn

1
Plan

1. Architecture du réseau multicouche


2. Règle d’apprentissage
3. Algorithme d’apprentissage
4. Application du réseau multicouche
5. Syntaxe du programme par Matlab
6. Exemple de simulation
7. Conclusion
2
1. Architecture du réseau multicouche (1/4)

1 1 1
y1(q−1) y1(q)
∑ ∑ ∑
x1
∑ ∑ ∑

xN ∑ ∑ (q−1) ∑ yM(q)
(q−1) y
wij L
wkl(q)

M: nombre de neurones de la couche de sortie


L : nombre de neurones de la couche cachée
3
N : nombre de neurones de la couche d’entrée
1. Architecture du réseau multicouche (2/4)
Cas de trois couches

1 1
y1(1) y1(2)
∑ ∑
x1
∑ ∑

xN ∑ (1) ∑ yM(2)
y
(1)
wij L
wkl(2)

M: nombre de neurones de la couche de sortie


L : nombre de neurones de la couche cachée
4
N : nombre de neurones de la couche d’entrée
1. Architecture du réseau multicouche (3/4)
Cas de trois couches

y (1 )
0 = 1 : b iais x 0 = 1 : b iais
w (2)
i0 = b i( 2 ) w (1 )
j0 = b j(1)

di (t ): sortie système

y (1)
j (t ): sortie de la couche cachée ( j =1,..., L)

yi(2) (t ): sortie neuronale (couche de sortie) (i =1,...,M)

ei (t ) =di (t ) − yi(2) (t ); erreur entre la sortie neuronale et la sortie système


5
1. Architecture du réseau multicouche (4/4)
Cas de trois couches

N N
z (1 )
j (t ) = ∑
k = 0
w (1 )
jk (t ) x k (t ) = ∑k =1
w (1 )
jk (t ) x k (t ) + w (1 )
j0 (t )

N
z (1 )
j (t ) = ∑
k =1
w (1 )
jk (t ) xk (t ) + b (1 )
j (t )

y (1 )
j (t ) = f 1 ( z (1 )
j (t ))

L L
z (2)
i (t ) = ∑j=0
w (2)
ij (t ) y (1)
j (t ) = ∑ j =1
w ij( 2 ) ( t ) y (1j ) ( t ) + w i(02 ) ( t )

L
z (2)
i (t ) = ∑w j =1
(2)
ij ( t ) y (1j ) ( t ) + b (j 2 ) ( t )

y i
(2)
(t ) = f 2 ( z i
(2)
(t ))
6
Plan

1. Architecture du réseau multicouche


2. Règle d’apprentissage
3. Algorithme d’apprentissage
4. Application du réseau multicouche
5. Syntaxe du programme par Matlab
6. Exemple de simulation
7. Conclusion
7
2. Règle d’apprentissage (1/13)

La rètropropagation :
Une des désavantages du perceptron est qu’il minimise
une erreur en tout ou rien à cause de sa fonction
d’activation. De ce fait, il est peu robuste.
La règle d’apprentissage de Widrow Hoff ne travaille
plus en tout ou rien mais minimise une fonction d’erreur
quadratique, donc plus robuste. Malheureusement, cette
règle ne peut s’appliquer que sur des réseaux à une
seule couche de poids adaptatifs.
D’où l’apparition de l’algorithme de rètropropagation du
gradient de l’erreur qui peut modifier les poids des
connexions de toutes les couches d’un perceptron Multi
Couches.
8
2. Règle d’apprentissage (2/13)

w (q )
ij (t + 1) = w (q )
ij (t ) + ∆ w (q )
ij (t )
b i( q ) ( t + 1 ) = b i( q ) ( t ) + ∆ b i( q ) ( t )

∂ E (t )
w (q )
(t + 1) = w (q )
(t ) − η
∂ w i(j q ) ( t )
ij ij

∂ E (t )
b i( q ) ( t + 1 ) = b i( q ) ( t ) − η
∂ b i( q ) ( t )

Le principe c’est de minimiser l’erreur quadratique


1M 2 1
M
E = ∑(ei (t )) = ∑(di (t ) − yi(2) (t ))2;
2 i =1 2 i =1

9
2. Règle d’apprentissage (2/13)

10
2. Règle d’apprentissage (3/13)

2.1. Méthode de descente du gradient


2.2. Méthode de Newton
2.3. Méthode de Quasi-Newton
2.4. Méthode du gradient conjugué
2.5. Méthode de Levenberg-Marquardt
2.6. Méthodes d’approximations convexe
2.7. Méthodes combinées
2.7.1. Méthodes Stochastiques
2.7.2. Algorithmes Evolutionnaires
11
2.7.3. Plan d’expériences
2. Règle d’apprentissage (4/13)

Exemple: un réseau de neurones multicouches (q) couches :


une couche d’entrée, une couche cachée (q-1) et une couche de sortie (q)

1 b 1( q )
1 b 1( q − 1 )
b ( q −1) y1(q−1) fq (∑ ) y1(q)
fq−1 (∑ )
2
( q −1)
w 11 w 1( 1q )
x1
( q −1)
w 21
(q−1)
w ( q −1)
12
y2 w 1( 2q )
x2 ( q −1) fq−1 (∑ )
w 22

12
couche d’entrée (q-2) couche cachée (q-1) couche de sortie (q)
2. Règle d’apprentissage (5/13)

Couche de sortie (q=2)

1 M
2 

∂ E (t )
∂ 
2

i=1
( e i ( t ) ) 

=
∂ w i(j 2 ) ( t ) ∂ w i(j 2 ) ( t )
∂ E (t ) ∂ ei (t )
=
∂ e i ( t ) ∂ w i(j 2 ) ( t )
1 M

∂ E (t )
∂ 
 2
∑i=1
( d i ( t ) − y i( 2 ) ( t ) ) 2 

=
∂ ei (t ) ∂ w i(j 2 ) ( t )

13
2. Règle d’apprentissage (6/13)

Couche de sortie (q=2)

∂ E (t ) ∂ E (t ) ∂ ei (t ) ∂ y i2 ( t )
=
∂ w ij ( t )
(2)
∂ e i ( t ) ∂ y i( 2 ) ( t ) ∂ w i(j 2 ) ( t )
∂ E ( t ) ∂ e i ( t ) ∂ f i ( z i( 2 ) ( t ) )
=
∂ e i ( t ) ∂ y i( 2 ) ( t ) ∂ w i(j 2 ) ( t )
∂ E ( t ) ∂ e i ( t ) ∂ y i2 ( t ) ∂ z i2 ( t )
=
∂ e i ( t ) ∂ y i( 2 ) ( t ) ∂ z i( 2 ) ( t ) ∂ w i(j 2 ) ( t )

14
2. Règle d’apprentissage (7/13)

Couche de sortie (q=2)


∂ E (t ) ∂ E ( t ) ∂ e i ( t ) ∂ y i2 ( t ) ∂ z i2 ( t )
=
∂ w ij ( t )
(2)
∂ e i ( t ) ∂ y i( 2 ) ( t ) ∂ z i( 2 ) ( t ) ∂ w i(j 2 ) ( t )
∂ E (t )
= ei (t )
∂ ei (t )
∂ ei (t )
= −1
∂ yi (t )
(2)

∂ y i( 2 ) ( t ) ∂ f 2 ( z i( 2 ) ( t ) )
= = f '
( z (2)
(t ))
∂ z i( 2 ) ( t ) ∂ zL i( 2 ) ( t )
2 i

∂ ( ∑ w i(j 2 ) y (j1 ) )
∂ zi (t )
(2)
j=0
= = y (1 )
(t )
∂ w ij ( t ) ∂ w ij ( t )
(2) (2) j

∂ E (t )
= − e i ( t ) f 2' ( z i( 2 ) ( t ) ) y (1 )
(t )
∂ w ij ( t )
(2) j 15
2. Règle d’apprentissage (8/13)

Couche de sortie (q=2)


∂ E (t )
= − e ( t ) f '
( z (2)
(t )) y (1 )
(t )
∂ w ij ( t )
(2) i 2 i j

= −δ i
(2)
(t ) y (1 )
j (t )

avec : δi(2) (t ) = ei (t ) f2' ( zi(2) (t ))

d’ou :

∂ E (t )
w (2 )
(t + 1) = w (2 )
(t ) − η
∂ w i(j 2 ) ( t )
ij ij

∂ E (t )
b i( 2 ) ( t + 1 ) = b i( 2 ) ( t ) − η
∂ b i( 2 ) ( t ) 16
2. Règle d’apprentissage (9/13)

Mise à jour des poids synaptiques de la couche de sortie (q=2)

w i(j 2 ) ( t + 1 ) = w i(j 2 ) ( t ) + η δ i
(2)
(t ) y (1 )
j (t )
b i( 2 ) ( t + 1 ) = b i( 2 ) ( t ) + η δ i
(2)
(t )
δ i
(2)
( t ) = e i ( t ) f 2 ' ( z i( 2 ) ( t ) )

17
2. Règle d’apprentissage (10/13)

Couche cachée (q=1)

∂ E (t ) ∂ E (t ) ∂ y j (t ) ∂ z j (t )
(1 ) (1 )

=
∂ w (j1k ) ( t ) ∂ y (j1 ) ( t ) ∂ z (j1 ) ( t ) ∂ w (j1k ) ( t )
∂ E (t ) ∂ ei (t ) ∂ z i (t )
(2)
∂ E (t )
=
∂ y j (t )
(1 )
∂ e i ( t ) ∂ z i( 2 ) ( t ) ∂ y (j1 ) ( t )
M
= − ∑i=1
e i ( t ) f 2' ( z (2)
j ( t ) ) w i(j 2 ) ( t )

18
2. Règle d’apprentissage (11/13)

Couche cachée (q=1)


∂ E (t ) ∂ E (t ) ∂ y j (t ) ∂ z j (t )
(1 ) (1 )

=
∂ w jk ( t )
(1 )
∂ y (j1 ) ( t ) ∂ z (j1 ) ( t ) ∂ w (j1k ) ( t )
∂ E (t ) ∂ ei (t ) ∂ z i (t )
(2)
∂ E (t )
=
∂ y j (t )
(1 )
∂ e i ( t ) ∂ z i( 2 ) ( t ) ∂ y (j1 ) ( t )
M
= − ∑
i=1
e i ( t ) f 2' ( z (2)
j ( t ) ) w i(j 2 ) ( t )

∂y (1 )
(t )
=
j
f1' ( z (1 )
(t ))
∂z (1 ) j
j (t )
∂z (1 )
(t )
= xk (t )
j

∂w (1 )
jk (t )
19
2. Règle d’apprentissage (12/13)

Couche cachée (q=1)


∂ E (t ) M
= −f '
(z (1 )
(t ) ) ∑ e i (t ) f '
(z (2)
( t ) )w (2)
(t )x (t )
∂ w jk
(1 ) 1 j 2 i ij k
i =1

∂ E (t ) M
= −f '
(z (1 )
(t ) ) ∑ δ (2)
( t )w (2)
(t )x (t )
∂ w (j 1k )
1 j i ij k
i =1

20
2. Règle d’apprentissage (13/13)

Mise à jour des poids synaptiques de la couche cachée (q=1)

w (1 )
jk (t + 1 ) = w (1 )
jk (t ) + η δ (1 )
j (t ) x k (t )
b (1 )
j (t + 1 ) = b (1 )
j (t ) + η δ (1 )
j (t )
M
δ (1 )
j (t ) = f 1
'
(z (1 )
j (t ) ) ∑ δ (2)
j ( t )w (2)
ij (t )
i =1

21
Plan

1. Architecture du réseau multicouche


2. Règle d’apprentissage
3. Algorithme d’apprentissage
4. Application du réseau multicouche
5. Syntaxe du programme par Matlab
6. Exemple de simulation
7. Conclusion
22
3. Algorithme d’apprentissage

Étapes de l’algorithme de rétropropagation de l’erreur:


1- Initialiser les poids
2- Choisir une présentation
3- Propager les données dans le réseau et calculer les sorties des
neurones y i(q ) (t ) = f ( z i(q ) (t )) = f ( ∑ w ij(q ) y (jq −1) (t ))
4- Calculer les δ i(q ) de la couche de sortie
j

δ i(q ) (t ) =  s i (t ) − y i(q ) (t )  f '( ∑ w ij(q ) y (j q −1) (t ))


5- Calculer les δ i(q ) des couches cachées
j

δ i( q −1) (t ) = f '( ∑ wij( q ) y (j q −1) (t )) ∑ wij( q +1) δ j( q +1)


j j
6- Modifier les poids
w ij(q ) (t + 1) = w ij(q ) (t ) + ηδ i(q ) (t ) y ( q −1)
j (t )
7- Calculer le critère d’arrêt (un nombre maximum d’itérations, une
valeur minimum à atteindre...).
23
Plan

1. Architecture du réseau multicouche


2. Règle d’apprentissage
3. Algorithme d’apprentissage
4. Application du réseau multicouche
5. Syntaxe du programme par Matlab
6. Exemple de simulation
7. Conclusion
24
4. Application du réseau multicouche (1/16)
Exemple 1
Exemple: réalisation d’une porte logique XOR entrées/sortie
binaires M = 1 , L = 2 , η = 0 . 2 , b 1( 1 ) ( 0 ) = b 2( 1 ) ( 0 ) = b 1( 2 ) ( 0 ) = 1 .
w (1 )
ij (0 ) = w (2)
ij (0 ) = 1 .

1 b 1( 2 )
1 b 1( 1 )
b (1 ) y1(1) f 2 (∑ ) y(2)
f 1(∑ )
2
(1 )
w 11 w (2)

x1 11

(1 )
w 21
(1)
w (1 )
12
y2 w (2)
12

x2 (1 ) f 1(∑ )
w 22

25
4. Application du réseau multicouche (2/16)
Exemple 1

X1 X2 S
0 0 0
0 1 1
1 0 1
1 1 0

1 − e −z
f 1(z ) = − z
( s i g m o i d e b i p o la ire )
1+ e
1
⇒ f 1' ( z ) = (1 − ( f 1 ( z ) ) 2 )
2
1
f 2 (z ) = − z
(s ig m o id e )
1+ e
⇒ f 2 ' ( z ) = f 2 ( z ) (1 − f 2 ( z ) )
26
4. Application du réseau multicouche (3/16)
Exemple 1
Couche de sortie (q=2)

w (2)
ij (t + 1 ) = w (2)
ij (t ) + η δ i
(2)
(t ) y (1 )
j (t )
b i
(2)
(t + 1 ) = b i
(2)
(t ) + η δ i
(2)

δ i
(2)
(t ) = e i (t ) f 2
'
(z i
(2)
(t ) )

t=1 : première itération

w 11( 2 ) (1) = w 11( 2 ) (0) + ηδ 1( 2 ) (0) y 1(1) (0)


w 12( 2 ) (1) = w 12( 2 ) (0) + ηδ 1( 2 ) (0) y 2(1) (0)
b1( 2 ) (1) = b1( 2 ) (0) + ηδ 1( 2 ) (0)

27
4. Application du réseau multicouche (4/16)
Exemple 1
Couche de sortie (q=2)

y 1(1) (0) = f 1 (z 1(1) (0)) = f 1 w 11(1) (0)x 1 + w 12(1) (0)x 2 + b1(1) (0) ×1 = f 1 (1) = 0.4621
y 2(1) (0) = f 1 (z 2(1) (0)) = f 1 w 21
(1)
(0)x 1 + w 22
(1)
(0)x 2 + b2(1) (0) ×1 = f 1 (1) = 0.4621
δ1(2) (0) = e1 (0)f 2' (z 1(2) (0)) = (s (0) − y 1(2) (0))f ' w 11( 2) (0) y 1(1) (0) + w 12(2) (0) y 2(1) (0) + b1(2) (0) ×1
2

δ 1( 2 ) (0) = e 1 (0) f 2' ( z 2( 2 ) (0)) = ( s (0) − y 1( 2 ) (0)) f 2


'
[ 0.4621 + 0.4621 + 1]
δ 1( 2 ) (0) = ( s (0) − y 1( 2 ) (0)) f ' (1.9242) = ( s (0) − y 1( 2 ) (0)) f 2 (1.9242)(1 − f 2 (1.9242))
2

1
f 2 (1.9242) = − 1.9242
= 0.8726
1+e
δ 1( 2 ) (0) = (0 − 0.8726)0.8726(1 − 0.8726) = -0.0970

28
4. Application du réseau multicouche (5/16)
Exemple 1
Couche de sortie (q=2)

w 11( 2 ) (1) = w 11( 2 ) (0) + ηδ 1( 2 ) (0) y 1(1) (0)


w 12( 2 ) (1) = w 12( 2 ) (0) + ηδ 1( 2 ) (0) y 2(1) (0)
b1( 2 ) (1) = b1( 2 ) (0) + ηδ 1( 2 ) (0)

w 11( 2 ) (1) = 1 + 0.2(-0.0970)0.4621=0.9910


w 12( 2 ) (1) = 1 + 0.2(-0.0970)0.4621=0.9910
b 1( 2 ) (1) = 1 + 0.2(-0.0970) = 0.9806

29
4. Application du réseau multicouche (6/16)
Exemple 1

Couche cachée (q=1)

 w (1 )
11 (1 ) = w (1 )
11 ( 0 ) + η δ 1( 1 ) ( 0 ) x 1 ( 0 )

 w
(1 )
12 (1 ) = w (1 )
12 ( 0 ) + η δ 1( 1 ) ( 0 ) x 2 (0 )
 b 1( 1 ) (1 ) = b 1( 1 ) ( 0 ) + η δ 1( 1 ) ( 0 )
 (1 )
b
 2 (1 ) = b 2
(1 )
( 0 ) + η δ 1
(1 )
(0 )
 δ 1( 1 ) ( 0 ) = f 1
'
(z 1
(1 )
( 0 ) ) δ 1( 2 ) ( 0 )w (2)
11 (0 )
 (1 )
δ 2 (0 ) = f ( 0 ) ) δ 1( 2 ) ( 0 )w
' (1 ) (2)
1 (z 2 12 (0 )

30
4. Application du réseau multicouche (7/16)
Exemple 1

Couche cachée (q=1)

 (1) 1
δ 1 (0) = 2
1 − ( f 1 ( z 1(1) (0)) 2 )  0.9910(-0.0970)=-0.0378

δ (1) (0) =1
1 − ( f 1 ( z 2(1) (0)) 2 )  0.9910(-0.0970)
 2 2
 (1) 1 1
 δ 1 (0) = 
1 − ( y 1
(1)
(0)) 2

 0.9910(-0.0970)= 
1 − (0.4621) 2
 0.9910(-0.0970)
2 2

δ (1) (0) = 1 1 − ( y (1) (0)) 2  0.9910(-0.0970)= 1 1 − (0.4621) 2  0.9910(-0.0970)
 2 2  2 
2

δ 1(1) (0) = -0.0378


 (1)
δ 2 (0) = -0.0378

31
4. Application du réseau multicouche (8/16)
Exemple 1

Couche cachée (q=1)

 w (1 )
11 (1 ) = w (1 )
11 ( 0 ) + η δ 1( 1 ) ( 0 ) x 1 ( 0 )

 w
(1 )
12 (1 ) = w (1 )
12 ( 0 ) + η δ 1( 1 ) ( 0 ) x 2 (0 )
 b 1( 1 ) (1 ) = b 1( 1 ) ( 0 ) + η δ 1( 1 ) ( 0 )
 (1 )
b
 2 (1 ) = b 2
(1 )
( 0 ) + η δ 1
(1 )
(0 )

w (1 )
11 (1) = 1 + 0 .2 × ( -0 .0 3 7 8 ) × 0 = 1

w
(1 )
12 (1) = 1 + 0 .2 × ( -0 .0 3 7 8 ) × 0 = 1
 si E ≥ E 0 ⇒ retourner à 2
w (1 )
21 (1) = 1 + 0 .2 × ( -0 .0 3 7 8 ) × 0 = 1 
  si E< E 0 ⇒ fin
w
(1 )
22 (1) = 1 + 0 .2 × ( -0 .0 3 7 8 ) × 0 = 0
 b 1(1 ) (1) = 1 + 0 .2 × ( -0 .0 3 7 8 ) = 0 .9 9 2 4
 (1 )
 b 2 (1) = 1 + 0 .2 × ( -0 .0 3 7 8 ) = 0 .9 9 2 4 32
4. Application du réseau multicouche (9/16)
Exemple 2

33
4. Application du réseau multicouche (10/16)
Exemple 2

w i(j1 ) ( 0 ) = w i(j 2 ) ( 0 ) = 0 . b 1( 1 ) = b 2( 1 ) = b 1( 2 ) = b 2( 2 ) = 0 ; α = 0 .1

1 b 1( 2 )
1 b 1( 1 ) b 2( 2 )
b (1 ) y1(1) w (2)
11 f (∑ ) y1(2)
f (∑ )
2
(1 )
w (2)
11 w
x1 21

(1 )
w
y2(2)
(2)
w f (∑ )
21
12
(1)
w (1 )
12
y2
x2 (1 ) f (∑ ) w (2)
w 22
22

34
4. Application du réseau multicouche (11/16)
Exemple 2

35
4. Application du réseau multicouche (12/16)
Exemple 2

36
4. Application du réseau multicouche (13/16)
Exemple 2

37
4. Application du réseau multicouche (14/16)
Exemple 2

38
4. Exemple 2

39
4. Application du réseau multicouche (16/16)
Exemple 2

40
Plan

1. Architecture du réseau multicouche


2. Règle d’apprentissage
3. Algorithme d’apprentissage
4. Application du réseau multicouche
5. Syntaxe du programme par Matlab
6. Exemple de simulation
7. Conclusion
41
5. Syntaxe du programme par Matlab (1/9)

42
5. Syntaxe du programme par Matlab (2/9)

43
5. Syntaxe du programme par Matlab (3/9)

44
5. Syntaxe du programme par Matlab (4/9)

45
5. Syntaxe du programme par Matlab (5/9)

46
5. Syntaxe du programme par Matlab (6/9)

47
5. Syntaxe du programme par Matlab (7/9)

48
5. Syntaxe du programme par Matlab (8/9)

49
5. Syntaxe du programme par Matlab (9/9)

50
Plan

1. Architecture du réseau multicouche


2. Règle d’apprentissage
3. Algorithme d’apprentissage
4. Application du réseau multicouche
5. Syntaxe du programme par Matlab
6. Exemple de simulation
7. Conclusion
51
6. Exemple de simulation (1/9)

Objectif: mettre en place un réseau de neurones utilisant la


rétropropagation du gradient, afin d’élaborer un programme
d’identification de courbes d’une fonction de type sinus cardinale.

f(x)=sinc(x)

On utilise une seule couche cachée de neurones.

L’intérêt est de jouer sur le nombre de neurones cachés et d’en


déduire leur influence.

52
6. Exemple de simulation (2/9)
fonction sinus cardinale : f(x)=sinc(x)

n=10; k=70; % impose le nombre de données d'entrée


P = -2:(.4/k):2; T = sinc(n*P); % création de la fonction sinus cardinale
net=newff(minmax(P),[50,1],{'logsig','purelin'},'trainlm');% création d’un
réseau composé d’1 couche cachée de 50 neurones et d’une couche de
sortie de 1 neurone avec la fonction newff. La fonction d’activation utilisée à
la sortie de la couche cachée est logsig et celle de la couche de sortie est
purelin. Pour l’apprentissage, on utilise la méthode de Levenberg-
Marquardt : trainlm.
net.trainParam.epochs=1000;%nombre d’epochs : nombre de cycle
d’apprentissage.
net.trainParam.goal=1e-5;%l’erreur à atteindre
[net,tr]=train(net,P,T); %calcul d’apprentissage par la fonction train.
p=-2:0.01:2; a=sim(net,p);% tracer la courbe obtenue par le réseau
figure(1)
hold on, plot(P,T,'.b'),plot(p,a,'r') 53
legend('Donnée','Estimation‘)
6. Exemple de simulation (3/9)
fonction sinus cardinale : f(x)=sinc(x)

54
6. Exemple de simulation (4/9)
fonction sinus cardinale : f(x)=sinc(x)

Best Training Performance is 7.019e-06 at epoch 6

Train
Best
10 0 Goal
Mean Squared Error (mse)

10 -2

10 -4

10 -6
0 1 2 3 4 5 6
6 Epochs

l’évolution de l’erreur à chaque epoch 55


6. Exemple de simulation (5/9)
fonction sinus cardinale : f(x)=sinc(x)

Donnée
0.02
Estimation

0.01

-0.01

-0.02

-0.03

-1.88 -1.86 -1.84 -1.82 -1.8 -1.78 -1.76 -1.74 -1.72

ZOOM de l’évolution des données d’entrée et d’estimation


50 neurones dans la couche cachée
56
6. Exemple de simulation (6/9)
fonction sinus cardinale : f(x)=sinc(x)

0.04 Donnée
Estimation
0.03

0.02

0.01

-0.01

-0.02

-0.03

-0.04

-0.05

-0.06
-1.88 -1.86 -1.84 -1.82 -1.8 -1.78 -1.76 -1.74 -1.72

ZOOM de l’évolution des données d’entrée et d’estimation


100 neurones dans la couche cachée 57
6. Exemple de simulation (7/9)
fonction sinus cardinale : f(x)=sinc(x)

58
6. Exemple de simulation (8/9)
fonction sinus cardinale : f(x)=sinc(x)

59
Comparaison des règles d’apprentissage
6. Exemple de simulation (9/9)
fonction sinus cardinale : f(x)=sinc(x)

60
Comparaison des règles d’apprentissage
Plan

1. Architecture du réseau multicouche


2. Règle d’apprentissage
3. Algorithme d’apprentissage
4. Application du réseau multicouche
5. Syntaxe du programme par Matlab
6. Exemple de simulation
7. Conclusion
61
7. Conclusion (1/2)

62
7. Conclusion (2/2)

1---Choix des paramètres:


1. Normalisation des variables d’entrée et de sortie;
2. Le nombre de couches cachées,
3. Le nombre de neurones par couche cachée.
4. Le nombre maximum d’itérations,
5. L’erreur maximum tolérée,
6. Le taux d’apprentissage,
7. La taille des ensembles.
2---- Efficacité dans le cas statique
3-----Problèmes dans le cas dynamique
Solution : utiliser des retards des couples entrées/sorties ou
utiliser les architectures récurrentes
63

Vous aimerez peut-être aussi