WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Etude du calage, de la validation et des performances des réseaux de neurones formels à  partir des données hydro-climatiques du bassin versant du Bandama blanc en Côte d'Ivoire

( Télécharger le fichier original )
par Yao Blaise KOFFI
Université de Cocody Abidjan - Doctorat  2007
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

5.3.3.4. Estimation des paramètres des modèles développés (calibration ou apprentissage)

L'apprentissage (ou la calibration) représenté sur la figure 48 consiste en un entraînement du réseau. Des entrées (variables) sont présentées au réseau pour modifier sa pondération de telle sorte que l'on trouve la sortie correspondante. L'algorithme consiste dans un premier temps à propager vers l'avant les entrées jusqu'à obtenir une sortie par le réseau. La seconde étape compare la sortie calculée à la sortie réelle connue. les poids (weight) sont alors modifiés de telle sorte qu'à la prochaine itération, l'erreur commise entre la sortie calculée et mesurée soit minimisée. Malgré tout, il ne faut pas oublier que l'on a des couches cachées. L'erreur commise est rétropropagée vers l'arrière jusqu'à la couche d'entrée tout en modifiant la pondération. Ce processus est répété sur tous les exemples jusqu'à ce que l'on obtienne une erreur de sortie considérée comme acceptable par le modélisateur. Quand l'erreur devient suffisamment petite, le réseau ainsi optimisé est utilisé pour calculer les sorties en introduisant de nouvelles entrées inconnues par le modèle : c'est la validation (test ou contrôle selon les auteurs).

Entrées

Nouvelles
entrées

Réseaux de neurone formel (RNF)

Réseau de neurone
formel (RNF)

Déterminer
les poids

Indiquer la sortie

Sortie prévue

Figure 48 : Stratégie d'apprentissage des modèles neuronaux

L'estimation des paramètres comporte plusieurs choix : le critère d'erreur à atteindre ; l'algorithme d'optimisation de ce critère et ; les paramètres de l'algorithme et l'ensemble des valeurs initiales aléatoires des poids et des biais. Pour ce faire, certains choix ont été opérés. Avant d'être développés dans les sections suivantes, ils sont ici présentés :

i. le critère d'erreur est l'erreur quadratique;

ii. la méthode du gradient de l'erreur (avec un gradient partiel et le pas du gradient fixé à 0,1) est choisie pour optimiser les différents modèles développés. ;

iii. la fonction d'activation est la sigmoïde logistique bornée de 0 à 1 ;

iv. les poids initiaux des réseaux sont fixés à 0,1

v. le biais est fixé à 0,1.

Toute la puissance des réseaux de neurones réside dans leur capacité d'apprentissage. Cet apprentissage se fait par une rétropropagation de l'erreur commise par le réseau par rapport à la sortie désirée. Il se fait selon une approche déterministe où les poids sont modifiés après présentation de l'ensemble ou partie de la base d'apprentissage. Le critère à minimiser est l'erreur quadratique moyenne î :

MSE = î ( w) = E d - ? ( w , x )

( 2)

(20)

ö est une fonction dépendante du réseau, w le vecteur contenant les différents poids et les biais du réseau, x les exemples présentés aux réseaux et d les sorties désirées. On modifie le vecteur w de façon à minimiser cette erreur. Pour l'optimisation des modèles en général et des modèles hydrologiques en particulier, deux grandes familles de méthodes existent dans la littérature : les méthodes locales et les méthodes globales.

5.3.3.4.1. Méthodes locales

La méthode locale exige le choix d'un point de l'espace des paramètres comme point de départ et le déplacement dans une direction qui améliore continuellement le critère de performance. Deux variantes de cette méthode existent. Ce sont les méthodes directes et les méthodes du gradient. Les méthodes directes se basent plus sur le choix de la direction et du pas de recherche. Là encore de nombreuses variantes existent : la méthode de Rosenbroch (1960), la méthode du Pattern Search (PS), (Hooke et Jeeves, 1961), la méthode du Simplex (Nelder et Mead, 1965) et la méthode "pas a pas" (Michel, 1989 ; Nascimento, 1995).

En ce qui concerne les méthodes du gradient, elles utilisent en plus de la valeur de la fonction critère, la valeur de son gradient pour décider de la stratégie d'évolution dans l'espace des paramètres (Perrin, 2000). Dans cette catégorie, on a les méthodes de 1er ordre (Retro propagation de l'erreur et ses dérivées) et les méthodes de 2eme ordre (Gradient conjugué + Fletcher-Reeves (CCGF) et Levenberg-Marquardt (LM)).

5.3.3.4.2. Méthodes globales

Pour Perrin (2000), les méthodes globales permettent de traiter efficacement des problèmes
où la fonction à optimiser est multi modale. Ces méthodes sont différentes des premières par

le fait qu'elles explorent une partie beaucoup plus grande de l'espace des paramètres. Trois variantes existent : les méthodes déterministes, les méthodes stochastiques et les méthodes combinatoires. Pour plus de détail sur ces méthodes, consulter les travaux de Perrin (2000). La méthode locale du gradient (la rétro-propagation de l'erreur) est utilisée dans ce mémoire. La qualité des paramètres d'un modèle dépend de la puissance et de la robustesse de l'algorithme utilisé (Duan et al., 1992). En modélisation, l'optimisation n'est pas un problème hydrologique mais un corollaire mathématique lié à la nature et à la complexité intrinsèque du modèle. Comme mentionné au chapitre II, les algorithmes d'apprentissage sont des règles à partir desquelles les modèles neuronaux vont apprendre à se comporter, à se construire. Ils fonctionnent par minimisation de l'erreur d'un critère imposé. La méthode du gradient peut être :

i. totale, dans le cas de l'utilisation d'un critère total : celui-ci prend en compte tous les exemples en même temps ;

ii. partielle, dans le cas d'utilisation d'un critère partiel : celui-ci considère chaque exemple pris séparément.

Cette méthode nécessite l'emploi d'une fonction sigmoïde dérivable. Elle utilise un développement de Taylor à l'ordre 1 de l'erreur quadratique. Il a été développé par Rumelhart et Parkenet le Cun en 1985 et repose sur la minimisation de l'erreur quadratique entre les débits calculés et les débits mesurés aux différentes stations. Le terme rétropropagation du gradient provient du fait que l'erreur calculée en sortie est retransmise en sens inverse vers l'entrée. Dans cette méthode, la stratégie de mise à jour des poids est différente selon qu'on se trouve à la sortie des réseaux où à l'intérieur de ceux-ci. Pour plus de compréhension, on considère un réseau comportant n variables d'entrée, m variables de sortie et plusieurs couches cachées. Supposons qu'on dispose d'un ensemble d'apprentissage composé de k paires de vecteurs :

( x 1 , o 1), ( x2, o 2) , ,( xk ,o k) (21)

Avec :

= , 0 , 1 , , 0 , 2 , ..., , 0 , ? (Vecteur d'entrée) ;

n

( ) t

x x x x R

p p p p n

o p = o p , 1 , op,2 ,..., op,m ? R (Vecteur de sortie) ;

m

( ) t

= , , , , 1 , 2 ,..., , , ? (Vecteur des sorties réelles du réseau)

m

y y y

( ) t

y R

p p l l p p l m

On pose

Cj , k , i : La connexion entre le neurone k de la couche j-1 et le neurone i de la couche j :

yp,j, k : L'entrée totale du neurone k pour l'échantillon p de la couche j :

Cj , k, 0=èj,k : Le poids fictif du neurone k de la couche j correspondant à un biais dont l'entrée

est fixée à 1.

L'entrée totale du k noeud pour la couche j est :

n

y p , j , k = E Wj,k , i X p,j -1 , i (22)

i

=

0

La sortie de ce noeud sera :

n

Out

Wj , k ,i X

+ è

- j ,

p j i

, 1 ,

k

(23)

i

=

1

X p , j , k = F(Yp,j , k ) , F étant la fonction d'activation sigmoïde présentée ci-dessus.

Pour la mise à jour des différents poids, on pose que l'erreur commise sur le kième noeud de

sortie est définie par : äp ,k = O p , k- X p,l , k

2

m m

(24)

Il vient que l'erreur totale est : (

1 1

J = ä p k

2 = O X

- )

, p k

, p l k

, ,

2 k=1 2 k=1

Pour minimiser J, on calcule son gradient par rapport à chaque poids C, puis on modifie les poids dans le sens du gradient. Selon qu'il s'agisse des couches de sortie ou des couches cachées, l'équation de mise à jour des poids est différente. Elle est facile à mettre en place pour la couche de sortie et plus difficile dans l'autre cas. La modification des poids est fonction du calcul du gradient. Ainsi, les poids sur la couche de sortie sont mis à jour de la façon suivante :

C t

l k j+ 1 ) = C l,k , j (t )+ ( )(25)- ( t) =ìOp, k X p,l , k ) f' frp,l , k * p,l -1 ,j (26)

Avec ì le pas d'apprentissage compris entre 0 et 1. Finalement :

ep l , k = (Op,k - Xp,l , k ' , , avec ep, l , k l'erreur de signal du kieme noeud de la couche de

sortie, l'équation des modification des poids :

(27)

(28)

Cl ,k , j ( t + 1 ) = C l,k , j ( t ) + ìe p,l ,k X p,l -1 ,k

En ce qui concerne la mise à jour des couches cachées

Cl - 1 , j , ( t + 1 ) = C l-1, j, i ( t ) + ì e X

p,l -1 , j p,l -2 ,i

L'un des inconvénients majeurs de cet algorithme est qu'il risque de converger vers un minimum local de la surface d'erreur, d'où un choix non neutre des conditions initiales, fixées à 0,1 pour le poids et le biais.

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Et il n'est rien de plus beau que l'instant qui précède le voyage, l'instant ou l'horizon de demain vient nous rendre visite et nous dire ses promesses"   Milan Kundera