310 likes | 512 Views
Les Réseaux Neuronaux. Cours du module « Extraction des connaissances à partir de bases de données et de textes » DESS janvier 2003. Généralités (1/3). Approche connexioniste : modéliser le fonctionnement du cerveau humain.
E N D
Les Réseaux Neuronaux Cours du module « Extraction des connaissances à partir de bases de données et de textes » DESS janvier 2003
Généralités (1/3) • Approche connexioniste : modéliser le fonctionnement du cerveau humain. • Cerveau est vu comme un organe caractérisé par l’interconnexion d’un nombre élevé de neurones Le cerveau humain comporte environ 100 milliards de neurones, chacun relié en moyenne à 10000 autres. • Chaque connexion entre 2 neurones est caractérisée par son poids qui mesure le degré d’influence du premier neurone vers le second. Cours DESS - 10 janvier 2003
Généralités (2/3) Cours DESS - 10 janvier 2003
Généralités (3/3) • On peux comparer les réseaux de neurones à des filtres remplis de café : on y met de l'eau, il en sort du café. On verse des données descriptives, il ressort une prédiction. • Dans le cadre de l’apprentissage, on règle le poids des connexions entre des neurones pour satisfaire les exemples. Cours DESS - 10 janvier 2003
Applications • Perception (vision, reconnaissance de la parole, reconnaissance de caractères, etc.). • Problèmes difficiles du traitement du signal. • Banque : prédire l'issue de prêts, le comportement par rapport au recouvrement. Prédire le comportement de nouveaux clients. Anticiper les bons risques et leur proposer des prêts. Cours DESS - 10 janvier 2003
Structure des réseaux neuronaux (1/3) Cours DESS - 10 janvier 2003
Structure des réseaux neuronaux (2/3) • Cas 'symbolique' La force de la cellule d'entréeiest de 1 si le fait Fi est affirmé, de 0 si le fait Fi n'est pas affirmé (= 1 si Fi est présent = 0 si Fi est absent). • Cas 'numérique' La force de la cellule d'entréei est de fi si la force (= sa valeur numérique) du fait Fi est de fi. Cours DESS - 10 janvier 2003
Structure des réseaux neuronaux (3/3) Cours DESS - 10 janvier 2003
Fonctions d’entrées • Ep =ei wip • ou Ep = ei wip • ou Ep = Max ei • ou Ep = Min ei • ou … Cours DESS - 10 janvier 2003
Fonctions d’activation • f(x) = 1/(1 + e -kx) • f(x) = linéaire f(x) = -1 si x <= - 1/a; f(x) = 1 si x >= 1/a ; f(x) = a*x ailleurs • f(x) = tangente hyperbolique f(x)= (egx - e-gx ) / (egx + e-gx) • f(x) = seuil f(x) = 0 si x <= b; f(x) = 1 si x > b ; • ou ... Cours DESS - 10 janvier 2003
Fonctions d’activation : la fonction sigmoïde • f(x) = 1/(1 + e -kx) Cours DESS - 10 janvier 2003
Fonctions d’activation : la fonction sigmoïde • Si le coefficient k de 1/(1 + e -kx) est grand, alors la force de chaque cellule est presque toujours proche de 0 ou de 1. On a un réseau neuronal relativement symbolique • Si f est une fonction de seuil alors le réseau est vraiment symbolique. Cours DESS - 10 janvier 2003
Fonctions d’activation : la fonction sigmoïde • Si le coefficient k de 1/(1 + e -kx) est petit, alors la force de chaque cellule est bien distribuée entre 0 et 1. • On a un réseau neuronal "distribué". Le coefficient k est un paramètre qui fait varier la forme de la fonction. Un autre paramètre, implicite, est "centre" de la fonction sigmoïde. Cours DESS - 10 janvier 2003
Fonctions de sorties • En général, l'identité, • Egalement, binaire : sortie (x) = 1 si activation (x) > limite, 0 ailleurs. Cours DESS - 10 janvier 2003
La rétro-propagation (1/4) En Apprentissage : • On examine un "fait" (suite de Fi présents ou non - valeurs des faits) • On propage jusqu'aux cellules de sortie • On examine toutes les cellules de sortie • On compare le résultat à celui espéré • On rétropropage les différences dans les couches cachées Cours DESS - 10 janvier 2003
La rétro-propagation (2/4) • Si erreur alors nouveau poids = ancien poids + changement de poids • wij (t+1) = wij (t) + wij (t) Cours DESS - 10 janvier 2003
La rétro-propagation (3/4) Pour les cellules liées à une cellule de sortie: • i = d s(entrée sur i) / d(entrée sur i) * Err • Err = valeur attendue - valeur observée • Note. Autre règle possible : soit err l'erreur effectuée sur le neurone de sortie et supposons qu'il y ait k neurones qui lui transmettent de l' info, alors wij (t) = (err/k) * wij (t) * Où est un "taux d'apprentissage". Il existe de nombreuses variations. Cours DESS - 10 janvier 2003
La rétro-propagation (4/4) Pour une cellule de la couche cachée profonde ou de la couche d'entrée: • i est calculée par la même formule mais maintenant • Erri = p wki p Cours DESS - 10 janvier 2003
Rétro-propagation – Exemple(1/9) • Exemple d‘apprentissage par rétro-propagation: Sortie désirée : N5 = 1 N6 = 0 N7 = 1 Cours DESS - 10 janvier 2003
Rétro-propagation - Exemple (2/9) Hypothèses : • Entrée : ei wik • Activation : 1/(1 + e- entrée) • Sortie (de N4) : Si l'activation est inférieure à 0.5 alors 0, sinon 1 Faits • N1 = 1, N2 = 0.5, N3 = 0.2 Cours DESS - 10 janvier 2003
Rétro-propagation - Exemple (3/9) • Poids initiaux W14=0.3, W24=0.5, W34=0.1, W45=0.1, W46=1.0, W47=0.0 Cours DESS - 10 janvier 2003
Rétro-propagation - Exemple (4/9) • entrée sur N4 = 0.3*1+0.5*0.5+0.1*0.2 = 0.57 • activation = 1 / 1+ e-0.57 = 0.639 • sortie de N4 = 1.0 • entrée sur N5 = 0.1 (1*0.1) • entrée sur N6 = 1 (1*1) • entrée sur N7 = 0.0 (1*0) Cours DESS - 10 janvier 2003
Rétro-propagation - Exemple (5/9) • Pour les cellules liées à une cellule de sortie: i = d s(entrée sur i) / d(entrée sur i) * Err Err = valeur attendue - valeur observée Cours DESS - 10 janvier 2003
Rétro-propagation - Exemple (6/9) • Rappel : si s (x) = 1 / 1+ e-kx alors d s(x) / dx = k * s (x) * (1 - s(x)) [ Utiliser le fait que (1/v)' = -(v' / v2) et que (e-kx)'= -k e-kx ] -(v' / v2) = ke-x / (1+ e-kx)2 et 1 - (1 / 1+ e-kx) = e-kx / 1+ e-kx 1 - s(x) = e-kx / 1+ e-kx donck*s (x)*(1 - s(x)) = ke-x/(1+e-kx)2 Cours DESS - 10 janvier 2003
N4 Rétro-propagation - Exemple (7/9) • Pour une cellule de la couche cachée et de la couche entrée i est calculée par la même formule mais maintenant Erri = p wip p (ici p=5,6,7) 4 = ? • Wij = *j*(sortie de Ni) et W'ij = Wij + Wij avec = 1 Cours DESS - 10 janvier 2003
Rétro-propagation - Exemple (8/9) • W14 = ? • W24 = ? • W34 = ? • W45 = ? • W47 = ? • W46 = ? Cours DESS - 10 janvier 2003
Rétro-propagation - Exemple (9/9) Nouveaux poids • W14 = ? • W24 = ? • W34 = ? • W45 = ? • W46 = ? • W47 = ? Cours DESS - 10 janvier 2003
Exemple d’application (1/3) Approche Neuronale de la Notation de la Couverture Nuageuse • Segmentation en régions de l'image suivie d'une classification de ces régions par un réseau de neurones à apprentissage. • Pour fonctionner le réseau doit subir au préalable une phase d'apprentissage consistant à lui présenter des données typiques ainsi que les masques nuageux escomptés Cours DESS - 10 janvier 2003
Exemple d’application (2/3) • Les entrées de ce réseau sont constituées par les valeurs de sept mesures radiométriques effectuées sur une région particulière en vue de sa classification. • Les sorties du réseau sont des valeurs normalisées entre 0 et 1 et constituent des facteurs d'appartenance aux classes discriminées par le réseau (nuages denses, brumes denses et bords de nuages denses, brumes légères). Ces classes permettent de constituer la couverture nuageuse. Cours DESS - 10 janvier 2003
Exemple d’application (3/3) • Le principe de classification par réseau de neurones est la propagation d'un flux d'entrée constitué des sept mesures radiométriques d'une région d'une image à travers ce réseau. • Par leur configuration de poids les neurones vont être activés et fournir une réponse depuis la couche d'entrée vers la couche de sortie. • Les réponses du réseau fournissent alors des cartes de probabilité. Les niveaux de probabilités observés permettent de décider si les régions sont nuageuses et si l'on en est certain. Cours DESS - 10 janvier 2003
Bibliogaphie • Cours d’Yves Kodratoff : http://ecd6.univ-lyon2.fr/organisation/contenu_cours.php3?numcours=1 • Antoine Cornuéjols - Laurent Miclet. Apprentissage Artificiel. Edition Eyrolles (2002). Cours DESS - 10 janvier 2003