Vous êtes sur la page 1sur 1

Programmation C: rseaux de neurones

2/02/10

Tab. 1 Algorithme de rtro-propagation du gradient stochastique Rpter jusqu convergence pour chaque exemple (Xp , Yp ) faire 1. propager linformation (calculer lactivation du PMC) 2. pour chaque neurone de sortie k calculer k ak (1 ak )(ypk ak ) 3. pour chaque neurone cach j calculer j aj (1 aj )
ksortie t t 4. calculer les pas wji et wkj par ( > 0) t wji = +j ai , t wkj

k wkj

(c. entre c. cache) (c. cache c. sortie)

= +k aj

5. mettre jour les wji et les wkj par


t wji wji + wji

(c. entre c. cache) (c. cache c. sortie)

wkj wkj +

t wkj

Lalgorithme sappelle algorithme de rtro-propagation du gradient parce que linformation utilise le gradient pour mettre les poids jour est calcule depuis la sortie du PMC jusqu lentre, et donc en sens inverse de la propagation normale de linformation.

Travail faire

Le but du projet est de programmer un PMC, son apprentissage et de lexcuter sur un ensemble dimages de chires manuscrits qui nont pas t vus lors de lapprentissage. Le programme ralis devra respecter les contraintes suivantes. Modularit. Le programme doit tre dcompos en plusieurs modules, dnis par les fonctionnalits quelle proposent. En particulier, des modules vidents sont celui permettant les calculs concernant le PMC, celui permettant le chargement depuis un chier un PMC ainsi que les vecteurs de chires manuscrits, un autre qui permet le calcul des statistiques de bonne classication du PMC appris. videmment, la compilation du projet doit se faire grce lutilitaire make et un chier makele appropri. Tout projet qui nest pas muni dun chier makele se verra attribuer la note de 0. Persistance. Le programme doit permettre denregistrer/charger un PMC dans/depuis un chier. Le jour de la soutenance, il ne sera pas possible dexcuter lapprentissage du PMC, faute de temps ; les tudiants devront charger en mmoire un PMC qui aura t appris auparavant. Ergonomie. Le programme doit tre simple dutilisation. Il doit permettre lutilisateur de choisir entre excuter un apprentissage, utiliser un PMC dj appris, enregistrer un PMC qui vient dtre appris, rgler les paramtres de lapprentissage (le pas dapprentissage > 0, notamment), dnir une structure de PMC, etc.

L. Ralaivola

L2 MI

Vous aimerez peut-être aussi