II.10 Méthode de rétro -
propagation :
La rétro propagation est l'algorithme d'apprentissage
supervisé pour ajuster les poids d'un réseau MLP.
Dans cette méthode , de même que l'on est capable
de propager un signal provenant des cellules d'entrée vers la couche de
sortie . On peut , en suivant le chemin inverse
rétro- propager l'erreur commise en sortie vers les
couches cachées, d'ou le nom
rétro - propagation [37] .
II.10.1 Principe de fonctionnement de la
méthode :
Le calcul du signal d'erreur nous permet d'ajuster les poids
à partir de cette erreur, de telle sorte que sa sortie actuelle
coïncide avec la réponse désirée .
La loi d'apprentissage proposée est :
WijK (t+1) = WijK (t) - ì . ( dj(w)
/ dWijK (t) ) + á . ( WijK (t) -
WijK(t-1) ) ( II . 4 )
Où :
0<= á <1 est le moment , et (ì) est le pas
d`apprentissage , et (t) est l`indice des itérartions .
Les poids de connexions sont ajustés de sorte que la
fonction de cout :
J(w) = ½ .
?ni=1( di . yi )2
( II . 5 )
Soit minimisée , N: le nombre des exemples d`entrainement
.
La derivée de l'erreur par raport à un poids
WijK est :
dj(w) / dWijK (t) = (dj(w) /
dyjK (t)) . (dyjK (t) /
dWijK (t)) ( II . 6 )
et :
(dyjK (t) / dWijK (t)) =
(dfK (SjK (t)) / dWijK (t)) =
fK (SjK (t)) . (d SjK
(t) / dWijK (t)) . ( II . 7 )
et : i=nk-1
(d SjK (t) / dWijK (t)) = d
[? WijK . yjK-1 (t)] / dWijK (t) =
yjK-1 (t) .
( II . 8 )
i=1
D`où :
(dyjK (t) / dWijK
(t)) = fK (SjK (t)) .
yjK-1 (t) .
( II . 9 )
Donc :
dj(w) / dWijK (t) = (dj(w) /
dyjK (t)) . fK (SjK (t))
. yjK-1 (t) .
( II . 10 )
En prenant :
SjK (t) = -fK
(SjK (t)) . (dj(w) / dyjK (t)) .
( II . 11 )
D`où :
dj(w) / dWijK (t) = -
SjK (t) . yjK-1 (t) .
( II . 12 )
On remplace (dj(w) / dWijK (t)) dans ( II . 4 ) on
trouve :
WijK (t+1) = WijK (t) +
ì . SjK (t) . yjK-1 (t) +
á . ( WijK (t) - WijK(t-1) ) (
II . 13 )
Chapitre 11 : Les réseaux de
neurones
Bien que cet algorithme a donné de bons résultats
dans plusieurs applications les réseau multicouches avec rétro -
propagation présente certaines limitations [31]
[33].
1- Le manque de moyens systématiques pour
déterminer :
a- Le nombre de neurones dans les couches cachées qui est
le nombre des variables libres c'est à dire les poids du
réseau : ce nombre est particulièrement important pars qu'il
détermine la capacité de calcul de réseau.
b- Le nombre de couches cachées.
c- Le pas d'apprentissage.
d- Le moment.
2- Les minima locaux :
ce type de problème est particulièrement difficile
à éviter, notamment parce que la forme de la surface de l'erreur
n'est pas généralement connue.
3- Convergence lente et incertaine.
Chapitre 11 : Les réseaux de
neurones
|