Ingnierie des connaissances: - PowerPoint PPT Presentation

1 / 38
About This Presentation
Title:

Ingnierie des connaissances:

Description:

Apprentissage / connaissance acquise / activit d'un r seau de neurones ... Apprentissage d 'un RNA un seul niveau. R solution du probl me (suite) Interpr tation ... – PowerPoint PPT presentation

Number of Views:29
Avg rating:3.0/5.0

less

Transcript and Presenter's Notes

Title: Ingnierie des connaissances:


1
Ingénierie des connaissances Réseaux de
Neurones Artificiels Jean-Marc Adamo Mars 2002
2
Réseaux de Neurone Artificiels Neuromimétisme
2
  • Principe
  • observer lorganisation du système nerveux
    central
  • comprendre le principe de son fonctionnement au
    niveau de la cellule
  • et du réseau de cellules
  • simuler lorganisation et les mécanismes
    observés dans le fonctionnement
  • du système nerveux central pour développer des
    algorithmes dapprentissage

3
Réseaux de Neurone Artificiels organisation du
système nerveux central au niveau cellulaire
3
  • Le système nerveux central au niveau cellulaire
  • vaste collection de cellules nerveuses
    (neurones) 1010 à 1011
  • vaste réseau dinterconnexion inter-cellulaire

4
Réseaux de Neurone Artificiels organisation du
neurone
4
  • Le neurone
  • possède un corps le soma
  • autour du soma se développe un arbre de fibres
    les dendrites
  • (103 à 104 par neurone)
  • le soma est prolongé par un tronc laxone,
    portant à son extrémité
  • un arbre de fibres terminales.
  • Les dendrites
  • portent des organes de connexion les synapses
  • chaque synapse est une interface de connexion
    entre le dendrite
  • qui le porte et une fibre terminale (provenant
    dun autre neurone)
  • linterface de connexion est active
  • nest pas quun simple point de connexion
  • amplifie ou inhibe le signal reçu dune fibre
    terminale
  • avant de transmettre le signal modifié au soma.

5
Réseaux de Neurone Artificiels Apprentissage /
connaissance acquise / activité dun réseau de
neurones
5
  • Lapprentissage d'un réseau de neurones résulte
  • de la construction progressive du réseau
    dinterconnexion et/ou
  • du réglage progressif des fonctions synaptiques
    damplification
  • ou dinhibition
  • La connaissance (au niveau cellulaire) acquise
    par un réseau de neurones,
  • à l instant t, s'identifie
  • à larchitecture du réseau d'interconnexion, à
    cet instant, et
  • à létat des fonctions synaptiques
    damplification ou dinhibition
  • à cet instant.
  • Lactivité du neurone consiste
  • à intégrer lensemble des signaux reçus sur ses
    connexions
  • synaptiques, et
  • à émettre un signal le long de son axone à
    condition que la

6
Réseaux de Neurone Artificiels modèle formel du
neurone (neurone artificiel)
6
  • Neurone artificiel
  • synapses
  • variables synaptiques xi
  • poids synaptiques wi

  • x1
  • fonction dintégration de signaux ? xi

  • xn
  • seuil dactivation valeur numérique

  • 1 si x gt
    seuil
  • fonction dactivation ?(seuil) x

  • -1 si x ?
    seuil

? wi xi
7
Réseaux de Neurone Artificiels neurone
artificiel normalisation
7
La réponse d un neurone artificiel est

1 si ? 1 ? i ? n wi xi gt seuil y
?(w0) (? 1 ? i ? n wi xi )

-1 si ? 1 ? i ? n wi xi ? seuil Ce qui
équivaut à
1 si ? 0 ? i ?
n wi xi gt 0 y ?(0) (? 0 ?
i ? n wi xi )
-1 si ?
0 ? i ? n wi xi ? 0
On note ? ?(0) . Ce qui conduit au schéma
w0 -seuil x0 1
8
Réseaux de Neurone Artificiels neurone
artificiel puissance dexpression
8
  • Le neurone artificiel est capable de représenter
    les fonctions booléennes
  • élémentaires AND, OR , NOT
  • AND
  • y ?(w0 x0 w1 x1 w2 x2)
  • avec x0 1, w0 -0.8, w1 0.5, w2
    0.5.
  • OR
  • y ?(w0 x0 w1 x1 w2 x2)

9
Réseaux de Neurone Artificiels neurone
artificiel puissance dexpression
9
  • Un neurone artificiel isolé nest pas capable de
    représenter la fonction booléenne
  • XOR (ou exclusif)
  • Dune manière plus générale, un neurone
    artificiel isolé est seulement capable de
  • représenter les fonctions booléennes dont le
    graphe est linéairement séparable,
  • c est à dire,

-1
-1
-1
-1
1
1
1
1
10
Réseaux de Neurone Artificiels neurone
artificiel puissance dexpression
10
11
Réseaux de Neurone Artificiels neurone
artificiel puissance dexpression
11
  • Conclusions
  • Le neurone artificiel isolé a une puissance
    dexpression insuffisante pour
  • être pratiquement utile.
  • On sait que toute fonction booléenne pour
    sexprimer sous la forme dune
  • expression construite avec AND, OR et NOT (forme
    normale), par exemple
  • x1 XOR x2 (x1 OR x2) AND (NOT x1 OR NOT x2).
  • Donc, toute fonction booléenne peut être
    représentée sous forme dun
  • réseau de neurones artificiels.
  • Nous noterons plus loin que

12
Réseaux de Neurone Artificiels modèle continu
12
La fonction escalier ? nest pas différentiable,
ce qui rend difficile lutilisation des outils
mathématiques applicables aux fonctions continues
pour construire des algorithmes
dapprentissage. On utilisera désormais deux
approximations continues de la fonction
escalier (lune ou lautre).
tanh(?x)
13
Réseaux de Neurone Artificiels modèle continu
13
Pour les deux fonctions continues précédemment
définies le paramètre ? permet de régler
lintensité de la pente au voisinage de 0. Par
exemple pour y tanh(?x)
14
Réseaux de Neurone Artificiels modèle continu
puissance dexpression
14
  • Les résultats suivants ont été établis (Cybenko,
    Hornik, fin des années 80)
  • Toute fonction booléenne peut être exactement
    simulée par un réseau de neurones
  • artificiels (RNA) à 2 niveaux.
  • Toute fonction continue et bornée peut être
    approximée par un RNA à 2 niveaux.
  • Lapproximation peut être rendue aussi précise
    que possible en augmentant le
  • nombre des variables cachées.

15
Réseaux de Neurone Artificiels Illustration
15
1. Echantillonnage (construction du fichier
dapprentissage). 2. Apprentissage (réglage des
poids synaptiques). 3. Utilisation du RNA
pour conduire de manière autonome.
16
Réseaux de Neurone Artificiels Apprentissage
d'un RNA à un seul niveau
16
  • Données
  • RNA

avec sj ? 0 ? i ? n wij xi
  • Fichier dapprentissage D vecteurs
  • (D paires valeurs proposées en entrée, valeurs
    attendues en sortie)
  • (ox11, , ox1n oy11, , oy1m)
  • (oxd1, , oxdn oyd1, , oydm)
  • (oxD1, , oxDn oyD1, , oyDm)

17
Réseaux de Neurone Artificiels Apprentissage
d un RNA à un seul niveau
17
Position du problème Déterminer la matrice des
poids synaptiques w01 .. w0m
W wi1 .. wim wn1 .. wnm telle
que lécart entre les valeurs calculées par le
RNA à partir des données dentrée du fichier
dapprentissage et les valeurs de sorties de ce
fichier soit minimum. Autrement formulé,
déterminer W qui minimise lexpression E(W)
1/2 ? 1 ? d ? D ? 1 ? j ? m (ydj ?
oydj)2 où ydj ?(? 0 ? i ? n wij oxdi.
).
18
Réseaux de Neurone Artificiels Apprentissage
d un RNA à un seul niveau
18
  • Résolution du problème
  • Pour descendre vers le minimum, on utilise la
    méthode de la tangente
  • de plus forte pente
  • A létape initiale k 0,
  • on choisit un point arbitraire sur
    lhypersurface E(W).
  • A toute étape k 0, 1 , ,
  • on détermine la tangente de plus forte pente au
    point
  • courant,
  • on descend dans la direction de cette tangente
    dune
  • distance définie par le pas de progression.
  • Larrêt de la procédure est décidé selon un
    critère darrêt qui sera
  • discuté plus loin.

19
Réseaux de Neurone Artificiels Apprentissage
d un RNA à un seul niveau
19
  • Résolution du problème (suite)
  • tangente de plus forte pente
  • La tangente de plus forte pente à E(W) en Wk est
    le gradient en Wk
  • défini par
  • ?(Wk)

20
Réseaux de Neurone Artificiels Apprentissage
d un RNA à un seul niveau
20
une dimension par élément de la matrice des poids
synaptiques
  • Résolution du problème (suite)
  • Interprétation géométrique du gradient
  • ?(Wk) représente la projection, dans
    lespace ?mn des m?n dimensions,
  • du vecteur directeur
    unitaire de la tangente montante de plus
  • forte pente au point de la
    surface E(W) correspondant à Wk .
  • Equation dévolution

21
Réseaux de Neurone Artificiels Apprentissage
d un RNA à un seul niveau
21
Problèmes posés par la méthode du gradient de
plus grande pente E(W) 1/2 ? 1 ? d ? D ? 1 ? j
? m (ydj ? oydj)2, avec ydj ?( sdj
) et sdj ? 0 ? i ? n wij oxdi. La
fonction non linéaire ? est présente dans
l expression de E(W) ? E(W) ne possède pas, en
général, un seul minimum ? La méthode du gradient
ne garantit pas que lon atteigne le plus petit
des minima!
W0
E(W)
E(W)
W0
W
W
Un seul minimum
Plusieurs minima
22
Réseaux de Neurone Artificiels Apprentissage
d un RNA à un seul niveau
22
Problèmes posés par le choix du pas de
progression (paramètre d apprentissage) Equatio
n dévolution Wk1 Wk ? ??(Wk), k ? 0, où ?
est le pas de progression. Paramètre ? choisi
trop petit ? convergence lente.
Paramètre ? choisi trop grand ? défaut de
convergence ou oscillations.
23
Réseaux de Neurone Artificiels Apprentissage
d un RNA à un seul niveau
23
  • Résolution du problème (suite)
  • calcul des termes de la matrice ?(Wk) )
  • E(W) 1/2 ? 1 ? d ? D ? 1 ? j ? m (ydj ?
    oydj)2,
  • avec ydj ?(sdj ) et sdj ? 0 ? i ? n
    wij oxdi.

??(sdj )
alors
(Wk) ? (1 ? ?(sdj (Wk))2)
? (1 ? ydj (Wk)2).
? sdj
Par conséquent
24
Réseaux de Neurone Artificiels Apprentissage
d un RNA à un seul niveau
24
  • Résolution du problème (suite)
  • calcul des termes de la matrice ?(Wk)
  • E(W) 1/2 ? 1 ? d ? D ? 1 ? j ? m (ydj ?
    oydj)2,
  • avec ydj ?(sdj ) et sdj ? 0 ? i ? n
    wij oxdi.

??(sdj )
alors
(Wk) ? ?(sdj (Wk)) (1 ? ?(sdj (Wk)))
? ydj (Wk) (1 ? ydj (Wk)).
? sdj
Par conséquent
25
Réseaux de Neurone Artificiels Apprentissage
d un RNA à un seul niveau
25
  • Algorithme (batch algorithm)
  • Initialiser les poids du RNA avec de valeurs
    aléatoires faibles
  • (comprises entre - 0.5 et 0.5, par exemple).
  • Fixer la valeur de ? (par exemple 0.5).
  • Tant que la condition darrêt nest pas remplie
    (discutée plus loin)
  • wijk1 wijk ? ??ij(Wk)
  • wijk ? ? ? 1 ? d ? D ?jk
    oxdi
  • où ?jk ? (ydj (Wk) ? oydj) (1 ?
    ydj (Wk)2)
  • ou
  • ? (ydj (Wk) ? oydj)
    ydj (Wk) (1 ? ydj (Wk)).

Contribution de chaque erreur individuelle entre
valeur observée et valeur attendue pour chaque
vecteur du fichier dapprentissage À létape k
26
Réseaux de Neurone Artificiels Apprentissage
d un RNA à un seul niveau
26
  • Variation probabiliste (incremental algorithm)
  • A chaque itération, au lieu de faire porter le
    calcul du gain sur tous les
  • vecteurs formant dans le fichier dapprentissage
  • ? 1 ? d ? D ?jk oxdi
  • ?jk ? (ydj (Wk) ? oydj) (1
    ? ydj (Wk)2)
  • ou
  • ? (ydj (Wk) ? oydj)
    ydj (Wk) (1 ? ydj (Wk))
  • on fait porter le calcul du gain sur un seul de
    ces vecteurs tiré au hasard.
  • Dans ce cas le gain devient
  • ?jk oxdi
  • ?jk ? (ydj (Wk) ? oydj) (1
    ? ydj (Wk)2)
  • ou
  • ? (ydj (Wk) ? oydj)
    ydj (Wk) (1 ? ydj (Wk))

27
Réseaux de Neurone Artificiels Apprentissage
d un RNA à niveaux multiples
27
RNA
Fichier d apprentissage D vecteurs
(D paires valeurs proposées en entrée,
valeurs
attendues en sortie) (ox11, , ox1n0
oy11, , oy1n3) (oxd1, , oxdn0
oy11, , oydn3) (oxD1, , oxDn0
oy11, , oyDn3)
28
Réseaux de Neurone Artificiels Apprentissage
d un RNA à niveaux multiples
28
Position du problème Déterminer les matrices de
poids synaptiques pour l'ensemble des niveaux
h w(h)01 .. w(h)0 nh
W(h) w(h)i1 .. w(h)i
nh

w(h)nh-11 w(h)nh-1
nh telles que lécart entre les valeurs
calculées par le RNA à partir des
données dentrée du fichier dapprentissage et
les valeurs de sorties de ce fichier
soit minimum. Autrement formulé, déterminer W
qui minimise lexpression E(W) 1/2 ? 1 ? d ?
D ? 1 ? j ? m (x(H)dj ? oydj)2 où H est
le nombre de niveaux du RNA, et
x(h)dj ?(? 0 ? i ? n(h-1) w(h)ij x(h ?
1)di. ), pour tout h, 2 ? h ? H
x(1)dj ?(? 0 ? i ? n0 w(1)ij oxdi. ),
Pour tout niveau h, 1 ? h ? H
29
Réseaux de Neurone Artificiels Apprentissage
d un RNA à niveaux multiples
29
  • Résolution du problème
  • Pour descendre vers le minimum, on utilise la
    méthode de la tangente
  • de plus forte pente
  • A létape initiale, k 0,
  • on choisit un point arbitraire sur lhyper
    surface E(W).
  • A toute étape k 0, 1, ,
  • on détermine la tangente de plus forte pente au
    point
  • courant,
  • on descend dans la direction de cette tangente
    dune
  • distance définie par le pas de progression.
  • Larrêt de la procédure est décidé selon un
    critère darrêt qui sera
  • défini plus loin.

30
Réseaux de Neurone Artificiels Apprentissage
d un RNA à niveaux multiples
30
  • Résolution du problème (suite)
  • tangente de plus forte pente
  • on pose W ? 1 ? h ? H W(h), W représente
    lensemble de tous les poids.
  • La tangente de plus forte pente à E(W) en Wk est
    le gradient en Wk
  • défini par?(Wk) ? 1 ? h ? H ?(W(h)k), où
  • ?(W(h)k)
  • ?(Wk) représente la projection, dans l espace?
    n1n2 nH-1nH, du système
  • de vecteurs directeurs de la tangente de plus
    forte pente montante au
  • point Wk.

31
Réseaux de Neurone Artificiels Apprentissage
d un RNA à niveaux multiples
31
Calcul des termes de la matrice ?(Wk)
E(W) 1/2 ? 1 ? d ? D ? 1 ? j ? m (x(H)dj(W)
? oydj)2 x(h)dj ?(s(h)dj) avec
s(h)dj ? 0 ? i ? n(h-1) w (h)ij x(h ?
1)di, pour 2 ? h ? H x(1)dj ?(s(1)dj)
avec s(1)dj ?(? 0 ? i ? n0 w (1)ij oxdi. ),
Cas où h H (calcul des termes de ?(Wk) pour le
dernier niveau du RNA) un calcul identique à
celui fait pour les RNAs à 1 niveau conduit au
résultat
où ?k(H)dj ? (x(H)dj (Wk) ? oydj) (1
? x(H)dj (Wk)2) ou
? (x(H)dj (Wk) ? oydj)
x(H)dj (Wk) (1 ? x(H)dj (Wk))
leffet de lerreur commise par le réseau à
létape k est directement calculable au
dernier niveau du RNA puisque les variables de
sortie de ce niveau sont celles du RNA tout
entier. Cet effet nest pas directement
calculable aux autres niveaux du RNA. Il faut
donc trouver le moyen de rétropropager cet effet
à partir du dernier niveau jusquau niveau 1
(niveaux h lt H).
32
Réseaux de Neurone Artificiels Apprentissage
d un RNA à niveaux multiples
32
calcul des termes de la matrice ?(Wk) (suite)
E(W) 1/2 ? 1 ? d ? D ? 1 ? j ? m
(x(H)dj(W) ? oydj)2 x(h)dj
?(s(h)dj) avec s(h)dj ? 0 ? i ? n(h-1) w
(h)ij x(h ? 1)di, pour 2 ? h ? H x(1)dj
?(s(1)dj) avec s(1)dj ?(? 0 ? i ? n0 w
(1)ij oxdi. ),
Cas où h lt H (rétropropagation de lerreur)
x(h-1)di (Wk)
(Wk)
(Wk)
(Wk) ? 1 ? d ? D
puisque la valeur E(W) est fonction de w(h)ij à
travers un s(h)dj.
(Wk)
? 1 ? r ? nh1
(Wk)
(Wk)
puisque la valeur E(W) est fonction de s(h)dj
à travers tous les s(h1)dr vers lequel il est
diffusé après seuillage (somme de toutes les
contributions).
(Wk)
(Wk)
? 1 ? r ? nh1
(Wk)
? (1 ? x(h)dj (Wk)2) ou ? x(h)dj (Wk) (1 ?
x(h)dj (Wk))
(Wk)
? 1 ? r ? nh1
wk(h1)jr
On note ?k(h)dq
puisque la valeur s(h1)dr est fonction de
chaque s(h)dj à travers un x(h)dj.
rétropropagation de lerreur
(Wk)
? (1 ? x(h)dj (Wk)2) ou ? x(h)dj (Wk) (1 ?
x(h)dj (Wk))
Il vient ?k(h)dj ? 1 ? r ? nh1 wk(h1)jr
?k(h1)dr
Pour finir, on obtient
(Wk) ? 1 ? d ? D ?k(h)dj x(h-1)di (Wk)
33
Réseaux de Neurone Artificiels Apprentissage
d un RNA à niveaux multiples
33
Cas où h lt H conclusion
où ?k(h)dj (? 1 ? r ? nh1 wk(h1)jr
?k(h1)dr )
? (1 ? x(h)dj (Wk)2) ou ? x(h)dj (Wk) (1 ?
x(h)dj (Wk))
34
Réseaux de Neurone Artificiels Apprentissage
d un RNA à niveaux multiples
34
  • Algorithme (batch algorithm)
  • Initialiser les poids du RNA avec de valeurs
    aléatoires faibles
  • (comprises entre - 0.5 et 0.5, par exemple)
  • Fixer la valeur de ? (par exemple 0.5)
  • Tant que la condition darrêt nest pas remplie
    (discutée plus loin)
  • si niveau h H (dernier niveau)
  • w(H)ijk1 w(H)ij k ? ? ? 1 ? d ? D
    ?k(H)dj x(H-1)di (Wk)
  • où ?k(H)dj ? (x(H)dj (Wk) ?
    oydj) (1 ? x(H)dj (Wk)2)
  • ou
  • ?
    (x(H)dj (Wk) ? oydj) x(H)dj (Wk) (1 ?
    x(H)dj (Wk))
  • si niveau h lt H (autres niveaux)

35
Réseaux de Neurone Artificiels Apprentissage
dun RNA à niveaux multiples
35
  • Variation probabiliste (incremental algorithm)
  • A chaque itération, au lieu de faire porter le
    calcul du gain sur tous les
  • vecteurs formant dans le fichier dapprentissage
  • ? 1 ? d ? D ?k(h)dj
    x(h-1)di (Wk)
  • ?jk est calculé selon le niveau,
    comme spécifié sur la page précédente,
  • on fait porter le calcul du gain sur un seul de
    ces vecteurs tiré au hasard.
  • Dans ce cas le gain devient
  • ?k(h)dj x(h-1)di (Wk)
  • ?jk est calculé selon le niveau,
    comme spécifié sur la page précédente,
  • où d est un nombre tiré au hasard
    sur lintervalle entier1, D.
  • On montre que, si ? est suffisamment petit,
    lalgorithme utilisant le nouveau
  • calcul de gain converge avec une forte
    probabilité vers lun des minima de

36
Réseaux de Neurone Artificiels Apprentissage
d un RNA à niveaux multiples
36
  • Critère darrêt observation du biais du fichier
    dapprentissage
  • On estime quà partir dun certain moment,
    lalgorithme dapprentissage parcourt
  • des régions sur E(W) qui rendent compte des
    spécificités du fichier
  • dapprentissage bien plus que des propriétés
    générales de la population.
  • Si on calcule, à chaque pas, lerreur (1) par
    rapport au fichier d'apprentissage et
  • (2) par rapport à un autre fichier (fichier de
    contrôle) voici ce quon observe le plus
  • souvent

Erreur mesurée par rapport au fichier
d apprentissage par lalgorithme E(W) 1/2 ?
1 ? d ? D ? 1 ? j ? m (x(H)dj ? oydj)2
taux d erreur
Erreur mesurée par rapport au fichier de contrôle
nombre ditérations
37
Réseaux de Neurone Artificiels Apprentissage
d un RNA à niveaux multiples
37
  • Critère darrêt Méthode du double fichier
  • On utilise deux fichiers apprentissage et
    contrôle.
  • Lerreur calculée sur le fichier dapprentissage
    est utilisée pour effectuer la
  • modification des poids synaptiques comme
    spécifié dans l algorithme de
  • rétropropagation.
  • Lerreur calculée sur le fichier de contrôle est
    utilisée pour contrôler larrêt
  • de la procédure dapprentissage. On procède de
    la manière suivante
  • Lalgorithme sauvegarde le dernier minimum local
    rencontré de lerreur
  • mesurée par rapport au fichier de contrôle. On
    note M ce minimum.
  • Dès que la dernière erreur calculée sur ce même
    fichier dépasse M dune
  • quantité ? fixée à priori on arrête la
    procédure dapprentissage.

taux d erreur
Erreur mesurée par rapport au fichier
d apprentissage par lalgorithme E(W) 1/2 ?
1 ? d ? D ? 1 ? j ? m (x(H)dj ? oydj)2
Erreur mesurée par rapport au fichier de contrôle
?
M
nombre ditérations
38
Réseaux de Neurone Artificiels Apprentissage
d un RNA à niveaux multiples
38
  • Raffinement de la procédure de rétropropagation
    addition dun moment
  • Utilité
  • Accélérer dans les régions de forte pente où on
    ne risque pas de rater le minimum
  • cherché en donnant au pas de progression une
    valeur forte.
  • Décélérer dans les régions de faible pente où on
    risque de rater le minimum cherché
  • en donnant au pas de progression une valeur
    forte.
  • On introduit un paramètre ?, 0 ? ? ? 1, appelé
    moment, dans léquation dévolution de la
  • manière suivante
  • w(h)ij k1 w(h)ij k ? ? ? 1 ? d ? D
    ?k(h)dj x(h-1)di (Wk) ?(w(h)ij k-1 ?
    w(h)ij k)

terme accélérateur si (w(h)ij k-1 ? w(h)ij k) est
grand (forte pente) terme décélérateur si (w(h)ij
k-1 ? w(h)ij k) est petit (faible pente)
Write a Comment
User Comments (0)
About PowerShow.com