Les Réseaux Neuronaux Cours du module « Extraction des connaissances à partir de bases de...

Preview:

Citation preview

Les Réseaux Neuronaux

Cours du module

« Extraction des connaissances

à partir de bases de

données et de textes »

DESS

janvier 2003

Cours DESS - 10 janvier 2003 2

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 3

Généralités (2/3)

Cours DESS - 10 janvier 2003 4

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 5

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 6

Structure des réseaux neuronaux (1/3)

F1 F2 . . . Fn

. . . cellules d'entrée(de forces 0 ou 1)

couche cachée

cellules de sortie

Fi

(résultats du réseau)

faits fournis au réseaucomme entrées

. . .

. . .1 2 ni

Cours DESS - 10 janvier 2003 7

Structure des réseaux neuronaux (2/3)

Cas 'symbolique'

La force de la cellule d'entrée i est 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ée i est de fi si la force (= sa valeur numérique) du fait Fi est de fi.

Cours DESS - 10 janvier 2003 8

Structure des réseaux neuronaux (3/3)

POIDS

Cours DESS - 10 janvier 2003 9

Fonctions d’entrées

Ep = ei wip

ou Ep = ei wip

ou Ep = Max ei

ou Ep = Min ei

ou …POIDS

Cours DESS - 10 janvier 2003 10

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 11

Fonctions d’activation : la fonction sigmoïde

f(x) = 1/(1 + e -kx)

1

0

k grandk petit

Cours DESS - 10 janvier 2003 12

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.

1

0

k grandk petit

Cours DESS - 10 janvier 2003 13

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.

1

0

k grandk petit

Cours DESS - 10 janvier 2003 14

Fonctions de sorties En général, l'identité, Egalement, binaire :

sortie (x) = 1 si activation (x) > limite, 0 ailleurs.

POIDS

Cours DESS - 10 janvier 2003 15

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 16

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 17

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 18

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 19

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 20

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 21

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 22

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 23

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 24

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

donc k*s (x)*(1 - s(x)) = ke-x/(1+e-kx)2

Cours DESS - 10 janvier 2003 25

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

N4

Cours DESS - 10 janvier 2003 26

Rétro-propagation - Exemple (8/9)

W14 = ? W24 = ? W34 = ? W45 = ? W47 = ? W46 = ?

Cours DESS - 10 janvier 2003 27

Rétro-propagation - Exemple (9/9)

Nouveaux poids W14 = ? W24 = ? W34 = ? W45 = ? W46 = ?

W47 = ?

Cours DESS - 10 janvier 2003 28

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 29

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 30

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 31

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).