Introduction aux Réseaux de Neurones

publicité
Introduction aux
Réseaux de Neurones
Philippe JAUFFRET
Laboratoire des Systèmes d ’Information Chimique
UMR 5076 du CNRS - Montpellier
<[email protected]>
>
sommaire
• Neurones biologiques et artificiels
• évolution du domaine
• perceptrons - application au test de polluants
• les réseaux multi-niveaux
• la rétropropagation
• les cartes de Kohonen - application à la classification
automatique des réactions
• avantages et limites des RN
28/12/2002
41
<
>
2
QUITTER
définitions
•Les réseaux de neurones (artificiels) sont des programmes
informatiques fondés sur un modèle simplifié du cerveau.
•Ils tentent de reproduire son comportement logique en mettant en
œuvre un ensemble d’entités inspirées des neurones biologiques.
•Un réseau de neurones est un exemple de « modèle connexionniste »
•Un réseau de neurones peut être « entraîné » et apprendre à résoudre
un problème donné
28/12/2002
41
<
>
3
QUITTER
Le neurone biologique
dendrites
Cerveau humain :
~1010 neurones
~104 connexions/neurone
axone
synapses
noyau
Signal
de sortie
Σ des signaux
d ’entrée
28/12/2002
41
<
>
4
QUITTER
apprentissage
biologique
Chimiquement très complexe
pas encore entièrement compris
Logiquement assez simple :
• renforcement des poids synaptiques en
cas de stimuli similaires répétés
• affaiblissement progressif en cas de
non-stimulation (oubli ?)
28/12/2002
41
<
>
5
QUITTER
Le neurone artificiel
I1
W1
I2
Signal
de sortie
ΣW S ≥ σ ?
W2
i
i
W3
I3
Sortie =
{
28/12/2002
=0 (-1) si ΣW S < σ
i
i
≠0 si ΣW S ≥ σ
i
i
41
<
>
6
QUITTER
Fonctions d ’un neurone
•Un neurone possède une ou plusieurs
connexions entrantes, à chacune
d ’elles est associé un poid
•Si la somme pondérée des entrées
est inférieure à un seuil, le neurone
reste inactif
•Si cette somme dépasse le seuil, le
neurone devient actif et émet un signal
avant de retourner au repos
28/12/2002
41
<
>
7
QUITTER
Apprentissage dans un
réseau de neurones
Il consiste à ajuster progressivement
les poids synaptiques jusqu ’à ce que:
•
soit les réponses soient conformes
à ce que l ’on attend sur l ’échantillon
d ’entraînement (apprentissage
supervisé)
• soit le réseau soit stabilisé
(apprentissage non supervisé)
28/12/2002
41
<
>
8
QUITTER
Un peu d ’histoire
Années 40 : fondements théoriques
W.S. McCullogh & W. Pitts « A logical calculus of the ideas imminent in nervous activity », Bull. Math.
Biophys., 1943, (5), 115.
W. Pitts & W.S. McCullogh « How we know universals: the perception of auditory and visual forms », Bull.
Math. Biophys., 1947, (9), 127.
D.O. Hebb « The organization of behaviour », Wiley, New-York, 1949.
Années 60 : premiers pas - le perceptron
F. Rosenblatt « Principles of neurodynamics » Spartan books, New-York, 1960.
M. Minski & S. Papert « Perceptrons », MIT Press, Cambridge 1969.
Années 70-80 : retombée de l’intérêt pour le domaine
T. Kohonen « Correlation matrix memories », IEEE Trans. On Comput., 1972, (C21), 353.
J.J. Hopfield « Neural networks and physical systems with emergent collective computational abilities »,
Proc. Nat. Acad. Sci., 1982,(79), 2554.
Fin 80 : ré-émergence puis explosion du domaine
D. Rumelhart & J. McClelland « Parallel and Distributed Processing » MIT Press, Cambridge, 1988
28/12/2002
41
<
>
9
QUITTER
Liste (non exhaustive)
d ’applications en chimie
• élucidation de spectres
(corrélations spectres -> structures)
• détermination de la structure secondaire des protéines
• diagnostics de dysfonctionement en contrôle de
processus
• études QSAR (entrées de types « tables de
connectivités » ou propriétés physico-chimiques
calculées)
• classification de réactions
28/12/2002
41
<
>
10
QUITTER
Le plus simple des réseau de
neurones: le perceptron
Fonction de seuil de
Heaviside :
sortie
1 (oui)
0 (non)
ΣWiSi ≥ σ ?
σ
entrées
Procédure d ’apprentissage:
on soumet 1 à 1 des exemples
pour lesquels on connaît la réponse souhaitée
Si la réponse est correcte, on continue
Si la réponse est 1 (au lieu de 0), on
décrémente le poids des entrées actives
Si la réponse est 0 (au lieu de 1), on
augmente le poids des entrées actives
28/12/2002
41
<
>
11
QUITTER
Exemple: test de présence
de polluants dans un gaz (I)
Supposons que l ’on veuille tester la présence d ’éthylamine ou d ’oxyde
nitreux dans des échantillons contenant surtout de l ’air. On va se servir des
spectres d ’absorption IR pour caractériser les gaz présentés
% absorbance
100
100
λ (cm-1)
0
3500
600
0
3500
Spectre IR de C2H5NH2
600
Spectre IR de NO
D ’après H.M. Cartwright « Applications of Artificial Intelligence in Chemistry » Oxford University Press, 1993.
28/12/2002
41
<
>
12
QUITTER
Exemple: test de présence
de polluants dans un gaz (II)
Pour utiliser le perceptron, on digitalise les spectres pour n ’en retenir qu ’un
nb fini de mesures correspondant à des valeurs fixées de la longueur d ’onde
Absorbance (λ=600cm-1)
Absorbance (λ=700cm-1)
Absorbance λ(=800cm-1)
Absorbance (λ=900cm-1)
Absorbance (λ=1000cm-1)
Absorbance (λ=1100cm-1)
Absorbance (λ=1200cm-1)
Absorbance (λ=1300cm-1)
Absorbance (λ=1400cm-1)
Absorbance (λ=1500cm-1)
ΣWiSi ≥ σ ?
Si oui, alors présence de
C2H5NH2 ou de NO
Après une période d ’apprentissage consistant à présenter au perceptron
des échantillons contenant parfois de l ’ethylamine ou du NO, le système
est mis en production et fonctionne, jusqu ’à ce que ...
28/12/2002
41
<
>
13
QUITTER
Exemple: test de présence
de polluants dans un gaz (III)
On introduit un échantillon contenant du Fréon. Le spectre IR du fréon est
différent de ceux de l ’éthylamine et du NO, mais présente comme le premier
une forte absorbance à 800 cm-1, et comme le second une forte absorbance
à 1300 cm-1
Absorbance (%)
Spectre IR du Fréon
1300 800
Longueur
d ’onde (cm-1)
…Et le système conclue à tort à la présence
d ’un des polluants recherchés !
28/12/2002
41
<
>
14
QUITTER
Pourquoi un perceptron ne peut
résoudre ce type de problème?
Le perceptron doit décider selon la valeur de w1s1 + w2s2
Pic 1
(800,1300)
(800,-)
+ w 2s 2
w 1s 1
(-,-)
⇒ mission
impossible !
(-,1300)
Pic 2
Un perceptron ne peut résoudre que
des problèmes linéairement séparables
28/12/2002
41
<
>
15
QUITTER
La solution :
les réseaux multi-niveaux
1
Pic à 800 ?
0,5
1
1
0,5
1
Pic à 1300 ?
0,5
1
1,5
1
Valeur du seuil pour une cellule
28/12/2002
41
<
>
-1
Valeur de sortie d ’une cellule
16
QUITTER
les réseaux multi-niveaux
terminologie
28/12/2002
41
<
>
17
QUITTER
Plusieurs types
de fonctions de seuil
Heaviside :
• très simple
sortie
f(x) =0 si x < σ
f(x) =1 si x ≥ σ
σ
entrées
sortie
• bien adaptée aux RN à 1 niveau
(perceptron)
• ne permettent pas l ’apprentissage
par rétro-propagation des erreurs
linéaire :
• simple
f(x) = max(0, min(1,x- σ))
σ
entrées
sortie
f(x) = (1 + e-x-σ)-1
σ
entrées
28/12/2002
41
<
>
• bien adaptée aux RN à 1 niveau
• permettent l ’apprentissage dans
les réseaux multi-niveau
• non dérivable en 2 points
sigmoïdale :
• uniformément dérivable
• la plus utilisée des fonctions
de seuil
• bien que calculs plus coûteux
18
QUITTER
Apprentissage par
rétropropagation des erreurs(I)
erreur
entrées
Sorties
observées
28/12/2002
41
<
>
Sorties
attendues
19
QUITTER
Apprentissage par
rétropropagation des erreurs(II)
Contexte : réseaux multi-niveaux à propagation directe des signaux
Objectif : réduire la fonction d ’erreur
En = ½ Σ (ciblen,i - actueln,i)2
i
en modifiant prioritairement les poids des signaux d ’entrées
contribuant le plus à l ’erreur.
Méthode : gradient (procédure itérative de moindres carrés)
d ’abord sur le niveau de sortie, puis récursivement sur les
niveaux cachés.
Rmq 1: aucun rapport avec un processus biologique
Rmq 2: il existe de très nombreux modèles d ’apprentissage
28/12/2002 mais la rétropropagation est 41
largement la plus répandue.
<
>
20
QUITTER
Apprentissage par
rétropropagation des erreurs(III)
L ’apprentissage par rétropropagation peut être très coûteux
pour de gros réseaux
exemple de très gros réseau :
H. Bohr & al. « A novel approach to prediction of the 3-dimensional
structures of protein backbone by neural network »,
FEBS Lett., 1990, (261), 43.
Dimension du vecteur d ’entrée : 1220
2 niveaux cachés
500.000 poids à ajuster
28/12/2002
41
<
>
21
QUITTER
Fiabilité ?
Vérification par validation croisée
Pb: comment savoir si la phase d ’apprentissage a produit
un réseau fiable ?
• 1) Décomposer l ’échantillon d ’apprentissage en 2 tas :
9/10 et 1/10.
• 2) Entraîner le réseau avec le premier tas (9/10).
• 3) Vérifier avec le 1/10 restant que le réseau donne les
résultats attendus
• 4) renouveller les étapes 1-3 avec d ’autres décompositions
28/12/2002
41
<
>
22
QUITTER
Autre type de réseau de neurones
Les cartes de Kohonen (SOM)
Ces RN permettent de projeter sur un plan des données
multi-dimensionnelles en préservant les relations topologiques
existant entre ces données.
Applications : apprentissage non supervisée, clustering,
réduction du nombre d ’attributs, etc.
28/12/2002
41
<
>
23
QUITTER
Architecture des SOM
Neurone (n-vecteur)
Carte de Kohonen
(mXm neurones)
Poids de la composante i
Vecteur d ’entrée (n)
28/12/2002
41
<
>
24
QUITTER
Principe de la phase d ’apprentissage
dans les SOM (I)
• Tous les vecteurs de poids sont initialisés aléatoirement.
• Quand un nouveau vecteur de données est introduit, il est
comparé à tous les vecteurs de la carte
distance euclidienne : d(X,Ni) = Σ(Xi-Ni,j)2
• Les poids du neurone Ni le plus proche de X sont stimulés,
de même que ceux des neurones au voisinage de Ni.
28/12/2002
41
<
>
25
QUITTER
Principe de la phase d ’apprentissage
dans les SOM (II)
L ’ajustement des poids d ’un neurone
est inversement proportionnel à la
« distance » de ce neurone au
neurone « choisi »
28/12/2002
41
<
>
26
QUITTER
Principe de la phase d ’apprentissage
dans les SOM (III)
Finalement, dans les réseaux « entraînés »,
chaque vecteur est projeté dans le neurone
« le plus ressemblant », et deux vecteurs
« similaires » seront projetés dans des
neurones proches.
28/12/2002
41
<
>
27
QUITTER
Exemple d ’application des SOM :
classification des réactions organiques
Objectif : établir des corrélations entre
la variation des propriétés électroniques
des atomes d ’oxygène lors d ’une réaction
et le « type » de cette réaction.
Prouver ainsi qu ’une classification
automatique des réactions est
envisageable.
D ’après H. Satoh et al. « classification of organic reactions: Similarity of reactions based on
changes of the electronic features of oxygen atoms in the reaction sites » J.Chem.Inf.Comput.Sci.,
1998 (38), 210.
28/12/2002
41
28
<
>
QUITTER
Choix des attributs
vecteur d ’entrée
Les auteurs ont pris 131 réactions au hasard dans une BD.
Pour chaque atome d ’oxygène présent dans un cœur de réaction,
ils ont calculés par méthode empirique, la valeur de 6 paramètres
physico-chimiques :
- charge σ
- charge π
- électronégativité σ-résiduelle
- électronégativité π-résiduelle
- polarisabilité
- pKa
Les vecteurs d ’entrée sont construit par la différence (produit réactant) de ces 6 attributs.
Nb d ’étapes (« époques ») d ’apprentissage : 10.000
carte 18x18 neurones
28/12/2002
41
<
>
29
QUITTER
Exemple de vecteur données
O
O
O
O
H
H
δ
charge σ
charge π
électronégativité σ-résiduelle
électronégativité π-résiduelle
polarisabilité
pKa
-365
0,00
9,64
3,91
6,89
31,0
-391
0,00
9,33
3,18
4,32
30,0
28/12/2002
41
<
>
-26
0,00
-0,31
-0,73
-2,57
-1,0
30
QUITTER
Résultats
Réduction et alkylation
Cassure d’époxides, d’éthers,
de lactones et d’esters
Oxydation des alcools
Formation d’époxides, d’éthers,
de lactones et d’esters
Rmq : les clusters apparaîssent continus si l’on forme un tore
en repliant la carte pour fusionner ses bords horizontaux et ses
bords verticaux
28/12/2002
41
<
>
31
QUITTER
Principaux avantages des
réseaux de neurones (I)
Réutilisabilité:
Un réseau de neurones n ’est pas
programmé pour une application mais
pour une classe de problèmes : après
une phase d ’apprentissage adéquate,
il peut traiter de nombreuses tâches.
28/12/2002
41
<
>
32
QUITTER
Principaux avantages des
réseaux de neurones (II)
Tolérance de pannes :
le dysfonctionnement d ’une faible
proportion des neurones n ’affecte pas
profondément le fonctionnement
général (on parle de « dégradation
douce »)
28/12/2002
41
<
>
33
QUITTER
Principaux avantages des
réseaux de neurones (III)
robustesse
Les couches cachées du réseau
forment une représentation abstraite
des données (concepts), qui permettent
de savoir catégoriser des données non
traitées lors de l ’apprentissage (non
prévues).
28/12/2002
41
<
>
34
QUITTER
Principaux avantages des
réseaux de neurones (IV)
parallélisme
Les RN sont par essence des
« machines parallèles » et peuvent donc
bénéficier directement des architectures
multi-processeurs (tous les neurones
d ’un même niveau sont indépendants)
28/12/2002
41
<
>
35
QUITTER
Principaux avantages des
réseaux de neurones (V)
« machine à découvrir les règles »
Le fonctionnement des RN implique
qu ’ils identifient les relations entre les
données soumises. On peut envisager
qu ’ils (re)découvrent empiriquement
des lois gouvernant les domaines
traités.
28/12/2002
41
<
>
36
QUITTER
Principaux avantages des
réseaux de neurones (VI)
Logique floue
Le traitement modal des données est
couvert implicitement par les RN
28/12/2002
41
<
>
37
QUITTER
Limites des réseaux de
neurones (I)
Choix des attributs
Ce problème n ’est évidemment pas
spécifique aux RN, mais il est clair qu ’il
faut choisir soigneusement la
représentation des données.
Les attributs ne peuvent de plus qu ’être
numériques
28/12/2002
41
<
>
38
QUITTER
Limites des réseaux de
neurones (II)
Processus d ’apprentissage
• Il peut être extrêmement long.
• L ’apprentissage par rétro-propagation des erreurs peut
converger vers une solution sous-optimale.
• Paralysie du réseau : les poids synaptiques deviennent si grands
que leur modification est inopérante sur le comportement des
neurones (dépassement de la zone de variation de la sigmoïde)
• Surspécification : lorsque l ’apprentissage est trop prolongé, le RN
perd son pouvoir de généralisation. Il reconnaît les données de
l ’échantillon d ’apprentissage, mais plus de nouvelles données
« similaires ».
28/12/2002
41
<
>
39
QUITTER
Limites des réseaux de
neurones (III)
Architecture du réseau
Le nombre de nœuds dans les couches d ’entrée et
de sortie sont généralement fixés par l ’application,
mais comment optimiser le nombre de niveaux cachés
et le nombre de nœuds dans ces niveaux ?
28/12/2002
41
<
>
40
QUITTER
Limites des réseaux de
neurones (IV)
explicabilité
Il est quasi-impossible d ’expliquer de manière
compréhensible les résultats fournis par un RN.
Un RN peut découvrir empiriquement des lois
et les exploiter dans la résolution de problèmes,
mais il ne peut formuler ces lois.
28/12/2002
41
<
>
41
QUITTER
Pour en savoir plus sur
les réseaux de neurones
•
Une introduction (site commercial mais assez complet) :
http://www.statsoftinc.com/textbook/stneunet.html
•
une « bible » : S. Haykin « Neural Networks » , 2nd Edition, Prentice
Hall, 1998.
•
Un tutorial :
http://www.gc.ssr.upm.es/inves/neural/ann1/anntutorial.html
•
Source bibliographique (très exhaustive) :
http://liinwww.ira.uka.de/bibliography/Neural/
28/12/2002
41
42
Téléchargement